https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56606
--- Comment #3 from Martin Sebor <msebor at gcc dot gnu.org> --- Test case and its output: $ cat u.cpp && /build/gcc-trunk/gcc/xgcc -B /build/gcc-trunk/gcc -O2 -Wall -Wextra -c -mlongcall u.cpp && objdump -r u.o extern void foo(); void bar() { foo(); new char; } u.o: file format elf64-powerpcle RELOCATION RECORDS FOR [.text]: OFFSET TYPE VALUE 0000000000000000 R_PPC64_REL16_HA .TOC. 0000000000000004 R_PPC64_REL16_LO .TOC.+0x0000000000000004 000000000000000c R_PPC64_TOC16_HA .toc 0000000000000010 R_PPC64_TOC16_LO_DS .toc 0000000000000030 R_PPC64_REL24 _Znwm RELOCATION RECORDS FOR [.toc]: OFFSET TYPE VALUE 0000000000000000 R_PPC64_ADDR64 _Z3foov RELOCATION RECORDS FOR [.eh_frame]: OFFSET TYPE VALUE 000000000000001c R_PPC64_REL32 .text