https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79439
--- Comment #1 from Segher Boessenkool <segher at gcc dot gnu.org> --- What command line options does this need? I get different assembly (also with GCC 6), since GCC recognises that rec can never return: .globl rec .type rec, @function rec: .LCF1: 0: addis 2,12,.TOC.-.LCF1@ha addi 2,2,.TOC.-.LCF1@l .localentry rec,.-rec mflr 0 std 31,-8(1) mr 31,3 std 0,16(1) stdu 1,-48(1) .p2align 4,,15 .L3: bl f nop cmpdi 7,3,0 beq 7,.L3 addi 3,31,1 extsw 3,3 bl rec .long 0 .byte 0,0,0,1,128,1,0,0