Re: [Gems-users] TM workload setup - handler address offset


Date: 04 Sep 2009 16:21:48 -0500
From: holey003@xxxxxxx
Subject: Re: [Gems-users] TM workload setup - handler address offset
Sorry.. That was GDB dump on non-sparc machine.
The workload 'conswtch' is compiled on sparc machine which gives following log.

(gdb) disassemble transaction_manager_stub
Dump of assembler code for function transaction_manager_stub:
BFD: reopening /conswtch: No such file or directory

BFD: reopening /conswtch: No such file or directory

0x000126a4 <transaction_manager_stub+0>: Error accessing memory address 0x126a4: No such file or directory. (gdb)
Does this mean the program is not compiled properly?
But when run on a simulated Sparc machine using Simics, it executes properly.

-Anup

On Sep 4 2009, Jayaram Bobba wrote:

Anup,

The TM functionality in GEMS works only for SPARC.

Jayaram


holey003@xxxxxxx wrote:
Hi,

I tried to find if default offset of 16 for handler is correct.
Disassemble command dump in GDB for transaction_manager_stub is given below.

(gdb) disassemble transaction_manager_stub
Dump of assembler code for function transaction_manager_stub:
0x000126a4 <transaction_manager_stub+0>: popf 0x000126a5 <transaction_manager_stub+1>: jecxz 0x12666 <tm_trap_handler+310> 0x000126a7 <transaction_manager_stub+3>: nop 0x000126a8 <transaction_manager_stub+4>: andb $0x0,-0x7fedffe0(%esi)
0x000126af <transaction_manager_stub+11>:	adc    %bl,0x1002010(%edx)
0x000126b5 <transaction_manager_stub+17>:	add    %al,(%eax)
0x000126b7 <transaction_manager_stub+19>:	push   %es
0x000126b8 <transaction_manager_stub+20>:	add    (%eax),%eax
0x000126ba <transaction_manager_stub+22>:	add    %cl,-0x50(%ecx)
0x000126bd <transaction_manager_stub+25>:	adc    %ah,0x30(%ecx)
0x000126c0 <transaction_manager_stub+28>: lahf 0x000126c1 <transaction_manager_stub+29>: movb $0x0,(%eax) 0x000126c4 <transaction_manager_stub+32>: nop 0x000126c5 <transaction_manager_stub+33>: adc %al,(%eax)
0x000126c7 <transaction_manager_stub+35>:	add    -0x7ffcfff0(%edx),%al
0x000126cd <transaction_manager_stub+41>:	mov    0x80020060,%al
0x000126d2 <transaction_manager_stub+46>:	add    %al,0x2010b0
0x000126d8 <transaction_manager_stub+52>:	add    %eax,(%eax)
0x000126da <transaction_manager_stub+54>:	add    %al,(%edi)
0x000126dc <transaction_manager_stub+56>:	add    %eax,(%eax)
0x000126de <transaction_manager_stub+58>:	add    %cl,(%ebx)
0x000126e0 <transaction_manager_stub+60>:	xor    %al,0x10300(%eax)
0x000126e6 <transaction_manager_stub+66>:	add    %al,(%edi)
0x000126e8 <transaction_manager_stub+68>:	add    %eax,(%eax)
0x000126ea <transaction_manager_stub+70>:	add    %bl,(%ecx,%eax,4)
0x000126ed <transaction_manager_stub+73>: (bad) 0x000126ee <transaction_manager_stub+74>: loopne 0x126f8 <touch_log+4>
0x000126f0 <transaction_manager_stub+76>:	sub    $0x190000,%eax
End of assembler dump.

Looking at above dump, what should be actual offset??
What can happen if the offset is incorrect?

Thanks,
Anup
_______________________________________________
Gems-users mailing list
Gems-users@xxxxxxxxxxx
https://lists.cs.wisc.edu/mailman/listinfo/gems-users
Use Google to search the GEMS Users mailing list by adding "site:https://lists.cs.wisc.edu/archive/gems-users/"; to your search.

_______________________________________________
Gems-users mailing list
Gems-users@xxxxxxxxxxx
https://lists.cs.wisc.edu/mailman/listinfo/gems-users
Use Google to search the GEMS Users mailing list by adding "site:https://lists.cs.wisc.edu/archive/gems-users/"; to your search.


[← Prev in Thread] Current Thread [Next in Thread→]