From 3d238248433054745e54777fc4c59d1bce67ee41 Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Tue, 30 Oct 2001 13:41:45 +0100 Subject: emit-rtl.c (set_unique_reg_note): Don't create REG_EQUAL or REG_EQUIV notes for ASM_OPERANDS. * emit-rtl.c (set_unique_reg_note): Don't create REG_EQUAL or REG_EQUIV notes for ASM_OPERANDS. Return the new note (if any). * rtl.h (set_unique_reg_note): Change return value. * gcse.c (try_replace_reg): Use set_unique_reg_note. * cse.c (cse_insn): Likewise. * expr.c (emit_move_insn): Likewise. * explow.c (force_reg): Likewise. * local-alloc (update_equiv_regs): Likewise. * loop.c (move_moveables, load_mems): Likewise. * reload (find_reloads): Likewise. * gcc.dg/20011029-2.c: New test. From-SVN: r46636 --- gcc/loop.c | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) (limited to 'gcc/loop.c') diff --git a/gcc/loop.c b/gcc/loop.c index baaa74b..8b2f8da 100644 --- a/gcc/loop.c +++ b/gcc/loop.c @@ -1831,9 +1831,9 @@ move_movables (loop, movables, threshold, insn_count) i1 = loop_insn_hoist (loop, seq); if (! find_reg_note (i1, REG_EQUAL, NULL_RTX)) - REG_NOTES (i1) - = gen_rtx_EXPR_LIST (m->is_equiv ? REG_EQUIV : REG_EQUAL, - m->set_src, REG_NOTES (i1)); + set_unique_reg_note (i1, + m->is_equiv ? REG_EQUIV : REG_EQUAL, + m->set_src); if (loop_dump_stream) fprintf (loop_dump_stream, " moved to %d", INSN_UID (i1)); @@ -1991,10 +1991,8 @@ move_movables (loop, movables, threshold, insn_count) i1 = loop_insn_hoist (loop, seq); if (! find_reg_note (i1, REG_EQUAL, NULL_RTX)) - REG_NOTES (i1) - = gen_rtx_EXPR_LIST ((m->is_equiv ? REG_EQUIV - : REG_EQUAL), - m->set_src, REG_NOTES (i1)); + set_unique_reg_note (i1, m->is_equiv ? REG_EQUIV + : REG_EQUAL, m->set_src); } else i1 = loop_insn_hoist (loop, PATTERN (p)); @@ -9136,9 +9134,7 @@ load_mems (loop) } if (const_equiv) - REG_NOTES (set) = gen_rtx_EXPR_LIST (REG_EQUAL, - copy_rtx (const_equiv->loc), - REG_NOTES (set)); + set_unique_reg_note (set, REG_EQUAL, copy_rtx (const_equiv->loc)); if (written) { -- cgit v1.1