From: ktietz Date: Tue, 3 Jun 2008 13:07:56 +0000 (+0000) Subject: 2008-06-03 Kai Tietz X-Git-Url: http://git.sourceforge.jp/view?p=pf3gnuchains%2Fgcc-fork.git;a=commitdiff_plain;h=f589a94a878e6a07169673977c7889093aabb170 2008-06-03 Kai Tietz * config/i386/i386-protos.h (ix86_reg_parm_stack_space): New. * config/i386/i386.h (ix86_reg_parm_stack_space): Removed prototype. * config/i386/i386.c (ix86_reg_parm_stack_space): Changed return type to int. (ix86_call_abi_override): Remove check for call_used_regs. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@136319 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b42de54c2c4..655be11dff5 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2008-06-03 Kai Tietz + + * config/i386/i386-protos.h (ix86_reg_parm_stack_space): New. + * config/i386/i386.h (ix86_reg_parm_stack_space): Removed + prototype. + * config/i386/i386.c (ix86_reg_parm_stack_space): Changed + return type to int. + (ix86_call_abi_override): Remove check for call_used_regs. + 2008-06-03 Richard Guenther * tree-ssa-structalias.c (find_func_aliases): Add constraints diff --git a/gcc/config/i386/i386-protos.h b/gcc/config/i386/i386-protos.h index a92272bdb38..8d0772dbe8b 100644 --- a/gcc/config/i386/i386-protos.h +++ b/gcc/config/i386/i386-protos.h @@ -141,6 +141,7 @@ extern int ix86_cfun_abi (void); extern int ix86_function_abi (const_tree); extern int ix86_function_type_abi (const_tree); extern void ix86_call_abi_override (const_tree); +extern int ix86_reg_parm_stack_space (const_tree); extern void ix86_split_fp_branch (enum rtx_code code, rtx, rtx, rtx, rtx, rtx, rtx); diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c index b159ce42928..f215d51dd85 100644 --- a/gcc/config/i386/i386.c +++ b/gcc/config/i386/i386.c @@ -3542,7 +3542,7 @@ ix86_must_pass_in_stack (enum machine_mode mode, const_tree type) /* It returns the size, in bytes, of the area reserved for arguments passed in registers for the function represented by fndecl dependent to the used abi format. */ -unsigned int +int ix86_reg_parm_stack_space (const_tree fndecl) { int call_abi = 0; @@ -3611,7 +3611,7 @@ ix86_call_abi_override (const_tree fndecl) cfun->machine->call_abi = DEFAULT_ABI; else cfun->machine->call_abi = ix86_function_type_abi (TREE_TYPE (fndecl)); - if (TARGET_64BIT && cfun->machine->call_abi == MS_ABI && call_used_regs) + if (TARGET_64BIT && cfun->machine->call_abi == MS_ABI) { if (call_used_regs[4 /*RSI*/] != 0 || call_used_regs[5 /*RDI*/] != 0) { @@ -3620,7 +3620,7 @@ ix86_call_abi_override (const_tree fndecl) init_regs (); } } - else if (TARGET_64BIT && call_used_regs) + else if (TARGET_64BIT) { if (call_used_regs[4 /*RSI*/] != 1 || call_used_regs[5 /*RDI*/] != 1) { diff --git a/gcc/config/i386/i386.h b/gcc/config/i386/i386.h index 552515fc6c3..68e67f9bb92 100644 --- a/gcc/config/i386/i386.h +++ b/gcc/config/i386/i386.h @@ -1641,8 +1641,6 @@ enum reg_class #define OUTGOING_REG_PARM_STACK_SPACE(FNTYPE) (ix86_function_type_abi (FNTYPE) == MS_ABI ? 1 : 0) -extern unsigned int ix86_reg_parm_stack_space (const_tree); - /* Value is the number of bytes of arguments automatically popped when returning from a subroutine call. FUNDECL is the declaration node of the function (as a tree),