From 3cb2346982399892eae36e660ffa7e77a27ee067 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Tue, 23 Mar 2021 12:49:48 -0700 Subject: [PATCH] [AArch64] Support .arch_extension pan This makes the behavior consistent with the GNU assembler. Reviewed By: phosek Differential Revision: https://reviews.llvm.org/D99209 --- llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp | 2 +- llvm/test/MC/AArch64/directive-arch_extension.s | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp b/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp index e495003..9141e78 100644 --- a/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp +++ b/llvm/lib/Target/AArch64/AsmParser/AArch64AsmParser.cpp @@ -2906,6 +2906,7 @@ static const struct Extension { {"mte", {AArch64::FeatureMTE}}, {"memtag", {AArch64::FeatureMTE}}, {"tlb-rmi", {AArch64::FeatureTLB_RMI}}, + {"pan", {AArch64::FeaturePAN}}, {"pan-rwv", {AArch64::FeaturePAN_RWV}}, {"ccpp", {AArch64::FeatureCCPP}}, {"rcpc", {AArch64::FeatureRCPC}}, @@ -2921,7 +2922,6 @@ static const struct Extension { {"pauth", {AArch64::FeaturePAuth}}, {"flagm", {AArch64::FeatureFlagM}}, // FIXME: Unsupported extensions - {"pan", {}}, {"lor", {}}, {"rdma", {}}, {"profile", {}}, diff --git a/llvm/test/MC/AArch64/directive-arch_extension.s b/llvm/test/MC/AArch64/directive-arch_extension.s index 8cf2acd..064c89a 100644 --- a/llvm/test/MC/AArch64/directive-arch_extension.s +++ b/llvm/test/MC/AArch64/directive-arch_extension.s @@ -56,6 +56,10 @@ irg x0, x1 tlbi vmalle1os // CHECK: tlbi vmalle1os +.arch_extension pan +mrs x0, pan +// CHECK: mrs x0, PAN + .arch_extension pan-rwv at s1e1wp, x2 // CHECK: at s1e1wp, x2 -- 2.7.4