aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJan Hubicka <jh@suse.cz>2001-05-24 15:59:09 +0200
committerJan Hubicka <hubicka@gcc.gnu.org>2001-05-24 13:59:09 +0000
commit2b1c08f5bf4474652963279b8f4bd1ff352ac31f (patch)
tree6ece55f172ea5627b036edc01cbcb66b75548db3
parent6f56d9253f78d537e2af74895512188743519ff7 (diff)
downloadgcc-2b1c08f5bf4474652963279b8f4bd1ff352ac31f.zip
gcc-2b1c08f5bf4474652963279b8f4bd1ff352ac31f.tar.gz
gcc-2b1c08f5bf4474652963279b8f4bd1ff352ac31f.tar.bz2
* i386.c (incdec_operand): Accept only 1 and -1.
From-SVN: r42527
-rw-r--r--gcc/ChangeLog4
-rw-r--r--gcc/config/i386/i386.c12
2 files changed, 5 insertions, 11 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 7ae1e66..ac01497 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,7 @@
+Thu May 24 15:56:48 CEST 2001 Jan Hubicka <jh@suse.cz>
+
+ * i386.c (incdec_operand): Accept only 1 and -1.
+
2001-05-23 Kelley Cook <kelley.cook@home.com>
* Makefile.in: Move many of the *_H definitions eariler in the
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 33b00b1..8ceb3b7 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -1420,17 +1420,7 @@ incdec_operand (op, mode)
registers, since carry flag is not set. */
if (TARGET_PENTIUM4 && !optimize_size)
return 0;
- if (op == const1_rtx || op == constm1_rtx)
- return 1;
- if (GET_CODE (op) != CONST_INT)
- return 0;
- if (mode == SImode && INTVAL (op) == (HOST_WIDE_INT) 0xffffffff)
- return 1;
- if (mode == HImode && INTVAL (op) == (HOST_WIDE_INT) 0xffff)
- return 1;
- if (mode == QImode && INTVAL (op) == (HOST_WIDE_INT) 0xff)
- return 1;
- return 0;
+ return op == const1_rtx || op == constm1_rtx;
}
/* Return nonzero if OP is acceptable as operand of DImode shift