diff options
author | Adrian Prantl <aprantl@apple.com> | 2019-10-29 09:20:14 -0700 |
---|---|---|
committer | Adrian Prantl <aprantl@apple.com> | 2019-10-29 13:44:06 -0700 |
commit | f919be336583349d883ba0dfdb3b2479a190b67c (patch) | |
tree | 8abf8bb775e050414bcd735d6702bfeb00418637 /llvm/lib/BinaryFormat/Dwarf.cpp | |
parent | 3260fa2cb09b78ad55e91d95a522d9dc455575f0 (diff) | |
download | bcm5719-llvm-f919be336583349d883ba0dfdb3b2479a190b67c.tar.gz bcm5719-llvm-f919be336583349d883ba0dfdb3b2479a190b67c.zip |
[DWARF5] Added support for deleted C++ special member functions.
This patch adds support for deleted C++ special member functions in
clang and llvm. Also added Defaulted member encodings for future
support for defaulted member functions.
Patch by Sourabh Singh Tomar!
Differential Revision: https://reviews.llvm.org/D69215
Diffstat (limited to 'llvm/lib/BinaryFormat/Dwarf.cpp')
-rw-r--r-- | llvm/lib/BinaryFormat/Dwarf.cpp | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/llvm/lib/BinaryFormat/Dwarf.cpp b/llvm/lib/BinaryFormat/Dwarf.cpp index d06cccdf0df..9ca3317418c 100644 --- a/llvm/lib/BinaryFormat/Dwarf.cpp +++ b/llvm/lib/BinaryFormat/Dwarf.cpp @@ -274,6 +274,19 @@ StringRef llvm::dwarf::AccessibilityString(unsigned Access) { return StringRef(); } +StringRef llvm::dwarf::DefaultedMemberString(unsigned DefaultedEncodings) { + switch (DefaultedEncodings) { + // Defaulted Member Encodings codes + case DW_DEFAULTED_no: + return "DW_DEFAULTED_no"; + case DW_DEFAULTED_in_class: + return "DW_DEFAULTED_in_class"; + case DW_DEFAULTED_out_of_class: + return "DW_DEFAULTED_out_of_class"; + } + return StringRef(); +} + StringRef llvm::dwarf::VisibilityString(unsigned Visibility) { switch (Visibility) { case DW_VIS_local: @@ -615,6 +628,8 @@ StringRef llvm::dwarf::AttributeValueString(uint16_t Attr, unsigned Val) { return ArrayOrderString(Val); case DW_AT_APPLE_runtime_class: return LanguageString(Val); + case DW_AT_defaulted: + return DefaultedMemberString(Val); } return StringRef(); |