aboutsummaryrefslogtreecommitdiff
path: root/gcc/reload1.c
diff options
context:
space:
mode:
authorBernd Schmidt <crux@pool.informatik.rwth-aachen.de>1998-10-02 04:21:20 -0600
committerJeff Law <law@gcc.gnu.org>1998-10-02 04:21:20 -0600
commit34f89b5f682060e18cc4ba8dfaba8be1d309d5d3 (patch)
treecc757909a43c13cae9d06d36541edf2dd5023758 /gcc/reload1.c
parent4afb3646a5d46f24202d139f7c58748daab18ff6 (diff)
downloadgcc-34f89b5f682060e18cc4ba8dfaba8be1d309d5d3.zip
gcc-34f89b5f682060e18cc4ba8dfaba8be1d309d5d3.tar.gz
gcc-34f89b5f682060e18cc4ba8dfaba8be1d309d5d3.tar.bz2
global.c (global_alloc): Delete code to manage the scratch_list.
* global.c (global_alloc): Delete code to manage the scratch_list. * local-alloc.c (qty_scratch_rtx): Delete. (scratch_block): Delete. (scratch_list): Delete. (scratch_list_length): Delete. (scratch_index): Delete. (alloc_qty_for_scratch): Delete. (local-alloc): Update initialization of max_qty. Delete code to manage the scratch list. Delete code to allocate/initialize qty_scratch_rtx. (block_alloc): Don't allocate quantities for scratches. Delete code to manage the scratch list. * regs.h (scratch_list): Delete declaration. (scratch_block): Delete declaration. (scratch_list_length): Delete declaration. * reload1.c (reload): Delete code to manage the scratch list. (spill_hard_reg): Likewise. (mark_scratch_live): Delete. From-SVN: r22751
Diffstat (limited to 'gcc/reload1.c')
-rw-r--r--gcc/reload1.c53
1 files changed, 0 insertions, 53 deletions
diff --git a/gcc/reload1.c b/gcc/reload1.c
index 1233722..93745e1 100644
--- a/gcc/reload1.c
+++ b/gcc/reload1.c
@@ -364,7 +364,6 @@ static int new_spill_reg PROTO((int, int, int *, int *, int,
FILE *));
static void delete_dead_insn PROTO((rtx));
static void alter_reg PROTO((int, int));
-static void mark_scratch_live PROTO((rtx));
static void set_label_offsets PROTO((rtx, rtx, int));
static int eliminate_regs_in_insn PROTO((rtx, int));
static void mark_not_eliminable PROTO((rtx, rtx));
@@ -645,10 +644,6 @@ reload (first, global, dumpfile)
regs_ever_live[i] = 1;
}
- for (i = 0; i < scratch_list_length; i++)
- if (scratch_list[i])
- mark_scratch_live (scratch_list[i]);
-
/* Make sure that the last insn in the chain
is not something that needs reloading. */
emit_note (NULL_PTR, NOTE_INSN_DELETED);
@@ -1388,13 +1383,6 @@ reload (first, global, dumpfile)
if (real_at_ptr)
free (real_at_ptr);
- if (scratch_list)
- free (scratch_list);
- scratch_list = 0;
- if (scratch_block)
- free (scratch_block);
- scratch_block = 0;
-
free (reg_equiv_constant);
free (reg_equiv_memory_loc);
free (reg_equiv_mem);
@@ -2687,20 +2675,6 @@ mark_home_live (regno)
while (i < lim)
regs_ever_live[i++] = 1;
}
-
-/* Mark the registers used in SCRATCH as being live. */
-
-static void
-mark_scratch_live (scratch)
- rtx scratch;
-{
- register int i;
- int regno = REGNO (scratch);
- int lim = regno + HARD_REGNO_NREGS (regno, GET_MODE (scratch));
-
- for (i = regno; i < lim; i++)
- regs_ever_live[i] = 1;
-}
/* This function handles the tracking of elimination offsets around branches.
@@ -3824,33 +3798,6 @@ spill_hard_reg (regno, global, dumpfile, cant_eliminate)
i, reg_renumber[i]);
}
}
- for (i = 0; i < scratch_list_length; i++)
- {
- if (scratch_list[i]
- && regno >= REGNO (scratch_list[i])
- && regno < REGNO (scratch_list[i])
- + HARD_REGNO_NREGS (REGNO (scratch_list[i]),
- GET_MODE (scratch_list[i])))
- {
- if (! cant_eliminate && basic_block_needs[0]
- && ! basic_block_needs[(int) class][scratch_block[i]])
- {
- enum reg_class *p;
-
- for (p = reg_class_superclasses[(int) class];
- *p != LIM_REG_CLASSES; p++)
- if (basic_block_needs[(int) *p][scratch_block[i]] > 0)
- break;
-
- if (*p == LIM_REG_CLASSES)
- continue;
- }
- PUT_CODE (scratch_list[i], SCRATCH);
- scratch_list[i] = 0;
- something_changed = 1;
- continue;
- }
- }
return something_changed;
}