diff options
author | Chung-Ju Wu <jasonwucj@gmail.com> | 2014-09-03 08:40:40 +0000 |
---|---|---|
committer | Chung-Ju Wu <jasonwucj@gcc.gnu.org> | 2014-09-03 08:40:40 +0000 |
commit | dd1536a7267a0a8abf90aecae8379a1d871cda99 (patch) | |
tree | 39417e8311f5a2f73c28beed5d34d61cf5ea3508 /gcc | |
parent | 1509ec034c5996a6efeb24d5aad6154cb90b5b65 (diff) | |
download | gcc-dd1536a7267a0a8abf90aecae8379a1d871cda99.zip gcc-dd1536a7267a0a8abf90aecae8379a1d871cda99.tar.gz gcc-dd1536a7267a0a8abf90aecae8379a1d871cda99.tar.bz2 |
[NDS32] Preparation in nds32.h of using registers to save varargs.
-- 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
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/config/nds32/nds32.h | 15 |
2 files changed, 13 insertions, 7 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index f67e58d..f9c795d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -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. diff --git a/gcc/config/nds32/nds32.h b/gcc/config/nds32/nds32.h index 22593fe..d0b8142 100644 --- a/gcc/config/nds32/nds32.h +++ b/gcc/config/nds32/nds32.h @@ -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; |