summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
Diffstat (limited to 'llvm')
-rw-r--r--llvm/include/llvm/MC/MCContext.h9
-rw-r--r--llvm/lib/MC/MCParser/AsmParser.cpp7
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;
}
OpenPOWER on IntegriCloud