mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-04-11 21:31:32 +08:00
re PR tree-optimization/35431 (ICE with complex integer, invalid gimple)
2008-03-31 Andrew Pinski <pinskia@gmail.com> PR tree-opt/35431 * tree-ssa-phiopt.c (conditional_replacement): Return early for complex types. 2008-03-31 Andrew Pinski <pinskia@gmail.com> PR tree-opt/35431 * gcc.c-torture/compile/pr35431.c: New testcase. From-SVN: r133749
This commit is contained in:
parent
4e483a224b
commit
550386ada7
@ -1,3 +1,9 @@
|
||||
2008-03-31 Andrew Pinski <pinskia@gmail.com>
|
||||
|
||||
PR tree-opt/35431
|
||||
* tree-ssa-phiopt.c (conditional_replacement): Return early for
|
||||
complex types.
|
||||
|
||||
2008-03-31 Jan Beulich <jbeulich@novell.com>
|
||||
|
||||
* config/ia64/constraints.md: Add 'j' constraint.
|
||||
|
@ -1,3 +1,8 @@
|
||||
2008-03-31 Andrew Pinski <pinskia@gmail.com>
|
||||
|
||||
PR tree-opt/35431
|
||||
* gcc.c-torture/compile/pr35431.c: New testcase.
|
||||
|
||||
2008-03-30 Kaz Kojima <kkojima@gcc.gnu.org>
|
||||
|
||||
* g++.dg/other/error27.C: Use -fno-finite-math-only on sh*
|
||||
|
15
gcc/testsuite/gcc.c-torture/compile/pr35431.c
Normal file
15
gcc/testsuite/gcc.c-torture/compile/pr35431.c
Normal file
@ -0,0 +1,15 @@
|
||||
void bar();
|
||||
|
||||
void foo(int i)
|
||||
{
|
||||
__complex__ int k = 0;
|
||||
|
||||
if (i)
|
||||
k = 1;
|
||||
|
||||
for (i = 0; i < 1; ++i)
|
||||
;
|
||||
|
||||
if (k)
|
||||
bar();
|
||||
}
|
@ -463,6 +463,11 @@ conditional_replacement (basic_block cond_bb, basic_block middle_bb,
|
||||
tree new_var = NULL;
|
||||
tree new_var1;
|
||||
|
||||
/* FIXME: Gimplification of complex type is too hard for now. */
|
||||
if (TREE_CODE (TREE_TYPE (arg0)) == COMPLEX_TYPE
|
||||
|| TREE_CODE (TREE_TYPE (arg1)) == COMPLEX_TYPE)
|
||||
return false;
|
||||
|
||||
/* The PHI arguments have the constants 0 and 1, then convert
|
||||
it to the conditional. */
|
||||
if ((integer_zerop (arg0) && integer_onep (arg1))
|
||||
|
Loading…
x
Reference in New Issue
Block a user