From d27c8bec6f0f69fc6e98507ceabbfb10cd8ba0f0 Mon Sep 17 00:00:00 2001 From: Kaz Kojima Date: Tue, 17 Jan 2017 04:07:51 +0000 Subject: [PATCH] re PR target/78633 ([SH] libgcc/fp-bit.c:944:1: error: invalid rtl sharing found in the insn) PR target/78633 * config/sh/sh.md (cmpeqsi_t+1): Call copy_rtx to avoid invalid RTL sharing. From-SVN: r244516 --- gcc/ChangeLog | 6 ++++++ gcc/config/sh/sh.md | 3 ++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 073b53ee843..1feb9368121 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2017-01-17 Kaz Kojima + + PR target/78633 + * config/sh/sh.md (cmpeqsi_t+1): Call copy_rtx to avoid invalid + RTL sharing. + 2017-01-17 Alan Modra PR target/79066 diff --git a/gcc/config/sh/sh.md b/gcc/config/sh/sh.md index 11576f48437..2645fca4738 100644 --- a/gcc/config/sh/sh.md +++ b/gcc/config/sh/sh.md @@ -858,7 +858,8 @@ operands of the tstsi_t insn, which is generally the case. */ if (dump_file) fprintf (dump_file, "cmpeqsi_t: replacing with tstsi_t\n"); - emit_insn (gen_tstsi_t (XEXP (op.set_src, 0), XEXP (op.set_src, 1))); + emit_insn (gen_tstsi_t (copy_rtx (XEXP (op.set_src, 0)), + copy_rtx (XEXP (op.set_src, 1)))); DONE; } -- 2.30.2