Help needed with sparc
Brad Lucier
lucier@math.purdue.edu
Thu Jan 24 07:54:00 GMT 2002
> How about setting a breakpoint in __do_global_ctors_aux and starting
> over?
OK, this is what I get, but it doesn't tell me much:
~/programs/gdb/gdb-5.1/gdb/gdb gengenrtl
GNU gdb 5.1
Copyright 2001 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "sparc64-sun-solaris2.8"...
.gdbinit:7: Error in sourced command file:
../../gcc/gdbinit.in:91: Error in sourced command file:
Function "fancy_abort" not defined.
(gdb) break __do_global_ctors_aux
Breakpoint 1 at 0x1000020b8
(gdb) run
Starting program: /export/u3/lucier/programs/gcc/gcc-3.1/objdir-sparcv9/gcc/gengenrtl
Breakpoint 1, 0x1000020b8 in __do_global_ctors_aux ()
(gdb) disass
Dump of assembler code for function __do_global_ctors_aux:
0x1000020b4 <__do_global_ctors_aux>: save %sp, -208, %sp
0x1000020b8 <__do_global_ctors_aux+4>: sethi %hi(0x102400), %l7
0x1000020bc <__do_global_ctors_aux+8>: call 0x1000020ac <Letext>
0x1000020c0 <__do_global_ctors_aux+12>: add %l7, 0x4c, %l7 ! 0x10244c
0x1000020c4 <__do_global_ctors_aux+16>: sethi %hi(0), %o0
0x1000020c8 <__do_global_ctors_aux+20>: or %o0, 0x30, %o0 ! 0x30
0x1000020cc <__do_global_ctors_aux+24>: ldx [ %l7 + %o0 ], %o0
0x1000020d0 <__do_global_ctors_aux+28>: add %o0, -8, %o0
0x1000020d4 <__do_global_ctors_aux+32>: stx %o0, [ %fp + 0x7e0 ]
0x1000020d8 <__do_global_ctors_aux+36>: ldx [ %fp + 0x7e0 ], %o0
0x1000020dc <__do_global_ctors_aux+40>: ldx [ %o0 ], %o0
0x1000020e0 <__do_global_ctors_aux+44>: cmp %o0, -1
0x1000020e4 <__do_global_ctors_aux+48>:
bne %xcc, 0x1000020f4 <__do_global_ctors_aux+64>
0x1000020e8 <__do_global_ctors_aux+52>: nop
0x1000020ec <__do_global_ctors_aux+56>:
b %xcc, 0x100002118 <__do_global_ctors_aux+100>
0x1000020f0 <__do_global_ctors_aux+60>: nop
0x1000020f4 <__do_global_ctors_aux+64>: ldx [ %fp + 0x7e0 ], %o0
0x1000020f8 <__do_global_ctors_aux+68>: ldx [ %o0 ], %o0
0x1000020fc <__do_global_ctors_aux+72>: call %o0
0x100002100 <__do_global_ctors_aux+76>: nop
0x100002104 <__do_global_ctors_aux+80>: ldx [ %fp + 0x7e0 ], %o0
0x100002108 <__do_global_ctors_aux+84>: add %o0, -8, %o0
0x10000210c <__do_global_ctors_aux+88>: stx %o0, [ %fp + 0x7e0 ]
0x100002110 <__do_global_ctors_aux+92>:
b %xcc, 0x1000020d8 <__do_global_ctors_aux+36>
0x100002114 <__do_global_ctors_aux+96>: nop
0x100002118 <__do_global_ctors_aux+100>: rett %i7 + 8
0x10000211c <__do_global_ctors_aux+104>: nop
End of assembler dump.
(gdb) c
Continuing.
Program received signal SIGSEGV, Segmentation fault.
0x1000020d4 in __do_global_ctors_aux ()
(gdb) back
#0 0x1000020d4 in __do_global_ctors_aux ()
#1 0x100002140 in _init ()
(gdb) info registers
g0 0x0 0
g1 0xffffffff7f29caf8 -2161521928
g2 0x0 0
g3 0x0 0
g4 0xffffffff7f225bbc -2162009156
g5 0x1122b4 1122996
g6 0x0 0
g7 0x0 0
o0 0x1001049a0 4296034720
o1 0xffffffff7f3bab68 -2160350360
o2 0x20 32
o3 0xffffffff7f3bab78 -2160350344
o4 0xffffffffffffffff -1
o5 0x1 1
sp 0xffffffff7fffed41 18446744071562063169
o7 0x1000020bc 4294975676
l0 0xffffffff7f3bab68 -2160350360
l1 0x5 5
l2 0x0 0
l3 0xffffffff7ffff970 -2147485328
l4 0x2000 8192
l5 0x0 0
l6 0x38 56
l7 0x100104508 4296033544
i0 0x0 0
i1 0xffffffff7f3b34e0 -2160380704
i2 0xffffffff7f3b34e8 -2160380696
i3 0x100000dd4 4294970836
i4 0x0 0
i5 0xffffffff7f600000 -2157969408
fp 0xffffffff7ffff610 18446744071562065424
i7 0x100002138 4294975800
pc 0x1000020d4 4294975700
npc 0x1000020d8 4294975704
ccr 0x11 17 xcc:NN,NZ,NO,C, icc:NN,NZ,NO,C
...
More information about the Gcc
mailing list