From 53371c33287e1fa7d75dfebe1522ec5299d9142d Mon Sep 17 00:00:00 2001 From: Richard Henderson Date: Thu, 16 Dec 2004 01:42:46 -0800 Subject: [PATCH] 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 --- gcc/ChangeLog | 6 ++++++ gcc/config/i386/i386.md | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index d40af365f9d..a6c2e45aa8c 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2004-12-15 Richard Henderson + + 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 PR target/19005 diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md index db6a724d34c..321bca13ccc 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]; -- 2.30.2