]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/Makefile.in
[gcc/]
authorktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 19 Dec 2013 17:55:38 +0000 (17:55 +0000)
committerktkachov <ktkachov@138bc75d-0d04-0410-961f-82ee72b054a4>
Thu, 19 Dec 2013 17:55:38 +0000 (17:55 +0000)
commit2a0c73f2467c12226f584db5fc85592011a37155
tree5dbc4d790863ae940c88cbba1311205ba3131028
parentd0862f78b8a71728b4537c67ed5102c9aa596092
[gcc/]
2013-12-19  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* Makefile.in (TEXI_GCC_FILES): Add arm-acle-intrinsics.texi.
* config.gcc (extra_headers): Add arm_acle.h.
* config/arm/arm.c (FL_CRC32): Define.
(arm_have_crc): Likewise.
(arm_option_override): Set arm_have_crc.
(arm_builtins): Add CRC32 builtins.
(bdesc_2arg): Likewise.
(arm_init_crc32_builtins): New function.
(arm_init_builtins): Initialise CRC32 builtins.
(arm_file_start): Handle architecture extensions.
* config/arm/arm.h (TARGET_CPU_CPP_BUILTINS): Define __ARM_FEATURE_CRC32.
Define __ARM_32BIT_STATE.
(TARGET_CRC32): Define.
* config/arm/arm-arches.def: Add armv8-a+crc.
* config/arm/arm-tables.opt: Regenerate.
* config/arm/arm.md (type): Add crc.
(<crc_variant>): New insn.
* config/arm/arm_acle.h: New file.
* config/arm/iterators.md (CRC): New int iterator.
(crc_variant, crc_mode): New int attributes.
* confg/arm/unspecs.md (UNSPEC_CRC32B, UNSPEC_CRC32H, UNSPEC_CRC32W,
UNSPEC_CRC32CB, UNSPEC_CRC32CH, UNSPEC_CRC32CW): New unspecs.
* doc/invoke.texi: Document -march=armv8-a+crc option.
* doc/extend.texi: Document ACLE intrinsics.

[gcc/testsuite/]
2013-12-19  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

* lib/target-supports.exp (add_options_for_arm_crc): New procedure.
(check_effective_target_arm_crc_ok_nocache): Likewise.
(check_effective_target_arm_crc_ok): Likewise.
* gcc.target/arm/acle/: New directory.
* gcc.target/arm/acle/acle.exp: New.
* gcc.target/arm/acle/crc32b.c: New test.
* gcc.target/arm/acle/crc32h.c: Likewise.
* gcc.target/arm/acle/crc32w.c: Likewise.
* gcc.target/arm/acle/crc32d.c: Likewise.
* gcc.target/arm/acle/crc32cb.c: Likewise.
* gcc.target/arm/acle/crc32ch.c: Likewise.
* gcc.target/arm/acle/crc32cw.c: Likewise.
* gcc.target/arm/acle/crc32cd.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206128 138bc75d-0d04-0410-961f-82ee72b054a4
26 files changed:
gcc/ChangeLog
gcc/Makefile.in
gcc/config.gcc
gcc/config/arm/arm-arches.def
gcc/config/arm/arm-tables.opt
gcc/config/arm/arm.c
gcc/config/arm/arm.h
gcc/config/arm/arm.md
gcc/config/arm/arm_acle.h [new file with mode: 0644]
gcc/config/arm/iterators.md
gcc/config/arm/types.md
gcc/config/arm/unspecs.md
gcc/doc/arm-acle-intrinsics.texi [new file with mode: 0644]
gcc/doc/extend.texi
gcc/doc/invoke.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.target/arm/acle/acle.exp [new file with mode: 0644]
gcc/testsuite/gcc.target/arm/acle/crc32b.c [new file with mode: 0644]
gcc/testsuite/gcc.target/arm/acle/crc32cb.c [new file with mode: 0644]
gcc/testsuite/gcc.target/arm/acle/crc32cd.c [new file with mode: 0644]
gcc/testsuite/gcc.target/arm/acle/crc32ch.c [new file with mode: 0644]
gcc/testsuite/gcc.target/arm/acle/crc32cw.c [new file with mode: 0644]
gcc/testsuite/gcc.target/arm/acle/crc32d.c [new file with mode: 0644]
gcc/testsuite/gcc.target/arm/acle/crc32h.c [new file with mode: 0644]
gcc/testsuite/gcc.target/arm/acle/crc32w.c [new file with mode: 0644]
gcc/testsuite/lib/target-supports.exp