summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Support/Dwarf.cpp
diff options
context:
space:
mode:
authorFrederic Riss <friss@apple.com>2014-09-04 19:39:20 +0000
committerFrederic Riss <friss@apple.com>2014-09-04 19:39:20 +0000
commit878065bb218dea18b7943a7b59a98050995200d9 (patch)
tree8458ed0edb1e5cb4d76ecd84a0e0e0f6d2fe16ca /llvm/lib/Support/Dwarf.cpp
parentebecb38d476823d766e0b7b4cb23037647df86be (diff)
downloadbcm5719-llvm-878065bb218dea18b7943a7b59a98050995200d9.tar.gz
bcm5719-llvm-878065bb218dea18b7943a7b59a98050995200d9.zip
[ dwarfdump ] Add symbolic dump of known DWARF attribute values.
Reviewed By: dblaikie Subscribers: llvm-commits Differential Revision: http://reviews.llvm.org/D5187 llvm-svn: 217186
Diffstat (limited to 'llvm/lib/Support/Dwarf.cpp')
-rw-r--r--llvm/lib/Support/Dwarf.cpp31
1 files changed, 31 insertions, 0 deletions
diff --git a/llvm/lib/Support/Dwarf.cpp b/llvm/lib/Support/Dwarf.cpp
index c9efa61afe6..a5a05778450 100644
--- a/llvm/lib/Support/Dwarf.cpp
+++ b/llvm/lib/Support/Dwarf.cpp
@@ -795,3 +795,34 @@ const char *llvm::dwarf::GDBIndexEntryLinkageString(GDBIndexEntryLinkage Linkage
}
llvm_unreachable("Unknown GDBIndexEntryLinkage value");
}
+
+const char *llvm::dwarf::AttributeValueString(uint16_t Attr, unsigned Val) {
+ switch (Attr) {
+ case DW_AT_accessibility:
+ return AccessibilityString(Val);
+ case DW_AT_virtuality:
+ return VirtualityString(Val);
+ case DW_AT_language:
+ return LanguageString(Val);
+ case DW_AT_encoding:
+ return AttributeEncodingString(Val);
+ case DW_AT_decimal_sign:
+ return DecimalSignString(Val);
+ case DW_AT_endianity:
+ return EndianityString(Val);
+ case DW_AT_visibility:
+ return VisibilityString(Val);
+ case DW_AT_identifier_case:
+ return CaseString(Val);
+ case DW_AT_calling_convention:
+ return ConventionString(Val);
+ case DW_AT_inline:
+ return InlineCodeString(Val);
+ case DW_AT_ordering:
+ return ArrayOrderString(Val);
+ case DW_AT_discr_value:
+ return DiscriminantString(Val);
+ }
+
+ return nullptr;
+}
OpenPOWER on IntegriCloud