OSDN Git Service

Add ARG_POINTER_REGNUM to REG_ALLOC_ORDER
authornickc <nickc@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 25 Jun 1998 09:55:35 +0000 (09:55 +0000)
committernickc <nickc@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 25 Jun 1998 09:55:35 +0000 (09:55 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@20713 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/config/arm/arm.h

index 4ca5d51..47ba745 100644 (file)
@@ -1,3 +1,8 @@
+Thu Jun 25 09:54:55 1998  Nick Clifton  <nickc@cygnus.com>
+
+       * config/arm/arm.h (REG_ALLOC_ORDER): Add ARG_POINTER_REGNUM,
+       noticed by grahams@rcp.co.uk.
+
 Thu Jun 25 11:12:29 1998  Dave Brolley  <brolley@cygnus.com>
 
        * gcc.c (default_compilers): Use new | syntax to eliminate
index 4aeca61..2ac9a3a 100644 (file)
@@ -759,12 +759,12 @@ extern int arm_arch4;
    least likely to contain a function parameter; in addition results are
    returned in r0.
    */
-#define REG_ALLOC_ORDER  \
+#define REG_ALLOC_ORDER            \
 {                                   \
-    3, 2, 1, 0, 12, 14,        4, 5,       \
-    6, 7, 8, 10, 9, 11, 13, 15,     \
+     3,  2,  1,  0, 12, 14,  4,  5, \
+     6,  7,  8, 10,  9, 11, 13, 15, \
     16, 17, 18, 19, 20, 21, 22, 23, \
-    24, 25                         \
+    24, 25, 26                     \
 }
 \f
 /* Register and constant classes.  */
@@ -1408,7 +1408,9 @@ do                                                                        \
              && INTVAL (op) <= 31)                                     \
            goto LABEL;                                                 \
         }                                                              \
-      range = (MODE) == HImode ? (arm_arch4 ? 256 : 4095) : 4096;      \
+      /* NASTY: Since this limits the addressing of unsigned byte loads */      \
+      range = ((MODE) == HImode || (MODE) == QImode)                    \
+              ? (arm_arch4 ? 256 : 4095) : 4096;                        \
       if (code == CONST_INT && INTVAL (INDEX) < range                  \
          && INTVAL (INDEX) > -range)                                   \
         goto LABEL;                                                    \