rs6000.h (STARTING_FRAME_OFFSET): Adjust for altivec.
authorAldy Hernandez <aldyh@redhat.com>
Fri, 30 Nov 2001 22:22:24 +0000 (22:22 +0000)
committerAldy Hernandez <aldyh@gcc.gnu.org>
Fri, 30 Nov 2001 22:22:24 +0000 (22:22 +0000)
2001-11-30  Aldy Hernandez  <aldyh@redhat.com>

* rs6000.h (STARTING_FRAME_OFFSET): Adjust for altivec.
        (STACK_DYNAMIC_OFFSET): Same.

From-SVN: r47495

gcc/ChangeLog
gcc/config/rs6000/rs6000.h

index 5dbb18c28d4a35029242c68a50c92c2eb2772fc1..f44146d553fae9d305de66d99b9ccecceec85759 100644 (file)
@@ -1,3 +1,8 @@
+2001-11-30  Aldy Hernandez  <aldyh@redhat.com>
+
+       * config/rs6000/rs6000.h (STARTING_FRAME_OFFSET): Adjust for altivec.
+        (STACK_DYNAMIC_OFFSET): Same.
+
 2001-11-30  Richard Henderson  <rth@redhat.com>
 
        * c-decl.c (duplicate_decls): Copy DECL_SAVED_TREE.
index 70a4ec98c2970c70e94a6a0fe2fbbc599959f0ec..11747ef0befe2bdaf8daa674fa39cfba2d1f2784 100644 (file)
@@ -1371,7 +1371,8 @@ typedef struct rs6000_stack {
    outgoing parameter area.  */
 
 #define STARTING_FRAME_OFFSET                                          \
-  (RS6000_ALIGN (current_function_outgoing_args_size, 8)               \
+  (RS6000_ALIGN (current_function_outgoing_args_size,                  \
+                TARGET_ALTIVEC ? 16 : 8)                               \
    + RS6000_VARARGS_AREA                                               \
    + RS6000_SAVE_AREA)
 
@@ -1382,7 +1383,8 @@ typedef struct rs6000_stack {
    length of the outgoing arguments.  The default is correct for most
    machines.  See `function.c' for details.  */
 #define STACK_DYNAMIC_OFFSET(FUNDECL)                                  \
-  (RS6000_ALIGN (current_function_outgoing_args_size, 8)               \
+  (RS6000_ALIGN (current_function_outgoing_args_size,                  \
+                TARGET_ALTIVEC ? 16 : 8)                               \
    + (STACK_POINTER_OFFSET))
 
 /* If we generate an insn to push BYTES bytes,