diff options
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/tree-ssa-uninit.c | 3 |
2 files changed, 9 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index b58a881..9e11f72 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2010-10-12 Xinliang David Li <davidxl@google.com> + + PR tree-optimization/45972 + * gcc/tree-ssa-uninit.c (compute_uninit_opnds_pos): skip phis + with too many arguments. + 2010-10-12 Jakub Jelinek <jakub@redhat.com> PR fortran/45636 diff --git a/gcc/tree-ssa-uninit.c b/gcc/tree-ssa-uninit.c index 4398db7..78b88e9 100644 --- a/gcc/tree-ssa-uninit.c +++ b/gcc/tree-ssa-uninit.c @@ -149,6 +149,9 @@ compute_uninit_opnds_pos (gimple phi) unsigned uninit_opnds = 0; n = gimple_phi_num_args (phi); + /* Bail out for phi with too many args. */ + if (n > 32) + return 0; for (i = 0; i < n; ++i) { |