diff options
Diffstat (limited to 'gcc/tree-ssa-phiopt.c')
-rw-r--r-- | gcc/tree-ssa-phiopt.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/gcc/tree-ssa-phiopt.c b/gcc/tree-ssa-phiopt.c index bfe4fed..2a8c878 100644 --- a/gcc/tree-ssa-phiopt.c +++ b/gcc/tree-ssa-phiopt.c @@ -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)) |