diff options
author | Jan Hubicka <jh@suse.cz> | 2008-09-04 12:45:57 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2008-09-04 10:45:57 +0000 |
commit | d7f2fbf618e5109a30bbe4a6e03a8e2aad4215aa (patch) | |
tree | 903a28d7a99c5324861ffdddaa9bcefacc331363 /gcc/tree-switch-conversion.c | |
parent | 0af0e8dca5b8770a26214e5660dfcaeaf6bd36bf (diff) | |
download | gcc-d7f2fbf618e5109a30bbe4a6e03a8e2aad4215aa.tar.gz |
re PR middle-end/37343 (ICE in expand_expr_real_1, at expr.c:7290)
PR middle-end/37343
* tree-switch-conversion.c (check_final_bb): Accept only IP
invariants.
* g++.dg/torture/pr37343.C New file.
From-SVN: r139983
Diffstat (limited to 'gcc/tree-switch-conversion.c')
-rw-r--r-- | gcc/tree-switch-conversion.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/tree-switch-conversion.c b/gcc/tree-switch-conversion.c index 8bcfcfde5ca..e9757454f21 100644 --- a/gcc/tree-switch-conversion.c +++ b/gcc/tree-switch-conversion.c @@ -298,7 +298,7 @@ check_final_bb (void) if ((bb == info.switch_bb || (single_pred_p (bb) && single_pred (bb) == info.switch_bb)) - && !is_gimple_min_invariant (gimple_phi_arg_def (phi, i))) + && !is_gimple_ip_invariant (gimple_phi_arg_def (phi, i))) { info.reason = " Non-invariant value from a case\n"; return false; /* Non-invariant argument. */ |