summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorolegendo <olegendo@138bc75d-0d04-0410-961f-82ee72b054a4>2015-01-08 11:28:22 +0000
committerolegendo <olegendo@138bc75d-0d04-0410-961f-82ee72b054a4>2015-01-08 11:28:22 +0000
commitf07efc97c65a4e74d0c2986e12adc1905077b8ef (patch)
tree9aae0db66d8439be0ab02ccb57de9b9aa226674f
parent3795ffe43a169f71ba46d67299d4b4e1fd00e42e (diff)
downloadgcc-f07efc97c65a4e74d0c2986e12adc1905077b8ef.tar.gz
gcc/
* config/sh/sh-mem.cc: Use constant as second operand when emitting tstsi_t insns. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219342 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r--gcc/ChangeLog5
-rw-r--r--gcc/config/sh/sh-mem.cc8
2 files changed, 9 insertions, 4 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2d5fcb383df..bee5f1e908e 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,5 +1,10 @@
2015-01-08 Oleg Endo <olegendo@gcc.gnu.org>
+ * config/sh/sh-mem.cc: Use constant as second operand when emitting
+ tstsi_t insns.
+
+2015-01-08 Oleg Endo <olegendo@gcc.gnu.org>
+
PR target/55212
* config/sh/sh.md (*addsi3_compact): Emit reg-reg copy instead of
constant load if constant operand fits into I08.
diff --git a/gcc/config/sh/sh-mem.cc b/gcc/config/sh/sh-mem.cc
index 3d61c2adc81..7d170af30f1 100644
--- a/gcc/config/sh/sh-mem.cc
+++ b/gcc/config/sh/sh-mem.cc
@@ -228,7 +228,7 @@ sh_expand_cmpstr (rtx *operands)
if (align < 4)
{
emit_insn (gen_iorsi3 (tmp1, s1_addr, s2_addr));
- emit_insn (gen_tstsi_t (GEN_INT (3), tmp1));
+ emit_insn (gen_tstsi_t (tmp1, GEN_INT (3)));
jump = emit_jump_insn (gen_branch_false (L_loop_byte));
add_int_reg_note (jump, REG_BR_PROB, prob_likely);
}
@@ -373,7 +373,7 @@ sh_expand_cmpnstr (rtx *operands)
if (align < 4)
{
emit_insn (gen_iorsi3 (tmp1, s1_addr, s2_addr));
- emit_insn (gen_tstsi_t (GEN_INT (3), tmp1));
+ emit_insn (gen_tstsi_t (tmp1, GEN_INT (3)));
jump = emit_jump_insn (gen_branch_false (L_loop_byte));
add_int_reg_note (jump, REG_BR_PROB, prob_likely);
}
@@ -581,7 +581,7 @@ sh_expand_strlen (rtx *operands)
if (align < 4)
{
- emit_insn (gen_tstsi_t (GEN_INT (3), current_addr));
+ emit_insn (gen_tstsi_t (current_addr, GEN_INT (3)));
jump = emit_jump_insn (gen_branch_false (L_loop_byte));
add_int_reg_note (jump, REG_BR_PROB, prob_likely);
}
@@ -673,7 +673,7 @@ sh_expand_setmem (rtx *operands)
if (align < 4)
{
- emit_insn (gen_tstsi_t (GEN_INT (3), dest_addr));
+ emit_insn (gen_tstsi_t (dest_addr, GEN_INT (3)));
jump = emit_jump_insn (gen_branch_false (L_loop_byte));
add_int_reg_note (jump, REG_BR_PROB, prob_likely);
}