summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/sched-deps.c9
2 files changed, 11 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 72a1a180c77..40e955426d5 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2002-06-07 Jeffrey Law <law@redhat.com>
+
+ * sched-deps.c (free_deps): Avoid calling free_INSN_LIST_list
+ on empty lists.
+
2002-06-07 H.J. Lu (hjl@gnu.org)
* configure.in: Add --enable-__cxa_atexit.
diff --git a/gcc/sched-deps.c b/gcc/sched-deps.c
index ec18f9d1973..644f1bdbd1f 100644
--- a/gcc/sched-deps.c
+++ b/gcc/sched-deps.c
@@ -1508,9 +1508,12 @@ free_deps (deps)
EXECUTE_IF_SET_IN_REG_SET (&deps->reg_last_in_use, 0, i,
{
struct deps_reg *reg_last = &deps->reg_last[i];
- free_INSN_LIST_list (&reg_last->uses);
- free_INSN_LIST_list (&reg_last->sets);
- free_INSN_LIST_list (&reg_last->clobbers);
+ if (reg_last->uses)
+ free_INSN_LIST_list (&reg_last->uses);
+ if (reg_last->sets)
+ free_INSN_LIST_list (&reg_last->sets);
+ if (reg_last->clobbers)
+ free_INSN_LIST_list (&reg_last->clobbers);
});
CLEAR_REG_SET (&deps->reg_last_in_use);
OpenPOWER on IntegriCloud