diff options
author | J"orn Rennecke <amylaar@cygnus.co.uk> | 1998-05-12 19:28:01 +0000 |
---|---|---|
committer | Joern Rennecke <amylaar@gcc.gnu.org> | 1998-05-12 20:28:01 +0100 |
commit | 4117a96b0138514a300f79c3deb1b4145ea03e2a (patch) | |
tree | 2bea29eb121405070139331e590934bbe77162aa /gcc/reload1.c | |
parent | 4d3eb414211002db7af3142840b76c1f04f1b4c9 (diff) | |
download | gcc-4117a96b0138514a300f79c3deb1b4145ea03e2a.zip gcc-4117a96b0138514a300f79c3deb1b4145ea03e2a.tar.gz gcc-4117a96b0138514a300f79c3deb1b4145ea03e2a.tar.bz2 |
* reload1.c (gen_reload): Create REG_EQUIV notes.
From-SVN: r19703
Diffstat (limited to 'gcc/reload1.c')
-rw-r--r-- | gcc/reload1.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/gcc/reload1.c b/gcc/reload1.c index fe0c7b2..02b9087 100644 --- a/gcc/reload1.c +++ b/gcc/reload1.c @@ -7244,13 +7244,19 @@ gen_reload (out, in, opnum, type) its validity determination, i.e., the way it would after reload has completed. */ if (constrain_operands (code, 1)) - return insn; + { + /* Add a REG_EQUIV note so that find_equiv_reg can find it. */ + REG_NOTES (insn) + = gen_rtx (EXPR_LIST, REG_EQUIV, in, REG_NOTES (insn)); + return insn; + } } delete_insns_since (last); gen_reload (out, op1, opnum, type); - emit_insn (gen_add2_insn (out, op0)); + insn = emit_insn (gen_add2_insn (out, op0)); + REG_NOTES (insn) = gen_rtx (EXPR_LIST, REG_EQUIV, in, REG_NOTES (insn)); } #ifdef SECONDARY_MEMORY_NEEDED |