re PR rtl-optimization/63448 (ICE when compiling atlas 3.10.2)
authorVladimir Makarov <vmakarov@redhat.com>
Wed, 15 Oct 2014 15:48:33 +0000 (15:48 +0000)
committerVladimir Makarov <vmakarov@gcc.gnu.org>
Wed, 15 Oct 2014 15:48:33 +0000 (15:48 +0000)
commitf54437d5f7912771af11f75bdb370dc440ab2b26
tree6f3ad3b8727dfb842a5843b742084318f3fc84c6
parente631038f4b5ca08723d34c5523e47dc8c80ce602
re PR rtl-optimization/63448 (ICE when compiling atlas 3.10.2)

2014-10-15  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/63448
* lra-int.h (LRA_MAX_CONSTRAINT_ITERATION_NUMBER): Remove.
(LRA_MAX_ASSIGNMENT_ITERATION_NUMBER): New.
(LRA_MAX_INHERITANCE_PASSES): Use it.
(lra_constraint_iter_after_spill): Remove.
(lra_assignment_iter): New.
(lra_assignment_iter_after_spill): New.
* lra-assigns.c (lra_assignment_iter): New.
(lra_assignment_iter_after_spill): New.
(former_reload_pseudo_spill_p): New.
(spill_for): Set up former_reload_pseudo_spill_p.
(setup_live_pseudos_and_spill_after_risky): Ditto.
(assign_by_spills): Ditto.
(lra_assign): Increment lra_assignment_iter.  Print the iteration
number.  Reset former_reload_pseudo_spill_p.  Check
lra_assignment_iter_after_spill.
* lra.c (lra): Remove lra_constraint_iter_after_spill.  Initialize
lra_assignment_iter and lra_assignment_iter_after_spill.
* lra-constraints.c (lra_constraint_iter_after_spill): Remove.
(lra_constraints): Remove code with
lra_assignment_iter_after_spill.

2014-10-15  Vladimir Makarov  <vmakarov@redhat.com>

PR rtl-optimization/63448
* gcc.target/i386/pr63448.c: New test.

From-SVN: r216270
gcc/ChangeLog
gcc/lra-assigns.c
gcc/lra-constraints.c
gcc/lra-int.h
gcc/lra.c
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/i386/pr63448.c [new file with mode: 0644]