From 4ef6b367738305f40480ca01f33abdbc728ebcc4 Mon Sep 17 00:00:00 2001 From: Glen Nakamura Date: Sat, 7 Sep 2002 20:43:38 -0700 Subject: [PATCH] sched-deps.c (sched_analyze_insn): Make sure to add insn to reg_last->sets after flushing the dependency lists to... * sched-deps.c (sched_analyze_insn): Make sure to add insn to reg_last->sets after flushing the dependency lists to guarantee that subsequent clobbers will be dependent on it. From-SVN: r56930 --- gcc/ChangeLog | 18 ++++++++++++------ gcc/sched-deps.c | 3 +-- 2 files changed, 13 insertions(+), 8 deletions(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 3fa7ed4f3909..f4dd1ceb7114 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2002-09-07 Glen Nakamura + + * sched-deps.c (sched_analyze_insn): Make sure to add insn + to reg_last->sets after flushing the dependency lists to guarantee + that subsequent clobbers will be dependent on it. + 2002-09-07 Alan Modra * config/rs6000/linux64.h (ASM_PREFERRED_EH_DATA_FORMAT): Define. @@ -35,8 +41,8 @@ 2002-08-29 Rodney Brown - * doc/install.texi (Specific, alpha*-dec-osf*): Add "virtual - memory exhausted" workarounds. + * doc/install.texi (Specific, alpha*-dec-osf*): Add "virtual + memory exhausted" workarounds. 2002-08-29 John David Anglin @@ -58,10 +64,10 @@ 2002-08-23 David Edelsohn - * config/rs6000/rs6000.c (rs6000_select_section): Treat - DEFAULT_ABI == ABI_AIX like PIC. Test PIC & reloc for readonly - default. - (rs6000_unique_section): Likewise. + * config/rs6000/rs6000.c (rs6000_select_section): Treat + DEFAULT_ABI == ABI_AIX like PIC. Test PIC & reloc for readonly + default. + (rs6000_unique_section): Likewise. 2002-08-22 Jason Merrill diff --git a/gcc/sched-deps.c b/gcc/sched-deps.c index 5904f918e46a..f2f64d39669b 100644 --- a/gcc/sched-deps.c +++ b/gcc/sched-deps.c @@ -1118,8 +1118,6 @@ sched_analyze_insn (deps, x, insn, loop_notes) EXECUTE_IF_SET_IN_REG_SET (reg_pending_clobbers, 0, i, { struct deps_reg *reg_last = &deps->reg_last[i]; - add_dependence_list (insn, reg_last->sets, REG_DEP_OUTPUT); - add_dependence_list (insn, reg_last->uses, REG_DEP_ANTI); if (reg_last->uses_length > MAX_PENDING_LIST_LENGTH || reg_last->clobbers_length > MAX_PENDING_LIST_LENGTH) { @@ -1129,6 +1127,7 @@ sched_analyze_insn (deps, x, insn, loop_notes) REG_DEP_ANTI); add_dependence_list_and_free (insn, ®_last->clobbers, REG_DEP_OUTPUT); + reg_last->sets = alloc_INSN_LIST (insn, reg_last->sets); reg_last->clobbers_length = 0; reg_last->uses_length = 0; } -- 2.47.2