diff options
author | Richard Henderson <rth@redhat.com> | 2008-10-01 07:28:04 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2008-10-01 07:28:04 -0700 |
commit | 35a45bd40e2a9a5fa65efe7bc25e98fa8f8d7fdc (patch) | |
tree | cc6a378a1afa6e193219356bf11b03a66957fbe1 /gcc/tree-complex.c | |
parent | 2d66eeeb56d642c1f080a580c5acadded1ff7816 (diff) | |
download | gcc-35a45bd40e2a9a5fa65efe7bc25e98fa8f8d7fdc.zip gcc-35a45bd40e2a9a5fa65efe7bc25e98fa8f8d7fdc.tar.gz gcc-35a45bd40e2a9a5fa65efe7bc25e98fa8f8d7fdc.tar.bz2 |
re PR tree-optimization/35737 (ICE with __builtin_setjmp and complex variable)
PR tree-opt/35737
* tree-complex.c (set_component_ssa_name): Don't optimize
is_gimple_min_invariant values with ssa_names in abnormal phis.
From-SVN: r140812
Diffstat (limited to 'gcc/tree-complex.c')
-rw-r--r-- | gcc/tree-complex.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/tree-complex.c b/gcc/tree-complex.c index bbf4c49..939bd6f 100644 --- a/gcc/tree-complex.c +++ b/gcc/tree-complex.c @@ -537,7 +537,8 @@ set_component_ssa_name (tree ssa_name, bool imag_p, tree value) /* If we've nothing assigned, and the value we're given is already stable, then install that as the value for this SSA_NAME. This preemptively copy-propagates the value, which avoids unnecessary memory allocation. */ - else if (is_gimple_min_invariant (value)) + else if (is_gimple_min_invariant (value) + && !SSA_NAME_OCCURS_IN_ABNORMAL_PHI (ssa_name)) { VEC_replace (tree, complex_ssa_name_components, ssa_name_index, value); return NULL; |