Commit c3e39a47 by John David Anglin Committed by John David Anglin

re PR middle-end/37316 (Small structs are not passed correctly on hppa64-*-*)

2008-10-26  John David Anglin  <dave.anglin@nrc-cnrc.gc.ca>

	PR middle-end/37316
	* pa.c (function_arg_padding):  Pad complex and vector types upward in
	64-bit runtime.
	(function_arg): Use BLKmode for PARALLEL in 64-bit runtime.

From-SVN: r141380
parent 0c3c56b7
2008-10-26 John David Anglin <dave.anglin@nrc-cnrc.gc.ca>
PR middle-end/37316
* pa.c (function_arg_padding): Pad complex and vector types upward in
64-bit runtime.
(function_arg): Use BLKmode for PARALLEL in 64-bit runtime.
2008-10-26 Matthias Klose <doko@ubuntu.com>
* doc/install.texi: Document requirements on antlr.
......
......@@ -5888,7 +5888,11 @@ enum direction
function_arg_padding (enum machine_mode mode, const_tree type)
{
if (mode == BLKmode
|| (TARGET_64BIT && type && AGGREGATE_TYPE_P (type)))
|| (TARGET_64BIT
&& type
&& (AGGREGATE_TYPE_P (type)
|| TREE_CODE (type) == COMPLEX_TYPE
|| TREE_CODE (type) == VECTOR_TYPE)))
{
/* Return none if justification is not required. */
if (type
......@@ -9277,7 +9281,7 @@ function_arg (CUMULATIVE_ARGS *cum, enum machine_mode mode, tree type,
offset += 8;
}
return gen_rtx_PARALLEL (mode, gen_rtvec_v (ub, loc));
return gen_rtx_PARALLEL (BLKmode, gen_rtvec_v (ub, loc));
}
}
else
......
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