https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60104
--- Comment #3 from Francois-Xavier Coudert <fxcoudert at gcc dot gnu.org> --- Testcase gcc.target/i386/sibcall-1.c fails on x86_64-apple-darwin14 (compiled with "-O2 -m32"). Assembler code generated is: .section __TEXT,__text_cold,regular,pure_instructions LCOLDB0: .text LHOTB0: .align 4,0x90 .globl _boo _boo: LFB0: call ___x86.get_pc_thunk.ax L1$pb: movl L_foo$non_lazy_ptr-L1$pb(%eax), %eax movl (%eax), %eax jmp *%eax LFE0: .section __TEXT,__text_cold,regular,pure_instructions LCOLDE0: .text LHOTE0: .section __TEXT,__textcoal_nt,coalesced,pure_instructions .weak_definition ___x86.get_pc_thunk.ax .private_extern ___x86.get_pc_thunk.ax ___x86.get_pc_thunk.ax: LFB1: movl (%esp), %eax ret LFE1: .section __TEXT,__eh_frame,coalesced,no_toc+strip_static_syms+live_support EH_frame1: .set L$set$0,LECIE1-LSCIE1 .long L$set$0 LSCIE1: .long 0 .byte 0x1 .ascii "zR\0" .byte 0x1 .byte 0x7c .byte 0x8 .byte 0x1 .byte 0x10 .byte 0xc .byte 0x5 .byte 0x4 .byte 0x88 .byte 0x1 .align 2 LECIE1: LSFDE1: .set L$set$1,LEFDE1-LASFDE1 .long L$set$1 LASFDE1: .long LASFDE1-EH_frame1 .long LFB0-. .set L$set$2,LFE0-LFB0 .long L$set$2 .byte 0 .align 2 LEFDE1: LSFDE3: .set L$set$3,LEFDE3-LASFDE3 .long L$set$3 LASFDE3: .long LASFDE3-EH_frame1 .long LFB1-. .set L$set$4,LFE1-LFB1 .long L$set$4 .byte 0 .align 2 LEFDE3: .section __IMPORT,__pointers,non_lazy_symbol_pointers L_foo$non_lazy_ptr: .indirect_symbol _foo .long 0 .subsections_via_symbols