From 73af8ed6b107040eb7488f6ec122cd05d5e2e903 Mon Sep 17 00:00:00 2001 From: Matthew Wahab Date: Fri, 11 Dec 2015 09:30:26 +0000 Subject: [AArch64][Patch 1/5] Support the ARMv8.2 Statistical Profiling Extension. The Statistical Profile extension included in the ARMv8.2 architecture adds a number of system registers and a new instruction. This patch set adds support for the extension to binutils, enabled when -march=armv8.2-a+profile is given. The patches in this series: - Add the new command line option and feature flags. - Add the new system registers. - Adjust the maximum number of aliases permitted for an instruction. - Add support for HINT aliases which take operands. - Add the new instruction, an alias of the HINT instruction. This patch adds the option "profile" to the permitted architecture extensions, disabling it by default. gas/ 2015-12-11 Matthew Wahab * config/tc-aarch64.c (aarch64_features): Add "profile". * doc/c-aarch64.texi (AArch64 Extensions): Add "profile". include/opcode/ 2015-12-11 Matthew Wahab * aarch64.h (AARCH64_FEATURE_PROFILE): New. Change-Id: If9bb4a9b69a264180f96f8ffaf10b15ced273699 --- gas/ChangeLog | 5 +++++ gas/config/tc-aarch64.c | 1 + gas/doc/c-aarch64.texi | 2 ++ 3 files changed, 8 insertions(+) (limited to 'gas') diff --git a/gas/ChangeLog b/gas/ChangeLog index aa6454e..2fcad8e 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,8 @@ +2015-12-11 Matthew Wahab + + * config/tc-aarch64.c (aarch64_features): Add "profile". + * doc/c-aarch64.texi (AArch64 Extensions): Add "profile". + 2015-12-10 Matthew Wahab * config/tc-aarch64.c (parse_sys_ins_reg): Add check of diff --git a/gas/config/tc-aarch64.c b/gas/config/tc-aarch64.c index bb2f228..2f115ec 100644 --- a/gas/config/tc-aarch64.c +++ b/gas/config/tc-aarch64.c @@ -7744,6 +7744,7 @@ static const struct aarch64_option_cpu_value_table aarch64_features[] = { | AARCH64_FEATURE_RDMA, 0)}, {"fp16", AARCH64_FEATURE (AARCH64_FEATURE_F16 | AARCH64_FEATURE_FP, 0)}, + {"profile", AARCH64_FEATURE (AARCH64_FEATURE_PROFILE, 0)}, {NULL, AARCH64_ARCH_NONE} }; diff --git a/gas/doc/c-aarch64.texi b/gas/doc/c-aarch64.texi index 363366a..cba768d 100644 --- a/gas/doc/c-aarch64.texi +++ b/gas/doc/c-aarch64.texi @@ -145,6 +145,8 @@ automatically cause those extensions to be disabled. @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}. +@item @code{profile} @tab ARMv8.2-A @tab No + @tab Enable statistical profiling extensions. @end multitable @node AArch64 Syntax -- cgit v1.1