diff options
author | Richard Henderson <rth@redhat.com> | 2004-12-16 01:42:46 -0800 |
---|---|---|
committer | Richard Henderson <rth@gcc.gnu.org> | 2004-12-16 01:42:46 -0800 |
commit | 53371c33287e1fa7d75dfebe1522ec5299d9142d (patch) | |
tree | 6b2870434713b0236b46ecb76530009a3c1394cd | |
parent | 7cc6af0cdabb9deb55e357df71094931da1e91e8 (diff) | |
download | gcc-53371c33287e1fa7d75dfebe1522ec5299d9142d.zip gcc-53371c33287e1fa7d75dfebe1522ec5299d9142d.tar.gz gcc-53371c33287e1fa7d75dfebe1522ec5299d9142d.tar.bz2 |
re PR target/19028 (ICE in libjava)
PR target/19028
* config/i386/i386.md (sse compare splitter): Test for SF and DFmode
explicitly instead of using VALID_SSE_REG_MODE.
From-SVN: r92251
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/config/i386/i386.md | 3 |
2 files changed, 8 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d40af36..a6c2e45 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,5 +1,11 @@ 2004-12-15 Richard Henderson <rth@redhat.com> + PR target/19028 + * config/i386/i386.md (sse compare splitter): Test for SF and DFmode + explicitly instead of using VALID_SSE_REG_MODE. + +2004-12-15 Richard Henderson <rth@redhat.com> + PR target/19005 * config/i386/i386.md (swaphi_1): Swap with swaphi_2, allow with optimize_size. diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index db6a724..321bca1 100644 --- a/gcc/config/i386/i386.md +++ b/gcc/config/i386/i386.md @@ -18213,7 +18213,8 @@ (clobber (match_operand 6 "" "")) (clobber (reg:CC FLAGS_REG))] "!SSE_REG_P (operands[0]) && reload_completed - && VALID_SSE_REG_MODE (GET_MODE (operands[0]))" + && (GET_MODE (operands[0]) == SFmode + || (TARGET_SSE2 && GET_MODE (operands[0]) == DFmode))" [(const_int 0)] { ix86_compare_op0 = operands[5]; |