[NDS32] Since argument pointer must be 8-byte alignment...

[NDS32] Since argument pointer must be 8-byte alignment, our first parameter may
        require 4-byte offset if pushed varargs is not 8-byte aligned.

	* config/nds32/nds32.h (FIRST_PARM_OFFSET): Set proper location
	according to the value of crtl->args.pretend_args_size.

From-SVN: r214863
This commit is contained in:
Chung-Ju Wu 2014-09-03 09:44:49 +00:00 committed by Chung-Ju Wu
parent 35da54a608
commit 4f44e960ea
2 changed files with 7 additions and 1 deletions

View file

@ -1,3 +1,8 @@
2014-09-03 Chung-Ju Wu <jasonwucj@gmail.com>
* config/nds32/nds32.h (FIRST_PARM_OFFSET): Set proper location
according to the value of crtl->args.pretend_args_size.
2014-09-03 Chung-Ju Wu <jasonwucj@gmail.com>
* config/nds32/nds32.c (nds32_compute_stack_frame): Prepare necessary

View file

@ -671,7 +671,8 @@ enum reg_class
#define STACK_POINTER_OFFSET 0
#define FIRST_PARM_OFFSET(fundecl) 0
#define FIRST_PARM_OFFSET(fundecl) \
(NDS32_DOUBLE_WORD_ALIGN_P (crtl->args.pretend_args_size) ? 0 : 4)
#define RETURN_ADDR_RTX(count, frameaddr) \
nds32_return_addr_rtx (count, frameaddr)