diff options
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/cse.c | 16 |
2 files changed, 9 insertions, 13 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 37eafb8..5277f53 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2004-10-28 Richard Henderson <rth@redhat.com> + + * cse.c (memory_extend_rtx): Remove. + (cse_main): Don't set it. + (cse_insn): Use a local buffer instead. + 2004-10-28 Andreas Krebbel <krebbel1@de.ibm.com> * profile.c (branch_prob): Call to init_edge_profiler added. @@ -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; |