rx.opt (mallow-string-insns): New option.
authorNick Clifton <nickc@redhat.com>
Wed, 15 Apr 2015 07:41:07 +0000 (07:41 +0000)
committerNick Clifton <nickc@gcc.gnu.org>
Wed, 15 Apr 2015 07:41:07 +0000 (07:41 +0000)
commite4614c187b7180754b6200412d5e3716c1df92a3
tree1dd41b6f817ea637b6089d9f0c0b92cb51f09798
parent984b20545fee1f42c758006b8144159319a8ecf7
rx.opt (mallow-string-insns): New option.

* config/rx/rx.opt (mallow-string-insns): New option.
* config/rx/rx.c (RX_BUILTIN_RMPA): Disable the use of this
builtin if string instructions are denied.
* config/rx/rx.h (TARGET_CPU_CPP_BUILTINS): Define
__RX_ALLOW_STRING_INSNS__ or __RX_DISALLOW_STRING_INSNS__, as
appropriate.
(ASM_SPEC): Pass -mno-allow-string-insns on to the assembler.
* config/rx/rx.md (movstr): Enable pattern only if string
instructions are allowed.
(rx_movstr, rx_strend, movmemsi, rx_movmem): Likewise.
(cmpstrnsi, cmpstrsi, rx_cmpstrn, rmpa): Likewise.
* config/rx/t-rx (MULTILIB_OPTIONS): Add mno-allow-string-insns.
(MULTILIB_DIRNAMES): Add no-strings.
* doc/invoke.texi: Document -mno-allow-string-insns.

* gcc.target/rx/builtins.c: Disable RMPA test if string
instructions are not allowed.

From-SVN: r222116
gcc/ChangeLog
gcc/config/rx/rx.c
gcc/config/rx/rx.h
gcc/config/rx/rx.md
gcc/config/rx/rx.opt
gcc/config/rx/t-rx
gcc/doc/invoke.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/rx/builtins.c