diff options
author | Segher Boessenkool <segher@kernel.crashing.org> | 2014-12-02 00:48:26 +0100 |
---|---|---|
committer | Segher Boessenkool <segher@gcc.gnu.org> | 2014-12-02 00:48:26 +0100 |
commit | 14f2df344a8b68da0bd31e6a8201ae293b55d499 (patch) | |
tree | 072d32325ff0168b19ec1f32044daa1b9cd6c584 /gcc/combine.c | |
parent | dd400a36272b31b5d7003fd66a9fbcf3ec2393d0 (diff) | |
download | gcc-14f2df344a8b68da0bd31e6a8201ae293b55d499.zip gcc-14f2df344a8b68da0bd31e6a8201ae293b55d499.tar.gz gcc-14f2df344a8b68da0bd31e6a8201ae293b55d499.tar.bz2 |
re PR rtl-optimization/59278 (combine does not replace matched insn)
PR rtl-optimization/59278
combine (reg_dead_at_p): Consider REG_UNUSED notes.
From-SVN: r218250
Diffstat (limited to 'gcc/combine.c')
-rw-r--r-- | gcc/combine.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/combine.c b/gcc/combine.c index f471920..63c1e4f 100644 --- a/gcc/combine.c +++ b/gcc/combine.c @@ -12990,6 +12990,9 @@ reg_dead_at_p (rtx reg, rtx_insn *insn) { if (INSN_P (insn)) { + if (find_regno_note (insn, REG_UNUSED, reg_dead_regno)) + return 1; + note_stores (PATTERN (insn), reg_dead_at_p_1, NULL); if (reg_dead_flag) return reg_dead_flag == 1 ? 1 : 0; |