Commit c3e203cf by Richard Guenther Committed by Richard Biener

re PR tree-optimization/30132 (ICE in find_lattice_value, at tree-complex.c:133)

2008-01-09  Richard Guenther  <rguenther@suse.de>
	Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/30132
	* gimplify.c (gimplify_cond_expr): Do not create an addressable
	temporary if an rvalue is ok or an lvalue is not required.

	* gcc.c-torture/compile/pr30132.c: New testcase.

Co-Authored-By: Andrew Pinski <andrew_pinski@playstation.sony.com>

From-SVN: r131430
parent def49dd7
2008-01-09 Richard Guenther <rguenther@suse.de>
Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/30132
* gimplify.c (gimplify_cond_expr): Do not create an addressable
temporary if an rvalue is ok or an lvalue is not required.
2008-01-09 Richard Guenther <rguenther@suse.de>
PR middle-end/34458
* tree-data-ref.c (initialize_matrix_A): Use tree_low_cst,
......@@ -2633,7 +2633,11 @@ gimplify_cond_expr (tree *expr_p, tree *pre_p, fallback_t fallback)
{
tree result;
if ((fallback & fb_lvalue) == 0)
/* If an rvalue is ok or we do not require an lvalue, avoid creating
an addressable temporary. */
if (((fallback & fb_rvalue)
|| !(fallback & fb_lvalue))
&& !TREE_ADDRESSABLE (type))
{
if (gimplify_ctxp->allow_rhs_cond_expr
/* If either branch has side effects or could trap, it can't be
......
2008-01-09 Richard Guenther <rguenther@suse.de>
Andrew Pinski <andrew_pinski@playstation.sony.com>
PR middle-end/30132
* gcc.c-torture/compile/pr30132.c: New testcase.
2008-01-09 Richard Guenther <rguenther@suse.de>
PR middle-end/34458
* gcc.c-torture/compile/pr34458.c: New testcase.
double testit(double _Complex* t)
{
return *t==0.0?0.0:-*t;
}
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