diff options
author | Richard Henderson <rth@redhat.com> | 2014-04-01 07:40:27 -0700 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2014-04-01 07:40:27 -0700 |
commit | 2a1ffd6db5dc970b2c41f78ac5c37dc21b13de6a (patch) | |
tree | b9cf5d0265170d90c6438304469965f6543ad855 | |
parent | 98e8dd4d860701e0263e947ea260fa9f12d62ee4 (diff) | |
download | gcc-2a1ffd6db5dc970b2c41f78ac5c37dc21b13de6a.zip gcc-2a1ffd6db5dc970b2c41f78ac5c37dc21b13de6a.tar.gz gcc-2a1ffd6db5dc970b2c41f78ac5c37dc21b13de6a.tar.bz2 |
re PR target/60704 (ICE: in extract_constrain_insn_cached, at recog.c:2156 with -flive-range-shrinkage -march=amdfam10)
PR target/60704
* config/i386/i386.md (*float<SWI48><MODEF>2_sse): Leave the second
alternative enabled before register allocation.
From-SVN: r208989
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/i386/i386.md | 7 |
2 files changed, 12 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 238b14d..5fc97c4 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2014-04-01 Richard Henderson <rth@redhat.com> + + PR target/60704 + * config/i386/i386.md (*float<SWI48><MODEF>2_sse): Leave the second + alternative enabled before register allocation. + 2014-04-01 Chung-Lin Tang <cltang@codesourcery.com> * config/nios2/nios2.md (unspec): Remove UNSPEC_TLS, UNSPEC_TLS_LDM. diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index ca16173..25e2e93 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -4739,8 +4739,13 @@ && X87_ENABLE_FLOAT (<MODEF:MODE>mode, <SWI48:MODE>mode)") (eq_attr "alternative" "1") + /* ??? For sched1 we need constrain_operands to be able to + select an alternative. Leave this enabled before RA. */ (symbol_ref "TARGET_INTER_UNIT_CONVERSIONS - || optimize_function_for_size_p (cfun)") + || optimize_function_for_size_p (cfun) + || !(reload_completed + || reload_in_progress + || lra_in_progress)") ] (symbol_ref "true"))) ]) |