diff options
author | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-10-28 16:26:25 +0000 |
---|---|---|
committer | rth <rth@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-10-28 16:26:25 +0000 |
commit | 89333dfeb60066c312c10707b3b3038944feb9c1 (patch) | |
tree | 06b58d61337f5b3e05ca35e21974ddc88d12f300 /gcc/cse.c | |
parent | 4b0a9554ad900aa505ed8774de9ac4d700c93234 (diff) | |
download | gcc-89333dfeb60066c312c10707b3b3038944feb9c1.tar.gz |
* cse.c (memory_extend_rtx): Remove.
(cse_main): Don't set it.
(cse_insn): Use a local buffer instead.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@89765 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/cse.c')
-rw-r--r-- | gcc/cse.c | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/gcc/cse.c b/gcc/cse.c index 13133998ca6..2b21852544b 100644 --- a/gcc/cse.c +++ b/gcc/cse.c @@ -400,12 +400,6 @@ static int recorded_label_ref; static int do_not_record; -#ifdef LOAD_EXTEND_OP - -/* Scratch rtl used when looking for load-extended copy of a MEM. */ -static rtx memory_extend_rtx; -#endif - /* canon_hash stores 1 in hash_arg_in_memory if it notices a reference to memory within the expression being hashed. */ @@ -5154,10 +5148,13 @@ cse_insn (rtx insn, rtx libcall_insn) && MEM_P (src) && ! do_not_record && LOAD_EXTEND_OP (mode) != UNKNOWN) { + struct rtx_def memory_extend_buf; + rtx memory_extend_rtx = &memory_extend_buf; enum machine_mode tmode; /* Set what we are trying to extend and the operation it might have been extended with. */ + memset (memory_extend_rtx, 0, sizeof(*memory_extend_rtx)); PUT_CODE (memory_extend_rtx, LOAD_EXTEND_OP (mode)); XEXP (memory_extend_rtx, 0) = src; @@ -6675,13 +6672,6 @@ cse_main (rtx f, int nregs, FILE *file) reg_eqv_table = xmalloc (nregs * sizeof (struct reg_eqv_elem)); -#ifdef LOAD_EXTEND_OP - - /* Allocate scratch rtl here. cse_insn will fill in the memory reference - and change the code and mode as appropriate. */ - memory_extend_rtx = gen_rtx_ZERO_EXTEND (VOIDmode, NULL_RTX); -#endif - /* Reset the counter indicating how many elements have been made thus far. */ n_elements_made = 0; |