i386.c (ix86_function_sseregparm): Fix comment: number of arguments passed to local functions in SSE registers is 3.

* config/i386/i386.c (ix86_function_sseregparm): Fix comment:
	number of arguments passed to local functions in SSE registers is 3.

	* doc/invoke.texi (Function Attributes) [sseregparm]: Correct
	number of arguments passed in SSE registers to 3.

From-SVN: r118883
This commit is contained in:
Uros Bizjak 2006-11-16 08:30:18 +01:00 committed by Uros Bizjak
parent 96370780ab
commit 56829cae9c
3 changed files with 14 additions and 6 deletions

View File

@ -1,3 +1,11 @@
2006-11-16 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.c (ix86_function_sseregparm): Fix comment:
number of arguments passed to local functions in SSE registers is 3.
* doc/invoke.texi (Function Attributes) [sseregparm]: Correct
number of arguments passed in SSE registers to 3.
2006-11-16 Maxim Kuvyrkov <mkuvyrkov@ispras.ru>
PR target/29201
@ -34,8 +42,8 @@
* config/i386/i386.opt: New target option -mx87regparm.
* config/i386/i386.h (struct ix86_args): Add x87_nregs, x87_regno,
float_in_x87: Add new variables. mmx_words, sse_words: Remove.
* config/i386/i386.h (struct ix86_args): Add x87_nregs, x87_regno
and float_in_x87 variables. mmx_words, sse_words: Remove.
(X87_REGPARM_MAX): Define.
* config/i386/i386.c (override_options): Error out for

View File

@ -2707,9 +2707,9 @@ ix86_function_sseregparm (tree type, tree decl)
return 2;
}
/* For local functions, pass SFmode (and DFmode for SSE2) arguments
in SSE registers even for 32-bit mode and not just 3, but up to
8 SSE arguments in registers. */
/* For local functions, pass up to SSE_REGPARM_MAX SFmode
(and DFmode for SSE2) arguments in SSE registers,
even for 32-bit targets. */
if (!TARGET_64BIT && decl
&& TARGET_SSE_MATH && flag_unit_at_a_time && !profile_flag)
{

View File

@ -2232,7 +2232,7 @@ on the stack.
@item sseregparm
@cindex @code{sseregparm} attribute
On the Intel 386 with SSE support, the @code{sseregparm} attribute
causes the compiler to pass up to 8 floating point arguments in
causes the compiler to pass up to 3 floating point arguments in
SSE registers instead of on the stack. Functions that take a
variable number of arguments will continue to pass all of their
floating point arguments on the stack.