diff options
author | Jiong Wang <jiong.wang@arm.com> | 2016-02-19 14:27:23 +0000 |
---|---|---|
committer | Jiong Wang <jiong.wang@arm.com> | 2016-02-19 14:27:23 +0000 |
commit | b8ec4e871ef7650b852df9956841ee414766de59 (patch) | |
tree | 547744178ef3b8f81eed64a88259991e6f692a1a /gas/config | |
parent | 3be64886b5cd7e877d8783a53b81e2c6f7d01307 (diff) | |
download | fsf-binutils-gdb-b8ec4e871ef7650b852df9956841ee414766de59.zip fsf-binutils-gdb-b8ec4e871ef7650b852df9956841ee414766de59.tar.gz fsf-binutils-gdb-b8ec4e871ef7650b852df9956841ee414766de59.tar.bz2 |
[ARM] Add FP16 feature extension for ARMv8.2 architecture
include/
* opcode/arm.h (ARM_EXT2_FP16_INSN): New.
gas/
* config/tc-arm.c (arm_ext_fp16): New.
(arm_extensions): New entry for "fp16".
Diffstat (limited to 'gas/config')
-rw-r--r-- | gas/config/tc-arm.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/gas/config/tc-arm.c b/gas/config/tc-arm.c index be6436e..1917441 100644 --- a/gas/config/tc-arm.c +++ b/gas/config/tc-arm.c @@ -216,6 +216,9 @@ static const arm_feature_set arm_ext_atomics = ARM_FEATURE_CORE_HIGH (ARM_EXT2_ATOMICS); static const arm_feature_set arm_ext_v8_2 = ARM_FEATURE_CORE_HIGH (ARM_EXT2_V8_2A); +/* FP16 instructions. */ +static const arm_feature_set arm_ext_fp16 = + ARM_FEATURE_CORE_HIGH (ARM_EXT2_FP16_INST); static const arm_feature_set arm_arch_any = ARM_ANY; static const arm_feature_set arm_arch_full = ARM_FEATURE (-1, -1, -1); @@ -25068,6 +25071,9 @@ static const struct arm_option_extension_value_table arm_extensions[] = ARM_FEATURE_CORE_LOW (ARM_EXT_V8)), ARM_EXT_OPT ("fp", FPU_ARCH_VFP_ARMV8, ARM_FEATURE_COPROC (FPU_VFP_ARMV8), ARM_FEATURE_CORE_LOW (ARM_EXT_V8)), + ARM_EXT_OPT ("fp16", ARM_FEATURE_CORE_HIGH (ARM_EXT2_FP16_INST), + ARM_FEATURE_CORE_HIGH (ARM_EXT2_FP16_INST), + ARM_ARCH_V8_2A), ARM_EXT_OPT ("idiv", ARM_FEATURE_CORE_LOW (ARM_EXT_ADIV | ARM_EXT_DIV), ARM_FEATURE_CORE_LOW (ARM_EXT_ADIV | ARM_EXT_DIV), ARM_FEATURE_CORE_LOW (ARM_EXT_V7A | ARM_EXT_V7R)), |