aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJ"orn Rennecke <amylaar@redhat.com>2001-04-05 12:51:42 +0000
committerJoern Rennecke <amylaar@gcc.gnu.org>2001-04-05 13:51:42 +0100
commit93b23859cf4222b08473a869360bc9ac8970aedf (patch)
tree4fe052c5711e62b6365cde0166a2692201c954e3
parent1032c357336dad2720b7294f042366172844bf02 (diff)
downloadgcc-93b23859cf4222b08473a869360bc9ac8970aedf.zip
gcc-93b23859cf4222b08473a869360bc9ac8970aedf.tar.gz
gcc-93b23859cf4222b08473a869360bc9ac8970aedf.tar.bz2
i386.md (*andsi_1+3): If used after reload, make sure the operand satisfies ANY_QI_REG_P.
* i386.md (*andsi_1+3): If used after reload, make sure the operand satisfies ANY_QI_REG_P. From-SVN: r41114
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/i386/i386.md3
2 files changed, 7 insertions, 1 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index c4fb888..1fcce94 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+Thu Apr 5 13:44:17 2001 J"orn Rennecke <amylaar@redhat.com>
+
+ * i386.md (*andsi_1+3): If used after reload, make sure the operand
+ satisfies ANY_QI_REG_P.
+
2001-04-05 Bernd Schmidt <bernds@redhat.com>
* config/ia64/ia64.c (rtx_needs_barrier): A PARALLEL can contain
diff --git a/gcc/config/i386/i386.md b/gcc/config/i386/i386.md
index e87ee2c..a0a1875 100644
--- a/gcc/config/i386/i386.md
+++ b/gcc/config/i386/i386.md
@@ -8080,7 +8080,8 @@
(clobber (reg:CC 17))]
"(optimize_size || !TARGET_PARTIAL_REG_STALL)
&& (GET_MODE (operands[0]) == SImode || GET_MODE (operands[0]) == HImode
- || (TARGET_64BIT && GET_MODE (operands[0]) == DImode))"
+ || (TARGET_64BIT && GET_MODE (operands[0]) == DImode))
+ && (! reload_completed || ANY_QI_REG_P (operands[0]))"
[(parallel [(set (zero_extract:SI (match_dup 0)
(const_int 8)
(const_int 8))