]> gcc.gnu.org Git - gcc.git/commitdiff
i386.c (ix86_expand_prologue): Use gen_allocate_stack_worker.
authorKelley Cook <kcook@gcc.gnu.org>
Fri, 17 Oct 2003 12:28:33 +0000 (12:28 +0000)
committerR. Kelley Cook <kcook@gcc.gnu.org>
Fri, 17 Oct 2003 12:28:33 +0000 (12:28 +0000)
* config/i386/i386.c (ix86_expand_prologue):  Use
gen_allocate_stack_worker.

From-SVN: r72601

gcc/ChangeLog
gcc/config/i386/i386.c

index b73afb99e8199615c99c7cab97c0d51c886f2399..b82a371ef2dd4e66bd32e46a1dfbae9ac68ea527 100644 (file)
@@ -1,3 +1,8 @@
+2003-10-17  Kelley Cook  <kcook@gcc.gnu.org>
+
+       * config/i386/i386.c (ix86_expand_prologue):  Use
+       gen_allocate_stack_worker.
+
 2003-10-17  Rainer Orth  <ro@TechFak.Uni-Bielefeld.DE>
 
        * config.gcc (mips-sgi-irix6*o32): Only enable use_collect2
index dbdb194fc74820a77d18e94f366bd516f267269c..580c393c5c4a5388716faa3723338b4c23d44823 100644 (file)
@@ -5073,27 +5073,19 @@ ix86_expand_prologue (void)
     }
   else
     {
-      /* ??? Is this only valid for Win32?  */
+      /* Only valid for Win32 */
 
-      rtx arg0, sym;
+      const rtx eax = gen_rtx_REG (SImode, 0);
+      rtx rtx_allocate = GEN_INT(allocate);
 
       if (TARGET_64BIT)
-       abort ();
-
-      arg0 = gen_rtx_REG (SImode, 0);
-      emit_move_insn (arg0, GEN_INT (allocate));
-
-      sym = gen_rtx_MEM (FUNCTION_MODE,
-                        gen_rtx_SYMBOL_REF (Pmode, "_alloca"));
-      insn = emit_call_insn (gen_call (sym, const0_rtx, constm1_rtx));
+        abort ();
 
-      CALL_INSN_FUNCTION_USAGE (insn)
-       = gen_rtx_EXPR_LIST (VOIDmode, gen_rtx_USE (VOIDmode, arg0),
-                            CALL_INSN_FUNCTION_USAGE (insn));
+      insn = emit_move_insn (eax, rtx_allocate);
+      RTX_FRAME_RELATED_P (insn) = 1;
 
-      /* Don't allow scheduling pass to move insns across __alloca
-         call.  */
-      emit_insn (gen_blockage (const0_rtx));
+      insn = emit_insn (gen_allocate_stack_worker (eax));
+      RTX_FRAME_RELATED_P (insn) = 1;
     }
   if (frame.save_regs_using_mov && !TARGET_RED_ZONE)
     {
This page took 0.093041 seconds and 5 git commands to generate.