* expr.c (push_block): Make sane use of STACK_GROWS_DOWNWARD.
authorgeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 2 Sep 2001 01:14:45 +0000 (01:14 +0000)
committergeoffk <geoffk@138bc75d-0d04-0410-961f-82ee72b054a4>
Sun, 2 Sep 2001 01:14:45 +0000 (01:14 +0000)
(emit_push_insn): Use specified padding direction when
STACK_PUSH_CODE is POST_INC.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@45352 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/expr.c

index 3a2c75a..260f09f 100644 (file)
@@ -1,5 +1,9 @@
 2001-09-01  Geoffrey Keating  <geoffk@redhat.com>
 
+       * expr.c (push_block): Make sane use of STACK_GROWS_DOWNWARD.
+       (emit_push_insn): Use specified padding direction when
+       STACK_PUSH_CODE is POST_INC.
+
        * config/stormy16/stormy16.h (DWARF2_UNWIND_INFO): Define to 0.
 
 2001-09-01  Kaveh R. Ghazi  <ghazi@caip.rutgers.edu>
index 222d7ec..e8774e4 100644 (file)
@@ -3102,18 +3102,11 @@ push_block (size, extra, below)
     }
 
 #ifndef STACK_GROWS_DOWNWARD
-#ifdef ARGS_GROW_DOWNWARD
-  if (!ACCUMULATE_OUTGOING_ARGS)
-#else
   if (0)
-#endif
 #else
   if (1)
 #endif
     {
-      /* Return the lowest stack address when STACK or ARGS grow downward and
-        we are not aaccumulating outgoing arguments (the c4x port uses such
-        conventions).  */
       temp = virtual_outgoing_args_rtx;
       if (extra != 0 && below)
        temp = plus_constant (temp, extra);
@@ -3273,8 +3266,9 @@ emit_push_insn (x, mode, type, size, align, partial, reg, extra,
      Default is below for small data on big-endian machines; else above.  */
   enum direction where_pad = FUNCTION_ARG_PADDING (mode, type);
 
-  /* Invert direction if stack is post-update.  */
-  if (STACK_PUSH_CODE == POST_INC || STACK_PUSH_CODE == POST_DEC)
+  /* Invert direction if stack is post-decrement. 
+     FIXME: why?  */
+  if (STACK_PUSH_CODE == POST_DEC)
     if (where_pad != none)
       where_pad = (where_pad == downward ? upward : downward);