1 /* Copyright (C
) 2012-2014 Free Software Foundation
, Inc.
2 Contributed by ARM Ltd.
4 This file is part of GCC.
6 GCC is free software
; you can redistribute it and
/or modify it
7 under the terms of the GNU General Public License as published by
8 the Free Software Foundation
; either version
3, or (at your option
)
11 GCC is distributed in the hope that it will be useful
, but
12 WITHOUT ANY WARRANTY
; without even the implied warranty of
13 MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU
14 General Public License for more details.
16 You should have received a copy of the GNU General Public License
17 along with GCC
; see the file COPYING3. If not see
18 <http
://www.gnu.org
/licenses
/>.
*/
20 /* This is a list of ISA extentsions in AArch64.
22 Before using #include to read this file
, define a macro
:
24 AARCH64_OPT_EXTENSION(EXT_NAME
, FLAGS_ON
, FLAGS_OFF
)
26 EXT_NAME is the name of the extension
, represented as a string constant.
27 FLAGS_ON are the bitwise
-or of the features that the extension adds.
28 FLAGS_OFF are the bitwise
-or of the features that the extension removes.
*/
30 /* V8 Architecture Extensions.
31 This list currently contains example extensions for CPUs that implement
32 AArch64
, and therefore serves as a template for adding more CPUs in the
35 AARCH64_OPT_EXTENSION("fp", AARCH64_FL_FP
, AARCH64_FL_FPSIMD | AARCH64_FL_CRYPTO
)
36 AARCH64_OPT_EXTENSION("simd", AARCH64_FL_FPSIMD
, AARCH64_FL_SIMD | AARCH64_FL_CRYPTO
)
37 AARCH64_OPT_EXTENSION("crypto", AARCH64_FL_CRYPTO | AARCH64_FL_FPSIMD
, AARCH64_FL_CRYPTO
)
38 AARCH64_OPT_EXTENSION("crc", AARCH64_FL_CRC
, AARCH64_FL_CRC
)