[NDS32] Preparation in nds32.h of using registers to save varargs.
authorChung-Ju Wu <jasonwucj@gmail.com>
Wed, 3 Sep 2014 08:40:40 +0000 (08:40 +0000)
committerChung-Ju Wu <jasonwucj@gcc.gnu.org>
Wed, 3 Sep 2014 08:40:40 +0000 (08:40 +0000)
  -- The varargs area may also need padding bytes so that we can ensure
     that argument pointer is 8-byte alignment.

* config/nds32/nds32.h (machine_function): Add some fields for variadic
arguments implementation.

From-SVN: r214854

gcc/ChangeLog
gcc/config/nds32/nds32.h

index f67e58d..f9c795d 100644 (file)
@@ -1,5 +1,10 @@
 2014-09-03  Chung-Ju Wu  <jasonwucj@gmail.com>
 
+       * config/nds32/nds32.h (machine_function): Add some fields for variadic
+       arguments implementation.
+
+2014-09-03  Chung-Ju Wu  <jasonwucj@gmail.com>
+
        * config/nds32/nds32-predicates.c
        (nds32_valid_stack_push_pop): Rename to ...
        (nds32_valid_stack_push_pop_p): ... this.
index 22593fe..d0b8142 100644 (file)
@@ -203,18 +203,19 @@ struct GTY(()) machine_function
   /* The padding bytes in callee-saved area may be required.  */
   int callee_saved_area_padding_bytes;
 
-  /* The first required register that should be saved on stack
-     for va_args (one named argument + nameless arguments).  */
-  int va_args_first_regno;
-  /* The last required register that should be saved on stack
-     for va_args (one named argument + nameless arguments).  */
-  int va_args_last_regno;
-
   /* The first required callee-saved register.  */
   int callee_saved_regs_first_regno;
   /* The last required callee-saved register.  */
   int callee_saved_regs_last_regno;
 
+  /* The padding bytes in varargs area may be required.  */
+  int va_args_area_padding_bytes;
+
+  /* The first required register that should be saved on stack for va_args.  */
+  int va_args_first_regno;
+  /* The last required register that should be saved on stack for va_args.  */
+  int va_args_last_regno;
+
   /* Indicate that whether this function needs
      prologue/epilogue code generation.  */
   int naked_p;