OSDN Git Service

(init_reg_sets_1): Make static.
authordje <dje@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 20 Apr 1994 23:38:22 +0000 (23:38 +0000)
committerdje <dje@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 20 Apr 1994 23:38:22 +0000 (23:38 +0000)
(init_reg_modes): New function.
(init_regs): Likewise.

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

gcc/regclass.c

index 69ed761..593f3a9 100644 (file)
@@ -356,7 +356,7 @@ init_reg_sets ()
 /* After switches have been processed, which perhaps alter
    `fixed_regs' and `call_used_regs', convert them to HARD_REG_SETs.  */
 
-void
+static void
 init_reg_sets_1 ()
 {
   register int i;
@@ -398,17 +398,35 @@ init_reg_sets_1 ()
       if (call_fixed_regs[i])
        SET_HARD_REG_BIT (call_fixed_reg_set, i);
     }
+}
+
+/* Compute the table of register modes.
+   These values are used to record death information for individual registers
+   (as opposed to a multi-register mode).  */
 
-  /* Compute the table of register modes.
-     These values are used to record death information for individual registers
-     (as opposed to a multi-register mode).
-     This can't be done until HARD_REGNO_NREGS and HARD_REGNO_MODE_OK are
-     usable which is after OVERRIDE_OPTIONS on some targets.  */
+static void
+init_reg_modes ()
+{
+  register int i;
 
   for (i = 0; i < FIRST_PSEUDO_REGISTER; i++)
     reg_raw_mode[i] = choose_hard_reg_mode (i, 1);
 }
 
+/* Finish initializing the register sets and
+   initialize the register modes.  */
+
+void
+init_regs ()
+{
+  /* This finishes what was started by init_reg_sets, but couldn't be done
+     until after register usage was specified.  */
+  if (!output_bytecode)
+    init_reg_sets_1 ();
+
+  init_reg_modes ();
+}
+
 /* Return a machine mode that is legitimate for hard reg REGNO and large
    enough to save nregs.  If we can't find one, return VOIDmode.  */