https://gcc.gnu.org/bugzilla/show_bug.cgi?id=120145
--- Comment #16 from Eric Botcazou <ebotcazou at gcc dot gnu.org> --- > (gdb) bt > #0 0x000000e6d45f7b10 in > _Z20notice_global_symbolP9tree_node+0xfffffffffd0084fc@plt () > Backtrace stopped: previous frame identical to this frame (corrupt stack?) > (gdb) disassemble > Dump of assembler code for function > _Z20notice_global_symbolP9tree_node+0xfffffffffd0084fc@plt: > 0x000000e6d45f7b00 <+0>: mov %o7, %g5 > 0x000000e6d45f7b04 <+4>: call 0xe6d45f7b0c > <_Z20notice_global_symbolP9tree_node+0xfffffffffd0084fc@plt+12> > 0x000000e6d45f7b08 <+8>: nop > 0x000000e6d45f7b0c <+12>: ldx [ %o7 + 0x2c ], %g1 > => 0x000000e6d45f7b10 <+16>: jmpl %o7 + %g1, %g1 > 0x000000e6d45f7b14 <+20>: mov %g5, %o7 > End of assembler dump. > (gdb) x/gx $o7 + 0x2c > 0xe6d45f7b30 <_z20notice_global_symbolp9tree_n...@got.plt>: > 0xfb8ee10cffeffffc > (gdb) p/x $o7 + 0x2c > $1 = 0xe6d45f7b30 > (gdb) p/x $g1 > $2 = 0xfb8ee10cffeffffc So the problematic instruction is the jmpl instead of the ldx and %o7 + %g1 points to nowhere? If so, this means that the GOT slot contains garbage.