diff options
author | vmakarov <vmakarov@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-12-21 21:20:48 +0000 |
---|---|---|
committer | vmakarov <vmakarov@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-12-21 21:20:48 +0000 |
commit | 47f6add2ea4f4bc1b9e7bcc817dad9b903568f18 (patch) | |
tree | 710b9ff07f324f4591594dc3249e961c1dbf9d4c /gcc/lra-assigns.c | |
parent | 4cadf1070f286debc2c1614d26fa9b581040641c (diff) | |
download | gcc-47f6add2ea4f4bc1b9e7bcc817dad9b903568f18.tar.gz |
2012-12-21 Vladimir Makarov <vmakarov@redhat.com>
PR middle-end/55775
* lra-assigns.c (improve_inheritance): Do nothing after
LRA_MAX_INHERITANCE_PASSES pass.
* lra-constraints.c (MAX_CONSTRAINT_ITERATION_NUMBER): Rename to
LRA_MAX_CONSTRAINT_ITERATION_NUMBER. Move to lra-int.h.
(MAX_INHERITANCE_PASSES): Rename to LRA_MAX_INHERITANCE_PASSES.
Move to lra-int.h.
* lra-int.h (LRA_MAX_CONSTRAINT_ITERATION_NUMBER): Move from
lra-constraints.c.
(LRA_MAX_INHERITANCE_PASSES): Ditto.
2012-12-21 Vladimir Makarov <vmakarov@redhat.com>
PR middle-end/55775
* gcc.target/i386/pr55775.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@194680 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/lra-assigns.c')
-rw-r--r-- | gcc/lra-assigns.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gcc/lra-assigns.c b/gcc/lra-assigns.c index b1d18102dc2..12d58cca609 100644 --- a/gcc/lra-assigns.c +++ b/gcc/lra-assigns.c @@ -1084,6 +1084,8 @@ improve_inheritance (bitmap changed_pseudos) lra_copy_t cp, next_cp; bitmap_iterator bi; + if (lra_inheritance_iter > LRA_MAX_INHERITANCE_PASSES) + return; n = 0; EXECUTE_IF_SET_IN_BITMAP (&lra_inheritance_pseudos, 0, k, bi) if (reg_renumber[k] >= 0 && lra_reg_info[k].nrefs != 0) |