aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Support/ARMAttributeParser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'llvm/lib/Support/ARMAttributeParser.cpp')
-rw-r--r--llvm/lib/Support/ARMAttributeParser.cpp26
1 files changed, 26 insertions, 0 deletions
diff --git a/llvm/lib/Support/ARMAttributeParser.cpp b/llvm/lib/Support/ARMAttributeParser.cpp
index 459691923af8..241cfb1eedbe 100644
--- a/llvm/lib/Support/ARMAttributeParser.cpp
+++ b/llvm/lib/Support/ARMAttributeParser.cpp
@@ -59,6 +59,10 @@ const ARMAttributeParser::DisplayHandler ARMAttributeParser::displayRoutines[] =
ATTRIBUTE_HANDLER(DSP_extension),
ATTRIBUTE_HANDLER(T2EE_use),
ATTRIBUTE_HANDLER(Virtualization_use),
+ ATTRIBUTE_HANDLER(PAC_extension),
+ ATTRIBUTE_HANDLER(BTI_extension),
+ ATTRIBUTE_HANDLER(PACRET_use),
+ ATTRIBUTE_HANDLER(BTI_use),
ATTRIBUTE_HANDLER(nodefaults),
};
@@ -350,6 +354,28 @@ Error ARMAttributeParser::Virtualization_use(AttrType tag) {
return parseStringAttribute("Virtualization_use", tag, makeArrayRef(strings));
}
+Error ARMAttributeParser::PAC_extension(ARMBuildAttrs::AttrType tag) {
+ static const char *strings[] = {"Not Permitted", "Permitted in NOP space",
+ "Permitted"};
+ return parseStringAttribute("PAC_extension", tag, makeArrayRef(strings));
+}
+
+Error ARMAttributeParser::BTI_extension(ARMBuildAttrs::AttrType tag) {
+ static const char *strings[] = {"Not Permitted", "Permitted in NOP space",
+ "Permitted"};
+ return parseStringAttribute("BTI_extension", tag, makeArrayRef(strings));
+}
+
+Error ARMAttributeParser::PACRET_use(ARMBuildAttrs::AttrType tag) {
+ static const char *strings[] = {"Not Used", "Used"};
+ return parseStringAttribute("PACRET_use", tag, makeArrayRef(strings));
+}
+
+Error ARMAttributeParser::BTI_use(ARMBuildAttrs::AttrType tag) {
+ static const char *strings[] = {"Not Used", "Used"};
+ return parseStringAttribute("BTI_use", tag, makeArrayRef(strings));
+}
+
Error ARMAttributeParser::nodefaults(AttrType tag) {
uint64_t value = de.getULEB128(cursor);
printAttribute(tag, value, "Unspecified Tags UNDEFINED");