Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion llvm/lib/BinaryFormat/Dwarf.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -192,7 +192,8 @@ static StringRef LlvmUserOperationEncodingString(unsigned Encoding) {
static unsigned
getLlvmUserOperationEncoding(StringRef LlvmUserOperationEncodingString) {
unsigned E = StringSwitch<unsigned>(LlvmUserOperationEncodingString)
#define HANDLE_DW_OP_LLVM_USEROP(ID, NAME) .Case(#NAME, DW_OP_LLVM_##NAME)
#define HANDLE_DW_OP_LLVM_USEROP(ID, NAME) \
.Case("DW_OP_LLVM_" #NAME, DW_OP_LLVM_##NAME)
#include "llvm/BinaryFormat/Dwarf.def"
.Default(0);
assert(E && "unhandled DWARF operation string with LLVM user op");
Expand Down
7 changes: 7 additions & 0 deletions llvm/unittests/BinaryFormat/DwarfTest.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,13 @@ TEST(DwarfTest, getOperationEncoding) {
EXPECT_EQ(0u, getOperationEncoding("DW_OP_hi_user"));
}

TEST(DwarfTest, SubOperationEncoding) {
Comment thread
enferex marked this conversation as resolved.
EXPECT_EQ("DW_OP_LLVM_nop",
SubOperationEncodingString(DW_OP_LLVM_user, DW_OP_LLVM_nop));
EXPECT_EQ(DW_OP_LLVM_nop,
getSubOperationEncoding(DW_OP_LLVM_user, "DW_OP_LLVM_nop"));
}

TEST(DwarfTest, LanguageStringOnInvalid) {
// This is invalid, so it shouldn't be stringified.
EXPECT_EQ(StringRef(), LanguageString(0));
Expand Down
Loading