aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/config/tc-aarch64.c2
-rw-r--r--gas/doc/c-aarch64.texi3
-rw-r--r--include/opcode/ChangeLog6
-rw-r--r--include/opcode/aarch64.h2
5 files changed, 18 insertions, 0 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 1077066..b465923 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,3 +1,8 @@
+2015-11-27 Matthew Wahab <matthew.wahab@arm.com>
+
+ * config/tc-aarch64.c (aarch64_features): Add "fp16".
+ * doc/c-aarch64.texi (Architecture Extensions): Add "fp16".
+
2015-11-24 Christophe Monat <christophe.monat@st.com>
* config/tc-arm.c (move_or_literal_pool): Do not transform ldr
diff --git a/gas/config/tc-aarch64.c b/gas/config/tc-aarch64.c
index 0fd6443..d306710 100644
--- a/gas/config/tc-aarch64.c
+++ b/gas/config/tc-aarch64.c
@@ -7738,6 +7738,8 @@ static const struct aarch64_option_cpu_value_table aarch64_features[] = {
{"lor", AARCH64_FEATURE (AARCH64_FEATURE_LOR, 0)},
{"rdma", AARCH64_FEATURE (AARCH64_FEATURE_SIMD
| AARCH64_FEATURE_RDMA, 0)},
+ {"fp16", AARCH64_FEATURE (AARCH64_FEATURE_F16
+ | AARCH64_FEATURE_FP, 0)},
{NULL, AARCH64_ARCH_NONE}
};
diff --git a/gas/doc/c-aarch64.texi b/gas/doc/c-aarch64.texi
index bfd41c3..2717af2 100644
--- a/gas/doc/c-aarch64.texi
+++ b/gas/doc/c-aarch64.texi
@@ -142,6 +142,9 @@ automatically cause those extensions to be disabled.
@tab Enable Limited Ordering Regions extensions.
@item @code{rdma} @tab ARMv8-A @tab ARMv8-A or later
@tab Enable ARMv8.1 Advanced SIMD extensions. This implies @code{simd}.
+@item @code{fp16} @tab ARMv8.2-A @tab ARMv8.2-A or later
+ @tab Enable ARMv8.2 16-bit floating-point support. This implies
+ @code{fp}.
@end multitable
@node AArch64 Syntax
diff --git a/include/opcode/ChangeLog b/include/opcode/ChangeLog
index a682414..57200d6 100644
--- a/include/opcode/ChangeLog
+++ b/include/opcode/ChangeLog
@@ -1,3 +1,9 @@
+2015-11-27 Matthew Wahab <matthew.wahab@arm.com>
+
+ * aarch64.h (AARCH64_FEATURE_F16): New.
+ (AARCH64_ARCH_V8_2): Add AARCH64_FEATURE_F16 to ARMv8.2
+ features.
+
2015-11-20 Matthew Wahab <matthew.wahab@arm.com>
* aarch64.h (AARCH64_FEATURE_V8_1): New.
diff --git a/include/opcode/aarch64.h b/include/opcode/aarch64.h
index 9addf40..cc16f6f 100644
--- a/include/opcode/aarch64.h
+++ b/include/opcode/aarch64.h
@@ -48,6 +48,7 @@ typedef uint32_t aarch64_insn;
#define AARCH64_FEATURE_LOR 0x00400000 /* LOR instructions. */
#define AARCH64_FEATURE_RDMA 0x00800000 /* v8.1 SIMD instructions. */
#define AARCH64_FEATURE_V8_1 0x01000000 /* v8.1 features. */
+#define AARCH64_FEATURE_F16 0x01000000 /* v8.2 FP16 instructions. */
/* Architectures are the sum of the base and extensions. */
#define AARCH64_ARCH_V8 AARCH64_FEATURE (AARCH64_FEATURE_V8, \
@@ -63,6 +64,7 @@ typedef uint32_t aarch64_insn;
| AARCH64_FEATURE_RDMA)
#define AARCH64_ARCH_V8_2 AARCH64_FEATURE (AARCH64_FEATURE_V8, \
AARCH64_FEATURE_V8_2 \
+ | AARCH64_FEATURE_F16 \
| AARCH64_FEATURE_FP \
| AARCH64_FEATURE_SIMD \
| AARCH64_FEATURE_LSE \