This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]