diff options
| author | amylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-07-22 12:25:20 +0000 |
|---|---|---|
| committer | amylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-07-22 12:25:20 +0000 |
| commit | e600139e603ff83608932fc41cbde0226f95cf36 (patch) | |
| tree | a98e7cdc5aa12f9912600717a656138bb0b828ce | |
| parent | 2eb9302af12c190f0a839a77a220299c4441ab14 (diff) | |
| download | ppe42-gcc-e600139e603ff83608932fc41cbde0226f95cf36.tar.gz ppe42-gcc-e600139e603ff83608932fc41cbde0226f95cf36.zip | |
PR rtl-optimization/20370
* ifcvt.c (dead_or_predicable): Before calling propagate_block,
call allocate_reg_info if necessary.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@102282 138bc75d-0d04-0410-961f-82ee72b054a4
| -rw-r--r-- | gcc/ChangeLog | 4 | ||||
| -rw-r--r-- | gcc/ifcvt.c | 8 |
2 files changed, 12 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index afaf91869da..faddc8357e1 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,9 @@ 2005-07-22 J"orn Rennecke <joern.rennecke@st.com> + PR rtl-optimization/20370 + * ifcvt.c (dead_or_predicable): Before calling propagate_block, + call allocate_reg_info if necessary. + PR rtl-optimization/21848 * calls.c (emit_library_call_value_1): For const functions, add USEs of the stack slots to CALL_INSN_FUNCTION_USAGE. diff --git a/gcc/ifcvt.c b/gcc/ifcvt.c index d9f18bca611..d74d9457d7b 100644 --- a/gcc/ifcvt.c +++ b/gcc/ifcvt.c @@ -3341,6 +3341,14 @@ dead_or_predicable (basic_block test_bb, basic_block merge_bb, /* ??? bb->local_set is only valid during calculate_global_regs_live, so we must recompute usage for MERGE_BB. Not so bad, I suppose, since we've already asserted that MERGE_BB is small. */ + /* If we allocated new pseudos (e.g. in the conditional move + expander called from noce_emit_cmove), we must resize the + array first. */ + if (max_regno < max_reg_num ()) + { + max_regno = max_reg_num (); + allocate_reg_info (max_regno, FALSE, FALSE); + } propagate_block (merge_bb, tmp, merge_set, merge_set, 0); /* For small register class machines, don't lengthen lifetimes of |

