]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
re PR target/19028 (ICE in libjava)
authorRichard Henderson <rth@redhat.com>
Thu, 16 Dec 2004 09:42:46 +0000 (01:42 -0800)
committerRichard Henderson <rth@gcc.gnu.org>
Thu, 16 Dec 2004 09:42:46 +0000 (01:42 -0800)
        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

gcc/ChangeLog
gcc/config/i386/i386.md

index d40af365f9da980ecd48d772a925aa5a11200667..a6c2e45aa8c4ef9e60081181f00216b08959520a 100644 (file)
@@ -1,3 +1,9 @@
+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
index db6a724d34c83abcf7a3f7c4e6464eb30d332905..321bca13cccca17f45804b96e08ac6730ed712d3 100644 (file)
    (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];