diff options
author | Jakub Jelinek <jakub@redhat.com> | 2001-10-30 13:41:45 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2001-10-30 13:41:45 +0100 |
commit | 3d238248433054745e54777fc4c59d1bce67ee41 (patch) | |
tree | bf284af1d2de346c28438607b4461f75a47c178a /gcc/local-alloc.c | |
parent | 53fcdc7677776c3ccbe098ee4f8fe082cae5f28e (diff) | |
download | gcc-3d238248433054745e54777fc4c59d1bce67ee41.zip gcc-3d238248433054745e54777fc4c59d1bce67ee41.tar.gz gcc-3d238248433054745e54777fc4c59d1bce67ee41.tar.bz2 |
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
Diffstat (limited to 'gcc/local-alloc.c')
-rw-r--r-- | gcc/local-alloc.c | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/gcc/local-alloc.c b/gcc/local-alloc.c index 9945b45..7cee3f5 100644 --- a/gcc/local-alloc.c +++ b/gcc/local-alloc.c @@ -927,13 +927,9 @@ update_equiv_regs () /* cse sometimes generates function invariants, but doesn't put a REG_EQUAL note on the insn. Since this note would be redundant, - there's no point creating it earlier than here. Don't do this - for ASM_OPERANDS since eliminate_regs doesn't support it and - it serves no useful purpose. */ - if (! note && ! rtx_varies_p (src, 0) - && GET_CODE (src) != ASM_OPERANDS) - REG_NOTES (insn) - = note = gen_rtx_EXPR_LIST (REG_EQUAL, src, REG_NOTES (insn)); + there's no point creating it earlier than here. */ + if (! note && ! rtx_varies_p (src, 0)) + note = set_unique_reg_note (insn, REG_EQUAL, src); /* Don't bother considering a REG_EQUAL note containing an EXPR_LIST since it represents a function call */ |