]> git.ipfire.org Git - thirdparty/gcc.git/commitdiff
(gen_lowpart_common...
authorRichard Kenner <kenner@gcc.gnu.org>
Wed, 16 Mar 1994 14:01:34 +0000 (09:01 -0500)
committerRichard Kenner <kenner@gcc.gnu.org>
Wed, 16 Mar 1994 14:01:34 +0000 (09:01 -0500)
(gen_lowpart_common, gen_highpart, operand_subword): Test input
against RTX for FP, AP, and SP, not same register number.

From-SVN: r6795

gcc/emit-rtl.c

index 01812c68ba98088b803e0e071f9584890fed444a..7b9187d12cb5089b522b31f6bde59a48671824a2 100644 (file)
@@ -625,11 +625,11 @@ gen_lowpart_common (mode, x)
                   || ! rtx_equal_function_value_matters)
               /* We want to keep the stack, frame, and arg pointers
                  special.  */
-              && REGNO (x) != FRAME_POINTER_REGNUM
+              && x != frame_pointer_rtx
 #if FRAME_POINTER_REGNUM != ARG_POINTER_REGNUM
-              && REGNO (x) != ARG_POINTER_REGNUM
+              && x != arg_pointer_rtx
 #endif
-              && REGNO (x) != STACK_POINTER_REGNUM)
+              && x != stack_pointer_rtx)
        return gen_rtx (REG, mode, REGNO (x) + word);
       else
        return gen_rtx (SUBREG, mode, x, word);
@@ -935,11 +935,11 @@ gen_highpart (mode, x)
          && (! REG_FUNCTION_VALUE_P (x)
              || ! rtx_equal_function_value_matters)
          /* We want to keep the stack, frame, and arg pointers special.  */
-         && REGNO (x) != FRAME_POINTER_REGNUM
+         && x != frame_pointer_rtx
 #if FRAME_POINTER_REGNUM != ARG_POINTER_REGNUM
-         && REGNO (x) != ARG_POINTER_REGNUM
+         && x != arg_pointer_rtx
 #endif
-         && REGNO (x) != STACK_POINTER_REGNUM)
+         && x != stack_pointer_rtx)
        return gen_rtx (REG, mode, REGNO (x) + word);
       else
        return gen_rtx (SUBREG, mode, x, word);
@@ -1026,11 +1026,11 @@ operand_subword (op, i, validate_address, mode)
                   && rtx_equal_function_value_matters)
               /* We want to keep the stack, frame, and arg pointers
                  special.  */
-              || REGNO (op) == FRAME_POINTER_REGNUM
+              || op == frame_pointer_rtx
 #if FRAME_POINTER_REGNUM != ARG_POINTER_REGNUM
-              || REGNO (op) == ARG_POINTER_REGNUM
+              || op == arg_pointer_rtx
 #endif
-              || REGNO (op) == STACK_POINTER_REGNUM)
+              || op == stack_pointer_rtx)
        return gen_rtx (SUBREG, word_mode, op, i);
       else
        return gen_rtx (REG, word_mode, REGNO (op) + i);