[AArch64] Add ARMv8.2-A Statistical Profiling Extension
authorOliver Stannard <oliver.stannard@arm.com>
Tue, 1 Dec 2015 10:48:51 +0000 (10:48 +0000)
committerOliver Stannard <oliver.stannard@arm.com>
Tue, 1 Dec 2015 10:48:51 +0000 (10:48 +0000)
commitce8e2a0d91724b07d3a262c6005e5705a3b7837e
treeb7636cd2c4b14e5b041cd320fcbf0d7119c10e85
parent27fff2c5ff6be081149b7e72ff8e667cb423be7d
[AArch64] Add ARMv8.2-A Statistical Profiling Extension

The Statistical Profiling Extension is an optional extension to
ARMv8.2-A. Since it is an optional extension, I have added the
FeatureSPE subtarget feature to control it. The assembler-visible parts
of this extension are the new "psb csync" instruction, which is
equivalent to "hint #17", and a number of system registers.

Differential Revision: http://reviews.llvm.org/D15021

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@254401 91177308-0d34-0410-b5e6-96231b3b80d8
12 files changed:
lib/Target/AArch64/AArch64.td
lib/Target/AArch64/AArch64InstrFormats.td
lib/Target/AArch64/AArch64InstrInfo.td
lib/Target/AArch64/AArch64Subtarget.h
lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp
lib/Target/AArch64/InstPrinter/AArch64InstPrinter.cpp
lib/Target/AArch64/InstPrinter/AArch64InstPrinter.h
lib/Target/AArch64/Utils/AArch64BaseInfo.cpp
lib/Target/AArch64/Utils/AArch64BaseInfo.h
test/MC/AArch64/armv8.2a-statistical-profiling.s [new file with mode: 0644]
test/MC/Disassembler/AArch64/armv8.2a-statistical-profiling.txt [new file with mode: 0644]
utils/TableGen/AsmWriterEmitter.cpp