OSDN Git Service

(add_operand): Test for exactly the constants allowed by the
authorkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 25 Apr 1995 20:36:05 +0000 (20:36 +0000)
committerkenner <kenner@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 25 Apr 1995 20:36:05 +0000 (20:36 +0000)
constraints.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@9445 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/config/alpha/alpha.c

index c600713..49b7482 100644 (file)
@@ -135,10 +135,9 @@ add_operand (op, mode)
      enum machine_mode mode;
 {
   if (GET_CODE (op) == CONST_INT)
-    return ((unsigned HOST_WIDE_INT) (INTVAL (op) + 0x8000) < 0x10000
-           || ((INTVAL (op) & 0xffff) == 0
-               && (INTVAL (op) >> 31 == -1
-                   || INTVAL (op) >> 31 == 0)));
+    return (CONST_OK_FOR_LETTER_P (INTVAL (op), 'K')
+           || CONST_OK_FOR_LETTER_P (INTVAL (op), 'L')
+           || CONST_OK_FOR_LETTER_P (INTVAL (op), 'O'));
 
   return register_operand (op, mode);
 }