OSDN Git Service

* config/xtensa/xtensa.c (order_regs_for_local_alloc): Order the
authorbwilson <bwilson@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 3 Feb 2003 20:23:24 +0000 (20:23 +0000)
committerbwilson <bwilson@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 3 Feb 2003 20:23:24 +0000 (20:23 +0000)
        coprocessor registers before floating-point registers.
        * config/xtensa/xtensa.h (REG_ALLOC_ORDER): Adjust register numbers
        to account for a previously removed register.
        (SPEC_REG_FIRST, SPEC_REG_LAST, SPEC_REG_NUM, COUNT_REGISTER_REGNUM):
        Delete unused macros.

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

gcc/ChangeLog
gcc/config/xtensa/xtensa.c
gcc/config/xtensa/xtensa.h

index 8deaf03..439a351 100644 (file)
@@ -1,3 +1,12 @@
+2003-02-03  Bob Wilson  <bob.wilson@acm.org>
+
+       * config/xtensa/xtensa.c (order_regs_for_local_alloc): Order the
+       coprocessor registers before floating-point registers.
+       * config/xtensa/xtensa.h (REG_ALLOC_ORDER): Adjust register numbers
+       to account for a previously removed register.
+       (SPEC_REG_FIRST, SPEC_REG_LAST, SPEC_REG_NUM, COUNT_REGISTER_REGNUM):
+       Delete unused macros.
+
 Mon Feb  3 21:19:11 CET 2003  Jan Hubicka  <jh@suse.cz>
 
        * i386.c (ix86_expand_store_builtin):  Always force op1 to register.
index a05386c..cb7d7e5 100644 (file)
@@ -2725,6 +2725,10 @@ order_regs_for_local_alloc ()
       for (i = 0; i < num_arg_regs; i++)
        reg_alloc_order[nxt++] = GP_ARG_FIRST + i;
 
+      /* list the coprocessor registers in order */
+      for (i = 0; i < BR_REG_NUM; i++)
+       reg_alloc_order[nxt++] = BR_REG_FIRST + i;
+
       /* list the FP registers in order for now */
       for (i = 0; i < 16; i++)
        reg_alloc_order[nxt++] = FP_REG_FIRST + i;
@@ -2735,10 +2739,6 @@ order_regs_for_local_alloc ()
       reg_alloc_order[nxt++] = 16;     /* pseudo frame pointer */
       reg_alloc_order[nxt++] = 17;     /* pseudo arg pointer */
 
-      /* list the coprocessor registers in order */
-      for (i = 0; i < BR_REG_NUM; i++)
-       reg_alloc_order[nxt++] = BR_REG_FIRST + i;
-
       reg_alloc_order[nxt++] = ACC_REG_FIRST;  /* MAC16 accumulator */
     }
 }
index b11fa5e..0267532 100644 (file)
@@ -345,7 +345,6 @@ extern unsigned xtensa_current_frame_size;
    0 - 15      AR[0] - AR[15]
    16          FRAME_POINTER (fake = initial sp)
    17          ARG_POINTER (fake = initial sp + framesize)
-   18           LOOP_COUNT (loop count special register)
    18          BR[0] for floating-point CC
    19 - 34     FR[0] - FR[15]
    35          MAC16 accumulator */
@@ -394,10 +393,11 @@ extern unsigned xtensa_current_frame_size;
    have been exhausted.  */
 
 #define REG_ALLOC_ORDER \
-{  8,  9, 10, 11, 12, 13, 14, 15,  7,  6,  5,  4,  3,  2, 19, \
-  20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, \
+{  8,  9, 10, 11, 12, 13, 14, 15,  7,  6,  5,  4,  3,  2, \
+  18, \
+  19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, \
    0,  1, 16, 17, \
-  36, \
+  35, \
 }
 
 #define ORDER_REGS_FOR_LOCAL_ALLOC order_regs_for_local_alloc ()
@@ -424,11 +424,6 @@ extern int leaf_function;
 #define GP_REG_LAST  17
 #define GP_REG_NUM   (GP_REG_LAST - GP_REG_FIRST + 1)
 
-/* Special registers */
-#define SPEC_REG_FIRST 18
-#define SPEC_REG_LAST  18
-#define SPEC_REG_NUM   (SPEC_REG_LAST - SPEC_REG_FIRST + 1)
-
 /* Coprocessor registers */
 #define BR_REG_FIRST 18
 #define BR_REG_LAST  18 
@@ -473,9 +468,6 @@ extern char xtensa_hard_regno_mode_ok[][FIRST_PSEUDO_REGISTER];
    == (GET_MODE_CLASS (MODE2) == MODE_FLOAT ||                         \
        GET_MODE_CLASS (MODE2) == MODE_COMPLEX_FLOAT))
 
-/* Register to use for LCOUNT special register.  */
-#define COUNT_REGISTER_REGNUM (SPEC_REG_FIRST + 0)
-
 /* Register to use for pushing function arguments.  */
 #define STACK_POINTER_REGNUM (GP_REG_FIRST + 1)