Commit 576de5cb by Uros Bizjak

re PR middle-end/38969 (-foptimize-sibling-calls generates wrong code on alpha)

	PR middle-end/38969
	* calls.c (initialize_argument_information): Do not wrap complex
	arguments in SAVE_EXPR.

testsuite/ChangeLog:

	PR middle-end/38969
	* gcc.c-torture/execute/pr38969.c: New test.

From-SVN: r143699
parent f22167fd
2009-01-27 Uros Bizjak <ubizjak@gmail.com>
PR middle-end/38969
* calls.c (initialize_argument_information): Do not wrap complex
arguments in SAVE_EXPR.
2009-01-26 Andreas Tobler <a.tobler@schweiz.org> 2009-01-26 Andreas Tobler <a.tobler@schweiz.org>
* config/t-vxworks (LIBGCC2_INCLUDES): Fix typo. * config/t-vxworks (LIBGCC2_INCLUDES): Fix typo.
......
...@@ -992,7 +992,6 @@ initialize_argument_information (int num_actuals ATTRIBUTE_UNUSED, ...@@ -992,7 +992,6 @@ initialize_argument_information (int num_actuals ATTRIBUTE_UNUSED,
&& targetm.calls.split_complex_arg (argtype)) && targetm.calls.split_complex_arg (argtype))
{ {
tree subtype = TREE_TYPE (argtype); tree subtype = TREE_TYPE (argtype);
arg = save_expr (arg);
args[j].tree_value = build1 (REALPART_EXPR, subtype, arg); args[j].tree_value = build1 (REALPART_EXPR, subtype, arg);
j += inc; j += inc;
args[j].tree_value = build1 (IMAGPART_EXPR, subtype, arg); args[j].tree_value = build1 (IMAGPART_EXPR, subtype, arg);
......
2009-01-27 Uros Bizjak <ubizjak@gmail.com>
PR middle-end/38969
* gcc.c-torture/execute/pr38969.c: New test.
2009-01-26 Adam Nemet <anemet@caviumnetworks.com> 2009-01-26 Adam Nemet <anemet@caviumnetworks.com>
PR testsuite/38864 PR testsuite/38864
* gcc.target/mips/fixed-vector-type.c: Add target { fixed_point} * gcc.target/mips/fixed-vector-type.c: Add target { fixed_point }
to dg-do compile. to dg-do compile.
* gcc.target/mips/fixed-scalar-type.c: Likewise. * gcc.target/mips/fixed-scalar-type.c: Likewise.
* gcc.target/mips/dpaq_sa_l_w.c: Likewise. * gcc.target/mips/dpaq_sa_l_w.c: Likewise.
...@@ -143,7 +148,7 @@ ...@@ -143,7 +148,7 @@
* gfortran.dg/host_assoc_function_7.f90: New test * gfortran.dg/host_assoc_function_7.f90: New test
2009-01-20 Andrew Pinski <andrew_pinski@playstation.sony.com> 2009-01-20 Andrew Pinski <andrew_pinski@playstation.sony.com>
Richard Guenther <rguenther@suse.de> Richard Guenther <rguenther@suse.de>
PR tree-optimization/38747 PR tree-optimization/38747
PR tree-optimization/38748 PR tree-optimization/38748
......
__complex__ float
__attribute__ ((noinline)) foo (__complex__ float x)
{
return x;
}
__complex__ float
__attribute__ ((noinline)) bar (__complex__ float x)
{
return foo (x);
}
int main()
{
__complex__ float a, b;
__real__ a = 9;
__imag__ a = 42;
b = bar (a);
if (a != b)
abort ();
return 0;
}
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