[AArch64] PR target/69161: Don't use special predicate for CCmode comparisons in...
commit51bf9f9b59e17a033c2b008b8ef0e6c816e19b5b
authorktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 17 Feb 2016 13:42:35 +0000 (17 13:42 +0000)
committerktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>
Wed, 17 Feb 2016 13:42:35 +0000 (17 13:42 +0000)
treee0af4443979d7f6854a77a72f719f39a9d8f7c8b
parentff74dd5498d8dbadb2ff4a76c75afcf0b92ba14a
[AArch64] PR target/69161: Don't use special predicate for CCmode comparisons in expressions that require matching modes

PR target/69161
* config/aarch64/predicates.md (aarch64_comparison_operator_mode):
New predicate.
(aarch64_comparison_operator): Break overly long line into two.
(aarch64_comparison_operation): Likewise.
* config/aarch64/aarch64.md (cstorecc4): Use
aarch64_comparison_operator_mode instead of
aarch64_comparison_operator.
(cstore<mode>4): Likewise.
(aarch64_cstore<mode>): Likewise.
(*cstoresi_insn_uxtw): Likewise.
(cstore<mode>_neg): Likewise.
(*cstoresi_neg_uxtw): Likewise.

* gcc.c-torture/compile/pr69161.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@233496 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/aarch64/aarch64.md
gcc/config/aarch64/predicates.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/compile/pr69161.c [new file with mode: 0644]