https://gcc.gnu.org/bugzilla/show_bug.cgi?id=83442
--- Comment #1 from John David Anglin <danglin at gcc dot gnu.org> --- Program is stuck in a loop which repeatedly calls $$dyncall: (gdb) bt #0 $$dyncall () at ../../../gcc/libgcc/config/pa/milli64.S:237 #1 0x0055b82c in try_init_one_plugin (plugin=0xfae140) at ../../gcc/gcc/plugin.c:729 #2 init_one_plugin (slot=<optimized out>, info=<optimized out>) at ../../gcc/gcc/plugin.c:753 #3 0x00cdf9c8 in htab_traverse_noresize (htab=<optimized out>, callback=@0xf8cdb036: 0xf69cd764 <$$dyncall>, callback@entry=0x55b7a0 <init_one_plugin(void**, void*)>, info=0xd63000 <ipa_write_summaries()::__FUNCTION__+16>, info@entry=0x0) at ../../gcc/libiberty/hashtab.c:775 #4 0x0055c370 in initialize_plugins () at ../../gcc/gcc/plugin.c:779 #5 0x000f5e58 in toplev::main (this=this@entry=0xf8d02388, argc=<optimized out>, argc@entry=16441664, argv=<optimized out>, argv@entry=0xffa8e8) at ../../gcc/gcc/toplev.c:2185 #6 0x000f80b4 in main (argc=16441664, argv=0xffa8e8) at ../../gcc/gcc/main.c:39 (gdb) step 225 bb,>=,n %r22,30,LREF(1) ; branch if not plabel address (gdb) 231 bv %r0(%r22) ; branch to the real target (gdb) 237 stw %r2,-24(%r30) ; save return address into frame marker (gdb) 225 bb,>=,n %r22,30,LREF(1) ; branch if not plabel address (gdb) 231 bv %r0(%r22) ; branch to the real target (gdb) 237 stw %r2,-24(%r30) ; save return address into frame marker (gdb) 225 bb,>=,n %r22,30,LREF(1) ; branch if not plabel address (gdb) 231 bv %r0(%r22) ; branch to the real target ... 231 bv %r0(%r22) ; branch to the real target (gdb) p/x $r22 $1 = 0xf69cd764 (gdb) stepi 237 stw %r2,-24(%r30) ; save return address into frame marker (gdb) disass Dump of assembler code for function $$dyncall: 0xf69cd764 <+0>: bb,*>=,n r22,1e,0xf69cd774 <$$dyncall+16> 0xf69cd768 <+4>: depwi 0,31,2,r22 0xf69cd76c <+8>: ldw 4(r22),r19 0xf69cd770 <+12>: ldw 0(r22),r22 0xf69cd774 <+16>: bv r0(r22) => 0xf69cd778 <+20>: stw rp,-18(sp) End of assembler dump.