invoke.texi: Document -mbitops for SH.
authorNaveen.H.S <naveen.hs@kpitcummins.com>
Fri, 4 Apr 2008 23:36:19 +0000 (23:36 +0000)
committerKaz Kojima <kkojima@gcc.gnu.org>
Fri, 4 Apr 2008 23:36:19 +0000 (23:36 +0000)
commit9eb3a0dd852a6a0de2c4849391024e7efc70922d
tree3cdfd635d78201d5b94a867241c320785815e499
parent97db009ce95362bc9c82a73557b79e64efbd0d1d
invoke.texi: Document -mbitops for SH.

* doc/invoke.texi: Document -mbitops for SH.
* config/sh/constraints.md (K03, K12, Sbv, Sbw): New constraints.
* config/sh/predicates.md (bitwise_memory_operand): New predicate.
* config/sh/sh.c (print_operand): Add %t operand code.
* config/sh/sh.h (GO_IF_LEGITIMATE_INDEX): Add condition for SH2A.
* config/sh/sh.md (*iorsi3_compact): Fix condition for SH2A.
(extendqisi2_compact): Add the alternative for SH2A 4-byte mov.b.
(extendqihi2): Likewise.
(movqi_i): Likewise.
(insv): Use bset, bclr and bst instructions for SH2A if possible.
(extv): Use bld instruction for SH2A if possible.
(extzv): Likewise.
(bclr_m2a, bclrmem_m2a, bset_m2a, bsetmem_m2a, bst_m2a, bld_m2a,
bldsign_m2a, bld_reg, *bld_regqi, band_m2a, bandreg_m2a,
bor_m2a, borreg_m2a, bxor_m2a, bxorreg_m2a): New insns.
(bset.b, bclr.b): Define peepholes.
* config/sh/sh.opt (mbitops): New option.

* gcc.target/sh/sh2a-band.c: New test.
* gcc.target/sh/sh2a-bclrmem.c: New test.
* gcc.target/sh/sh2a-bld.c: New test.
* gcc.target/sh/sh2a-bor.c: New test.
* gcc.target/sh/sh2a-bsetmem.c: New test.
* gcc.target/sh/sh2a-bxor.c: New test.

From-SVN: r133919
15 files changed:
gcc/ChangeLog
gcc/config/sh/constraints.md
gcc/config/sh/predicates.md
gcc/config/sh/sh.c
gcc/config/sh/sh.h
gcc/config/sh/sh.md
gcc/config/sh/sh.opt
gcc/doc/invoke.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/sh/sh2a-band.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sh/sh2a-bclrmem.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sh/sh2a-bld.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sh/sh2a-bor.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sh/sh2a-bsetmem.c [new file with mode: 0644]
gcc/testsuite/gcc.target/sh/sh2a-bxor.c [new file with mode: 0644]