PR target/9744
commit46b590a11bdd28eb5f00c5752617b710e04fbffc
authorrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 10 Jan 2014 15:12:03 +0000 (10 15:12 +0000)
committerrearnsha <rearnsha@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 10 Jan 2014 15:12:03 +0000 (10 15:12 +0000)
tree2c939e057b708acff0ccd49411ec2c820ae42945
parentd089210f015d9f65264fe03345f1bad93b6b9ea0
PR target/9744

gcc:
* aarch64-modes.def (CC_Zmode): New flags mode.
* aarch64.c (aarch64_select_cc_mode): Only allow NEG when the condition
represents an equality.
(aarch64_get_condition_code0): Handle CC_Zmode.
* aarch64.md (compare_neg<mode>): Restrict to equality operations.

gcc/testsuite:
* gcc.target/aarch64/cmn-neg.c: Use equality comparisons.
* gcc.target/aarch64/cmn-neg2.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206529 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/config/aarch64/aarch64-modes.def
gcc/config/aarch64/aarch64.c
gcc/config/aarch64/aarch64.md
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/aarch64/cmn-neg.c
gcc/testsuite/gcc.target/aarch64/cmn-neg2.c [copied from gcc/testsuite/gcc.target/aarch64/cmn-neg.c with 68% similarity]