ELF2: Make parseEmulation side-effect free. NFC.
llvm-svn: 251440
diff --git a/lld/ELF/Driver.cpp b/lld/ELF/Driver.cpp
index 5a42880..96ebabe 100644
--- a/lld/ELF/Driver.cpp
+++ b/lld/ELF/Driver.cpp
@@ -38,7 +38,6 @@
}
static std::pair<ELFKind, uint16_t> parseEmulation(StringRef S) {
- Config->Emulation = S;
if (S == "elf32btsmip")
return {ELF32BEKind, EM_MIPS};
if (S == "elf32ltsmip")
@@ -130,9 +129,11 @@
Config->RPath = llvm::join(RPaths.begin(), RPaths.end(), ":");
if (auto *Arg = Args.getLastArg(OPT_m)) {
- std::pair<ELFKind, uint16_t> P = parseEmulation(Arg->getValue());
+ StringRef S = Arg->getValue();
+ std::pair<ELFKind, uint16_t> P = parseEmulation(S);
Config->EKind = P.first;
Config->EMachine = P.second;
+ Config->Emulation = S;
}
Config->AllowMultipleDefinition = Args.hasArg(OPT_allow_multiple_definition);