summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSudakshina Das <sudi.das@arm.com>2018-11-06 12:13:45 +0000
committerSudakshina Das <sudi.das@arm.com>2018-11-06 12:13:45 +0000
commit0632eeea6eb1096fe7ddbd7f81bd74b360d1f511 (patch)
tree04e079b7c2f4b7f42a02cbd2bbdb0bb307a72212
parent715537181e9ba6ab371265fc4455d89533202fc5 (diff)
downloadbinutils-gdb-0632eeea6eb1096fe7ddbd7f81bd74b360d1f511.tar.gz
[BINUTILS, ARM] Add Armv8.5-A to select_arm_features and update macros.
This patch addresses the following 1) Adding ARMv8.5-A in select_arm_features. 2) Updating the feature macro so that the new ARM_EXT2_* features for Armv8.5-A are moved to ARM_AEXT2_V8_5A. *** opcodes/ChangeLog *** 2018-11-06 Sudakshina Das <sudi.das@arm.com> * arm-dis.c (select_arm_features): Update bfd_mach_arm_8 with Armv8.5-A. Remove reduntant ARM_EXT2_FP16_FML. *** include/ChangeLog *** 2018-11-06 Sudakshina Das <sudi.das@arm.com> * opcode/arm.h (ARM_ARCH_V8_5A): Move ARM_EXT2_PREDRES and ARM_EXT2_SB to ... (ARM_AEXT2_V8_5A): Here.
-rw-r--r--include/ChangeLog6
-rw-r--r--include/opcode/arm.h7
-rw-r--r--opcodes/ChangeLog5
-rw-r--r--opcodes/arm-dis.c10
4 files changed, 19 insertions, 9 deletions
diff --git a/include/ChangeLog b/include/ChangeLog
index f0ff0faaae4..124efb1775e 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,9 @@
+2018-11-06 Sudakshina Das <sudi.das@arm.com>
+
+ * opcode/arm.h (ARM_ARCH_V8_5A): Move ARM_EXT2_PREDRES and
+ ARM_EXT2_SB to ...
+ (ARM_AEXT2_V8_5A): Here.
+
2018-10-26 John Baldwin <jhb@FreeBSD.org>
* elf/common.h (AT_FREEBSD_HWCAP2): Define.
diff --git a/include/opcode/arm.h b/include/opcode/arm.h
index 71c430638b1..6f43abb3030 100644
--- a/include/opcode/arm.h
+++ b/include/opcode/arm.h
@@ -162,7 +162,8 @@
#define ARM_AEXT2_V8_2A (ARM_AEXT2_V8_1A | ARM_EXT2_V8_2A | ARM_EXT2_RAS)
#define ARM_AEXT2_V8_3A (ARM_AEXT2_V8_2A | ARM_EXT2_V8_3A)
#define ARM_AEXT2_V8_4A (ARM_AEXT2_V8_3A | ARM_EXT2_FP16_FML | ARM_EXT2_V8_4A)
-#define ARM_AEXT2_V8_5A (ARM_AEXT2_V8_4A | ARM_EXT2_V8_5A)
+#define ARM_AEXT2_V8_5A (ARM_AEXT2_V8_4A | ARM_EXT2_V8_5A | ARM_EXT2_SB \
+ | ARM_EXT2_PREDRES)
#define ARM_AEXT_V8M_BASE (ARM_AEXT_V6SM | ARM_EXT_DIV)
#define ARM_AEXT_V8M_MAIN ARM_AEXT_V7M
#define ARM_AEXT_V8M_MAIN_DSP ARM_AEXT_V7EM
@@ -297,9 +298,7 @@
#define ARM_ARCH_V8_4A ARM_FEATURE (ARM_AEXT_V8A, ARM_AEXT2_V8_4A, \
CRC_EXT_ARMV8 | FPU_NEON_EXT_RDMA \
| FPU_NEON_EXT_DOTPROD)
-#define ARM_ARCH_V8_5A ARM_FEATURE (ARM_AEXT_V8A, \
- ARM_AEXT2_V8_5A | ARM_EXT2_SB \
- | ARM_EXT2_PREDRES, \
+#define ARM_ARCH_V8_5A ARM_FEATURE (ARM_AEXT_V8A, ARM_AEXT2_V8_5A, \
CRC_EXT_ARMV8 | FPU_NEON_EXT_RDMA \
| FPU_NEON_EXT_DOTPROD)
#define ARM_ARCH_V8M_BASE ARM_FEATURE_CORE (ARM_AEXT_V8M_BASE, ARM_AEXT2_V8M)
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 5af52e6bc4d..bac6294ec1d 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,3 +1,8 @@
+2018-11-06 Sudakshina Das <sudi.das@arm.com>
+
+ * arm-dis.c (select_arm_features): Update bfd_mach_arm_8
+ with Armv8.5-A. Remove reduntant ARM_EXT2_FP16_FML.
+
2018-11-06 Alan Modra <amodra@gmail.com>
* ppc-opc.c (insert_arx, insert_ary, insert_rx, insert_ry, insert_ls),
diff --git a/opcodes/arm-dis.c b/opcodes/arm-dis.c
index f0b90510c60..8e6a37b0c67 100644
--- a/opcodes/arm-dis.c
+++ b/opcodes/arm-dis.c
@@ -6452,11 +6452,11 @@ select_arm_features (unsigned long mach,
case bfd_mach_arm_7EM: ARM_SET_FEATURES (ARM_ARCH_V7EM); break;
case bfd_mach_arm_8:
{
- /* Add bits for extensions that Armv8.4-A recognizes. */
- arm_feature_set armv8_4_ext_fset
- = ARM_FEATURE_CORE_HIGH (ARM_EXT2_FP16_INST | ARM_EXT2_FP16_FML);
- ARM_SET_FEATURES (ARM_ARCH_V8_4A);
- ARM_MERGE_FEATURE_SETS (arch_fset, arch_fset, armv8_4_ext_fset);
+ /* Add bits for extensions that Armv8.5-A recognizes. */
+ arm_feature_set armv8_5_ext_fset
+ = ARM_FEATURE_CORE_HIGH (ARM_EXT2_FP16_INST);
+ ARM_SET_FEATURES (ARM_ARCH_V8_5A);
+ ARM_MERGE_FEATURE_SETS (arch_fset, arch_fset, armv8_5_ext_fset);
break;
}
case bfd_mach_arm_8R: ARM_SET_FEATURES (ARM_ARCH_V8R); break;