[AArch64] Enable CCMP support for AArch64, PR64015 resolved
authorjiwang <jiwang@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 16 Jan 2015 11:48:00 +0000 (11:48 +0000)
committerjiwang <jiwang@138bc75d-0d04-0410-961f-82ee72b054a4>
Fri, 16 Jan 2015 11:48:00 +0000 (11:48 +0000)
commit636fb80b44afc7e6cb55660cae17777abb7952b9
tree27ea8ad4328db1388fa321a414f446c2caef54ef
parent6ad7895e5377f2049ca235f44ed74138b28faa5c
[AArch64] Enable CCMP support for AArch64, PR64015 resolved

gcc/
2015-01-16  Zhenqiang Chen  <zhenqiang.chen@arm.com>

PR target/64015
* ccmp.c (expand_ccmp_next): New function.
(expand_ccmp_expr_1, expand_ccmp_expr): Handle operand insn sequence
and compare insn sequence.
* config/aarch64/aarch64.c (aarch64_code_to_ccmode,
aarch64_gen_ccmp_first, aarch64_gen_ccmp_next): New functions.
(TARGET_GEN_CCMP_FIRST, TARGET_GEN_CCMP_NEXT): New MICRO.
* config/aarch64/aarch64.md (*ccmp_and): Changed to ccmp_and<mode>.
(*ccmp_ior): Changed to ccmp_ior<mode>.
(cmp<mode>): New pattern.
* doc/tm.texi (TARGET_GEN_CCMP_FIRST, TARGET_GEN_CCMP_NEXT): Update
parameters.
* target.def (gen_ccmp_first, gen_ccmp_next): Update parameters.

gcc/testsuite/
2015-01-16  Zhenqiang Chen <zhenqiang.chen@arm.com>

* gcc.dg/pr64015.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219723 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/ccmp.c
gcc/config/aarch64/aarch64.c
gcc/config/aarch64/aarch64.md
gcc/doc/tm.texi
gcc/target.def
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/pr64015.c [new file with mode: 0644]