Commit 3fc7cd18 by Nathan Froyd Committed by Nathan Froyd

re PR bootstrap/44713 (Revision 161530 failed bootstrap)

	PR bootstrap/44713
	* config/i386/i386.c (type_natural_mode): Const-ify CUM parameter.
	(function_arg_advance_32): Const-ify TYPE parameter.
	(function_arg_advance_64): Likewise.  Change type of NAMED to bool.
	(ix86_function_arg_advance): Change type of NAMED to bool.
	(function_arg_32): Const-ify CUM and TYPE parameters.
	(function_arg_64): Likewise.  Change type of NAMED to bool.
	(function_arg_ms_64): Const-ify CUM parameter. Change type of NAMED
	to bool.
	(ix86_function_arg): Change type of NAMED to bool.
	(ix86_setup_incoming_varargs): Call ix86_function_arg_advance.  Pass
	last argument as a bool.

From-SVN: r161540
parent 9afcc09d
2010-06-29 Nathan Froyd <froydnj@codesourcery.com>
PR bootstrap/44713
* config/i386/i386.c (type_natural_mode): Const-ify CUM parameter.
(function_arg_advance_32): Const-ify TYPE parameter.
(function_arg_advance_64): Likewise. Change type of NAMED to bool.
(ix86_function_arg_advance): Change type of NAMED to bool.
(function_arg_32): Const-ify CUM and TYPE parameters.
(function_arg_64): Likewise. Change type of NAMED to bool.
(function_arg_ms_64): Const-ify CUM parameter. Change type of NAMED
to bool.
(ix86_function_arg): Change type of NAMED to bool.
(ix86_setup_incoming_varargs): Call ix86_function_arg_advance. Pass
last argument as a bool.
2010-06-29 Joern Rennecke <joern.rennecke@embecosm.com> 2010-06-29 Joern Rennecke <joern.rennecke@embecosm.com>
* doc/tm.texi (TARGET_OPTION_OVERRIDE): Document. * doc/tm.texi (TARGET_OPTION_OVERRIDE): Document.
......
...@@ -5180,7 +5180,7 @@ init_cumulative_args (CUMULATIVE_ARGS *cum, /* Argument info to initialize */ ...@@ -5180,7 +5180,7 @@ init_cumulative_args (CUMULATIVE_ARGS *cum, /* Argument info to initialize */
NULL. */ NULL. */
static enum machine_mode static enum machine_mode
type_natural_mode (const_tree type, CUMULATIVE_ARGS *cum) type_natural_mode (const_tree type, const CUMULATIVE_ARGS *cum)
{ {
enum machine_mode mode = TYPE_MODE (type); enum machine_mode mode = TYPE_MODE (type);
...@@ -5937,7 +5937,8 @@ construct_container (enum machine_mode mode, enum machine_mode orig_mode, ...@@ -5937,7 +5937,8 @@ construct_container (enum machine_mode mode, enum machine_mode orig_mode,
static void static void
function_arg_advance_32 (CUMULATIVE_ARGS *cum, enum machine_mode mode, function_arg_advance_32 (CUMULATIVE_ARGS *cum, enum machine_mode mode,
tree type, HOST_WIDE_INT bytes, HOST_WIDE_INT words) const_tree type, HOST_WIDE_INT bytes,
HOST_WIDE_INT words)
{ {
switch (mode) switch (mode)
{ {
...@@ -6025,7 +6026,7 @@ function_arg_advance_32 (CUMULATIVE_ARGS *cum, enum machine_mode mode, ...@@ -6025,7 +6026,7 @@ function_arg_advance_32 (CUMULATIVE_ARGS *cum, enum machine_mode mode,
static void static void
function_arg_advance_64 (CUMULATIVE_ARGS *cum, enum machine_mode mode, function_arg_advance_64 (CUMULATIVE_ARGS *cum, enum machine_mode mode,
tree type, HOST_WIDE_INT words, int named) const_tree type, HOST_WIDE_INT words, bool named)
{ {
int int_nregs, sse_nregs; int int_nregs, sse_nregs;
...@@ -6067,7 +6068,7 @@ function_arg_advance_ms_64 (CUMULATIVE_ARGS *cum, HOST_WIDE_INT bytes, ...@@ -6067,7 +6068,7 @@ function_arg_advance_ms_64 (CUMULATIVE_ARGS *cum, HOST_WIDE_INT bytes,
static void static void
ix86_function_arg_advance (CUMULATIVE_ARGS *cum, enum machine_mode mode, ix86_function_arg_advance (CUMULATIVE_ARGS *cum, enum machine_mode mode,
const_tree type, int named) const_tree type, bool named)
{ {
HOST_WIDE_INT bytes, words; HOST_WIDE_INT bytes, words;
...@@ -6102,8 +6103,8 @@ ix86_function_arg_advance (CUMULATIVE_ARGS *cum, enum machine_mode mode, ...@@ -6102,8 +6103,8 @@ ix86_function_arg_advance (CUMULATIVE_ARGS *cum, enum machine_mode mode,
(otherwise it is an extra parameter matching an ellipsis). */ (otherwise it is an extra parameter matching an ellipsis). */
static rtx static rtx
function_arg_32 (CUMULATIVE_ARGS *cum, enum machine_mode mode, function_arg_32 (const CUMULATIVE_ARGS *cum, enum machine_mode mode,
enum machine_mode orig_mode, tree type, enum machine_mode orig_mode, const_tree type,
HOST_WIDE_INT bytes, HOST_WIDE_INT words) HOST_WIDE_INT bytes, HOST_WIDE_INT words)
{ {
static bool warnedsse, warnedmmx; static bool warnedsse, warnedmmx;
...@@ -6219,8 +6220,8 @@ function_arg_32 (CUMULATIVE_ARGS *cum, enum machine_mode mode, ...@@ -6219,8 +6220,8 @@ function_arg_32 (CUMULATIVE_ARGS *cum, enum machine_mode mode,
} }
static rtx static rtx
function_arg_64 (CUMULATIVE_ARGS *cum, enum machine_mode mode, function_arg_64 (const CUMULATIVE_ARGS *cum, enum machine_mode mode,
enum machine_mode orig_mode, tree type, int named) enum machine_mode orig_mode, const_tree type, bool named)
{ {
/* Handle a hidden AL argument containing number of registers /* Handle a hidden AL argument containing number of registers
for varargs x86-64 functions. */ for varargs x86-64 functions. */
...@@ -6255,8 +6256,8 @@ function_arg_64 (CUMULATIVE_ARGS *cum, enum machine_mode mode, ...@@ -6255,8 +6256,8 @@ function_arg_64 (CUMULATIVE_ARGS *cum, enum machine_mode mode,
} }
static rtx static rtx
function_arg_ms_64 (CUMULATIVE_ARGS *cum, enum machine_mode mode, function_arg_ms_64 (const CUMULATIVE_ARGS *cum, enum machine_mode mode,
enum machine_mode orig_mode, int named, enum machine_mode orig_mode, bool named,
HOST_WIDE_INT bytes) HOST_WIDE_INT bytes)
{ {
unsigned int regno; unsigned int regno;
...@@ -6314,7 +6315,7 @@ function_arg_ms_64 (CUMULATIVE_ARGS *cum, enum machine_mode mode, ...@@ -6314,7 +6315,7 @@ function_arg_ms_64 (CUMULATIVE_ARGS *cum, enum machine_mode mode,
static rtx static rtx
ix86_function_arg (const CUMULATIVE_ARGS *cum, enum machine_mode omode, ix86_function_arg (const CUMULATIVE_ARGS *cum, enum machine_mode omode,
const_tree type, int named) const_tree type, bool named)
{ {
enum machine_mode mode = omode; enum machine_mode mode = omode;
HOST_WIDE_INT bytes, words; HOST_WIDE_INT bytes, words;
...@@ -7047,7 +7048,7 @@ ix86_setup_incoming_varargs (CUMULATIVE_ARGS *cum, enum machine_mode mode, ...@@ -7047,7 +7048,7 @@ ix86_setup_incoming_varargs (CUMULATIVE_ARGS *cum, enum machine_mode mode,
For stdargs, we do want to skip the last named argument. */ For stdargs, we do want to skip the last named argument. */
next_cum = *cum; next_cum = *cum;
if (stdarg_p (fntype)) if (stdarg_p (fntype))
function_arg_advance (&next_cum, mode, type, 1); ix86_function_arg_advance (&next_cum, mode, type, true);
if (cum->call_abi == MS_ABI) if (cum->call_abi == MS_ABI)
setup_incoming_varargs_ms_64 (&next_cum); setup_incoming_varargs_ms_64 (&next_cum);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment