This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Emit jump insn in function prologue
Eric Botcazou <ebotcazou@adacore.com> writes:
>> Doesn't count, because that is done in the TARGET_SETUP_INCOMING_VARARGS
>> hook which is called before reload. The interesting case here is
>> prologue generation done after reload.
>
> Alpha emits a loop in the prologue to check the stack as per the Tru64 ABI.
You're right. It does it wrapped up a single insn, though, so the jump
is never seen at the RTL level. The prologue_stack_probe_loop insn does
this:
operands[2] = gen_label_rtx ();
(*targetm.asm_out.internal_label) (asm_out_file, "L",
CODE_LABEL_NUMBER (operands[2]));
return "stq $31,-8192(%1)\;subq %0,1,%0\;lda %1,-8192(%1)\;bne %0,%l2";
Ian