http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55909



philip.copeland at oracle dot com changed:



           What    |Removed                     |Added

----------------------------------------------------------------------------

             Status|RESOLVED                    |WAITING

         Resolution|DUPLICATE                   |



--- Comment #7 from philip.copeland at oracle dot com 2013-01-09 01:33:03 UTC 
---

Lets see for frame 0 that would be:



[root@localhost ~]# chroot /var/lib/mock/fc18-5/root/

bash-4.2# su - mockbuild

[mockbuild@localhost ~]$ cd  /builddir/build/BUILD/libtool-2.4.2/

[mockbuild@localhost libtool-2.4.2]$ cd tests/testsuite.dir/104/

(gdb) set environment LD_LIBRARY_PATH=m

(gdb) run

Starting program:

/builddir/build/BUILD/libtool-2.4.2/tests/testsuite.dir/104/.libs/lt-main 

exceptions_in_prog



Program received signal SIGSEGV, Segmentation fault.

0xfffff8010061a558 in __frame_dummy_init_array_entry ()

   from /lib64/libstdc++.so.6

(gdb) disassemble 0xfffff8010061a558

Dump of assembler code for function __frame_dummy_init_array_entry:

   0xfffff8010061a558:  unknown

   0xfffff8010061a55c:  bn  %icc, 0xfffff8010065175c <__ieee754_lgamma_r+2268>

   0xfffff8010061a560:  unknown

   0xfffff8010061a564:  bn  %icc, 0xfffff8010064f264 <__ieee754_j0+612>

   0xfffff8010061a568:  unknown

   0xfffff8010061a56c:  bn  %icc, 0xfffff8010064f36c <__ieee754_j0+876>

   0xfffff8010061a570:  unknown

   0xfffff8010061a574:  bn  %icc, 0xfffff8010064f474 <__ieee754_y0+20>

   0xfffff8010061a578:  unknown

   0xfffff8010061a57c:  bn  %icc, 0xfffff8010064fb7c <qone+92>

   0xfffff8010061a580:  unknown

   0xfffff8010061a584:  bn  %icc, 0xfffff80100650304 <__ieee754_y1+484>

   0xfffff8010061a588:  unknown

   0xfffff8010061a58c:  bn  %icc, 0xfffff80100650a8c <__ieee754_jn+1132>

   0xfffff8010061a590:  unknown

   0xfffff8010061a594:  bn  %icc, 0xfffff80100651014 <__ieee754_lgamma_r+404>

End of assembler dump.



dont think it is a function

(gdb) disassemble __frame_dummy_init_array_entry 

No function contains specified address.

(gdb) whatis __frame_dummy_init_array_entry

type = <data variable, no debug info>

(gdb) print &__frame_dummy_init_array_entry 

$1 = (<data variable, no debug info> *) 0xfffff8010097c150

(gdb) info var __frame_dummy_init_array_entry 

All variables matching regular expression "__frame_dummy_init_array_entry":



Non-debugging symbols:

0x000000000020bd20  __frame_dummy_init_array_entry

0xfffff80100225d78  __frame_dummy_init_array_entry

0xfffff80100329dc0  __frame_dummy_init_array_entry

0xfffff8010042fd80  __frame_dummy_init_array_entry

0xfffff8010061a558  __frame_dummy_init_array_entry

0xfffff80100867d90  __frame_dummy_init_array_entry

0xfffff8010097c150  __frame_dummy_init_array_entry



What does the memory there actually look like?: (assume 8 byte width)

(gdb) x/1xg 0xfffff8010061a558

0xfffff8010061a558:     0xfffff8010048dc80



Ok, since thats a pointer address, where does it lead to? (frame_dummy)

(gdb) disassemble 0xfffff8010048dc80

Dump of assembler code for function frame_dummy:

   0xfffff8010048dc80 <+0>:     save  %sp, -176, %sp

   0xfffff8010048dc84 <+4>:     sethi  %hi(0x5800), %o0

   0xfffff8010048dc88 <+8>:     sethi  %hi(0x192000), %l7

   0xfffff8010048dc8c <+12>:    call  0xfffff8010048dce0

<__sparc_get_pc_thunk.l7>

   0xfffff8010048dc90 <+16>:    add  %l7, 0x374, %l7    ! 0x192374

   0xfffff8010048dc94 <+20>:    xor  %o0, -608, %o0

   0xfffff8010048dc98 <+24>:    add  %l7, %o0, %o0

   0xfffff8010048dc9c <+28>:    ldx  [ %o0 ], %g1

   0xfffff8010048dca0 <+32>:    brz,pn   %g1, 0xfffff8010048dcc0

<frame_dummy+64>

   0xfffff8010048dca4 <+36>:    sethi  %hi(0x800), %g1

   0xfffff8010048dca8 <+40>:    xor  %g1, 0x1a8, %g1

   0xfffff8010048dcac <+44>:    ldx  [ %l7 + %g1 ], %g1

   0xfffff8010048dcb0 <+48>:    brz,pn   %g1, 0xfffff8010048dcc0

<frame_dummy+64>

   0xfffff8010048dcb4 <+52>:    nop 

   0xfffff8010048dcb8 <+56>:    call  %g1

   0xfffff8010048dcbc <+60>:    nop 

   0xfffff8010048dcc0 <+64>:    b  %xcc, 0xfffff8010048dba0

<register_tm_clones>

   0xfffff8010048dcc4 <+68>:    restore 

---Type <return> to continue, or q <return> to quit---

   0xfffff8010048dcc8 <+72>:    b,a   %xcc, 0xfffff8010048dce0

<__sparc_get_pc_thunk.l7>

   0xfffff8010048dccc <+76>:    nop 

   0xfffff8010048dcd0 <+80>:    nop 

   0xfffff8010048dcd4 <+84>:    nop 

   0xfffff8010048dcd8 <+88>:    nop 

   0xfffff8010048dcdc <+92>:    nop 

End of assembler dump.

(gdb) list frame_dummy

No line number known for frame_dummy.





let me try from the #1 frame above and step forward, see where that is going

(gdb) up

#1  0xfffff80100490988 in __cxxabiv1::__cxa_get_globals ()

    at ../../../../libstdc++-v3/libsupc++/eh_globals.cc:63

63      { return get_global(); }

(gdb) disassemble

Dump of assembler code for function __cxxabiv1::__cxa_get_globals():

   0xfffff80100490960 <+0>:     save  %sp, -176, %sp

   0xfffff80100490964 <+4>:     sethi  %hi(0), %o0

   0xfffff80100490968 <+8>:     sethi  %hi(0), %i0

   0xfffff8010049096c <+12>:    sethi  %hi(0x18f400), %l7

   0xfffff80100490970 <+16>:    call  0xfffff8010048dce0

<__sparc_get_pc_thunk.l7>

   0xfffff80100490974 <+20>:    add  %l7, 0x290, %l7    ! 0x18f690

   0xfffff80100490978 <+24>:    add  %o0, 8, %o0

   0xfffff8010049097c <+28>:    xor  %i0, 0, %i0

   0xfffff80100490980 <+32>:    call  0xfffff8010061a558

   0xfffff80100490984 <+36>:    add  %l7, %o0, %o0

=> 0xfffff80100490988 <+40>:    add  %o0, %i0, %i0

   0xfffff8010049098c <+44>:    rett  %i7 + 8

   0xfffff80100490990 <+48>:    nop 

End of assembler dump.



-------------------------------------------------------------------------------



Oh you closed this as a dupe? This was rebuilt using gcc-4.7.2-8 recompiled

with itself at the same level.. and looks like the bug you point to is orphaned

by the reporter. Since Tom's report is for a *32* bit problem and mine is for

64 bit It would seem, on balance, likely an endian issue /may/ have creeped in

(sparc is big endian) that or it's something way different. Just thinking out

loud of possibilities



gcc-4.7.2-8.fc18.sparc64

glibc-2.16-28.fc18.sparc64

binutils-2.23.51.0.1-3.fc18.sparc64

Reply via email to