diff options
Diffstat (limited to 'llvm')
-rw-r--r-- | llvm/include/llvm/MC/MCContext.h | 9 | ||||
-rw-r--r-- | llvm/lib/MC/MCParser/AsmParser.cpp | 7 |
2 files changed, 7 insertions, 9 deletions
diff --git a/llvm/include/llvm/MC/MCContext.h b/llvm/include/llvm/MC/MCContext.h index 3f45301bf32..c4abef1a9b4 100644 --- a/llvm/include/llvm/MC/MCContext.h +++ b/llvm/include/llvm/MC/MCContext.h @@ -634,17 +634,10 @@ namespace llvm { } void defineMacro(StringRef Name, MCAsmMacro Macro) { - DEBUG_WITH_TYPE("asm-macros", dbgs() << "Defining new macro:\n"; - Macro.dump()); MacroMap.insert(std::make_pair(Name, std::move(Macro))); } - void undefineMacro(StringRef Name) { - if (MacroMap.erase(Name)) { - DEBUG_WITH_TYPE("asm-macros", - dbgs() << "Un-defining macro: " << Name << "\n"); - } - } + void undefineMacro(StringRef Name) { MacroMap.erase(Name); } }; } // end namespace llvm diff --git a/llvm/lib/MC/MCParser/AsmParser.cpp b/llvm/lib/MC/MCParser/AsmParser.cpp index 76eef5e3725..54a76732bbe 100644 --- a/llvm/lib/MC/MCParser/AsmParser.cpp +++ b/llvm/lib/MC/MCParser/AsmParser.cpp @@ -4257,7 +4257,10 @@ bool AsmParser::parseDirectiveMacro(SMLoc DirectiveLoc) { const char *BodyEnd = EndToken.getLoc().getPointer(); StringRef Body = StringRef(BodyStart, BodyEnd - BodyStart); checkForBadMacro(DirectiveLoc, Name, Body, Parameters); - getContext().defineMacro(Name, MCAsmMacro(Name, Body, std::move(Parameters))); + MCAsmMacro Macro(Name, Body, std::move(Parameters)); + DEBUG_WITH_TYPE("asm-macros", dbgs() << "Defining new macro:\n"; + Macro.dump()); + getContext().defineMacro(Name, std::move(Macro)); return false; } @@ -4420,6 +4423,8 @@ bool AsmParser::parseDirectivePurgeMacro(SMLoc DirectiveLoc) { return Error(DirectiveLoc, "macro '" + Name + "' is not defined"); getContext().undefineMacro(Name); + DEBUG_WITH_TYPE("asm-macros", dbgs() + << "Un-defining macro: " << Name << "\n"); return false; } |