diff options
author | Yufeng Zhang <yufeng.zhang@arm.com> | 2013-09-05 11:30:14 +0000 |
---|---|---|
committer | Yufeng Zhang <yufeng@gcc.gnu.org> | 2013-09-05 11:30:14 +0000 |
commit | 5922847b1c0a2d90468a1cc75b25b190a6035d97 (patch) | |
tree | f12a0247adb4c3108a079c1bde76934b75c80c9d | |
parent | 996746aa210bc2e21c573619b2575f4c075df326 (diff) | |
download | gcc-5922847b1c0a2d90468a1cc75b25b190a6035d97.zip gcc-5922847b1c0a2d90468a1cc75b25b190a6035d97.tar.gz gcc-5922847b1c0a2d90468a1cc75b25b190a6035d97.tar.bz2 |
[AArch64] Support the 'crc' extension in -march and -mcpu options.
gcc/
* config/aarch64/aarch64-option-extensions.def: Add
AARCH64_OPT_EXTENSION of 'crc'.
* config/aarch64/aarch64.h (AARCH64_FL_CRC): New define.
(AARCH64_ISA_CRC): Ditto.
* doc/invoke.texi (-march and -mcpu feature modifiers): Add
description of the CRC extension.
From-SVN: r202275
-rw-r--r-- | gcc/ChangeLog | 9 | ||||
-rw-r--r-- | gcc/config/aarch64/aarch64-option-extensions.def | 1 | ||||
-rw-r--r-- | gcc/config/aarch64/aarch64.h | 2 | ||||
-rw-r--r-- | gcc/doc/invoke.texi | 2 |
4 files changed, 14 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 8a5743b..e8a0764 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,12 @@ +2013-09-05 Yufeng Zhang <yufeng.zhang@arm.com> + + * config/aarch64/aarch64-option-extensions.def: Add + AARCH64_OPT_EXTENSION of 'crc'. + * config/aarch64/aarch64.h (AARCH64_FL_CRC): New define. + (AARCH64_ISA_CRC): Ditto. + * doc/invoke.texi (-march and -mcpu feature modifiers): Add + description of the CRC extension. + 2013-09-05 Alexander Ivchenko <alexander.ivchenko@intel.com> * config/rs6000/linux64.h: Define OPTION_BIONIC and OPTION_UCLIBC. diff --git a/gcc/config/aarch64/aarch64-option-extensions.def b/gcc/config/aarch64/aarch64-option-extensions.def index 58e8154..371e74c 100644 --- a/gcc/config/aarch64/aarch64-option-extensions.def +++ b/gcc/config/aarch64/aarch64-option-extensions.def @@ -35,3 +35,4 @@ AARCH64_OPT_EXTENSION("fp", AARCH64_FL_FP, AARCH64_FL_FPSIMD | AARCH64_FL_CRYPTO) AARCH64_OPT_EXTENSION("simd", AARCH64_FL_FPSIMD, AARCH64_FL_SIMD | AARCH64_FL_CRYPTO) AARCH64_OPT_EXTENSION("crypto", AARCH64_FL_CRYPTO | AARCH64_FL_FPSIMD, AARCH64_FL_CRYPTO) +AARCH64_OPT_EXTENSION("crc", AARCH64_FL_CRC, AARCH64_FL_CRC) diff --git a/gcc/config/aarch64/aarch64.h b/gcc/config/aarch64/aarch64.h index 0924269..d8012f8 100644 --- a/gcc/config/aarch64/aarch64.h +++ b/gcc/config/aarch64/aarch64.h @@ -158,6 +158,7 @@ #define AARCH64_FL_FP (1 << 1) /* Has FP. */ #define AARCH64_FL_CRYPTO (1 << 2) /* Has crypto. */ #define AARCH64_FL_SLOWMUL (1 << 3) /* A slow multiply core. */ +#define AARCH64_FL_CRC (1 << 4) /* Has CRC. */ /* Has FP and SIMD. */ #define AARCH64_FL_FPSIMD (AARCH64_FL_FP | AARCH64_FL_SIMD) @@ -170,6 +171,7 @@ /* Macros to test ISA flags. */ extern unsigned long aarch64_isa_flags; +#define AARCH64_ISA_CRC (aarch64_isa_flags & AARCH64_FL_CRC) #define AARCH64_ISA_CRYPTO (aarch64_isa_flags & AARCH64_FL_CRYPTO) #define AARCH64_ISA_FP (aarch64_isa_flags & AARCH64_FL_FP) #define AARCH64_ISA_SIMD (aarch64_isa_flags & AARCH64_FL_SIMD) diff --git a/gcc/doc/invoke.texi b/gcc/doc/invoke.texi index 9dfb4d7..4995a5d 100644 --- a/gcc/doc/invoke.texi +++ b/gcc/doc/invoke.texi @@ -11173,6 +11173,8 @@ Feature modifiers used with @option{-march} and @option{-mcpu} can be one the following: @table @samp +@item crc +Enable CRC extension. @item crypto Enable Crypto extension. This implies Advanced SIMD is enabled. @item fp |