OSDN Git Service

* reload1.c (reload_reg_free_before_p): Abort for RELOAD_FOR_OUTPUT.
authoramylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 13 Jul 1998 11:04:45 +0000 (11:04 +0000)
committeramylaar <amylaar@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 13 Jul 1998 11:04:45 +0000 (11:04 +0000)
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@21103 138bc75d-0d04-0410-961f-82ee72b054a4

gcc/ChangeLog
gcc/reload1.c

index 9f859f1..89b63a2 100644 (file)
@@ -1,3 +1,7 @@
+Mon Jul 13 19:01:52 1998  J"orn Rennecke <amylaar@cygnus.co.uk>
+
+       * reload1.c (reload_reg_free_before_p): Abort for RELOAD_FOR_OUTPUT.
+
 Mon Jul 13 10:50:17 1998  Mark Mitchell  <mark@markmitchell.com>
 
        * cplus-dem.c (SCOPE_STRING): Remove DMGL_JAVA stuff.
index 3b1fd56..2755ee6 100644 (file)
@@ -4713,28 +4713,9 @@ reload_reg_free_before_p (regno, opnum, type)
              && ! TEST_HARD_REG_BIT (reload_reg_used_in_op_addr, regno));
                                   
     case RELOAD_FOR_OUTPUT:
-      /* This can't be used in the output address for this operand and
-        anything that can't be used for it, except that we've already
-        tested for RELOAD_FOR_INSN objects.  */
-
-      if (TEST_HARD_REG_BIT (reload_reg_used_in_output_addr[opnum], regno)
-         || TEST_HARD_REG_BIT (reload_reg_used_in_outaddr_addr[opnum], regno))
-       return 0;
-
-      for (i = 0; i < opnum; i++)
-       if (TEST_HARD_REG_BIT (reload_reg_used_in_output_addr[i], regno)
-           || TEST_HARD_REG_BIT (reload_reg_used_in_outaddr_addr[i], regno)
-           || TEST_HARD_REG_BIT (reload_reg_used_in_output[i], regno))
-         return 0;
-
-      for (i = 0; i < reload_n_operands; i++)
-       if (TEST_HARD_REG_BIT (reload_reg_used_in_input_addr[i], regno)
-           || TEST_HARD_REG_BIT (reload_reg_used_in_inpaddr_addr[i], regno)
-           || TEST_HARD_REG_BIT (reload_reg_used_in_input[i], regno)
-           || TEST_HARD_REG_BIT (reload_reg_used_in_op_addr, regno))
-         return 0;
-
-      return ! TEST_HARD_REG_BIT (reload_reg_used_in_other_addr, regno);
+      /* There is no reason to call this function for output reloads, thus
+        anything we'd put here wouldn't be tested.  So just abort.  */
+       abort ();
 
     case RELOAD_FOR_OPERAND_ADDRESS:
       /* Earlier reloads include RELOAD_FOR_OPADDR_ADDR reloads.  */