re PR target/49263 (SH Target: underutilized "TST #imm, R0" instruction)
authorOleg Endo <oleg.endo@t-online.de>
Sat, 15 Oct 2011 02:32:53 +0000 (02:32 +0000)
committerKaz Kojima <kkojima@gcc.gnu.org>
Sat, 15 Oct 2011 02:32:53 +0000 (02:32 +0000)
commit6ff9d29412643e24f930933526a837238227c68d
treeac691d12707f29a7d4e513210d069f96be3bfa3a
parent94a39b90ce90b6da1069fe3d7c0360571e73ffdc
re PR target/49263 (SH Target: underutilized "TST #imm, R0" instruction)

PR target/49263
* config/sh/sh.h (ZERO_EXTRACT_ANDMASK): New macro.
* config/sh/sh.c (sh_rtx_costs): Add test instruction case.
* config/sh/sh.md (tstsi_t): Name existing insn.  Make inner
and instruction commutative.
(tsthi_t, tstqi_t, tstqi_t_zero, tstsi_t_and_not,
tstsi_t_zero_extract_eq, tstsi_t_zero_extract_xor,
tstsi_t_zero_extract_subreg_xor_little,
tstsi_t_zero_extract_subreg_xor_big): New insns.
(*movsicc_t_false, *movsicc_t_true): Replace space with tab in
asm output.
(*andsi_compact): Reorder alternatives so that K08 is considered
first.
* gcc.target/sh/pr49263.c: New.

From-SVN: r180020
gcc/ChangeLog
gcc/config/sh/sh.c
gcc/config/sh/sh.h
gcc/config/sh/sh.md
gcc/testsuite/ChangeLog