[lld] r267839 - Do not call hasArg and getLastArg for the same option.
Rui Ueyama via llvm-commits
llvm-commits at lists.llvm.org
Wed Apr 27 19:08:54 PDT 2016
Author: ruiu
Date: Wed Apr 27 21:08:54 2016
New Revision: 267839
URL: http://llvm.org/viewvc/llvm-project?rev=267839&view=rev
Log:
Do not call hasArg and getLastArg for the same option.
Modified:
lld/trunk/ELF/Config.h
lld/trunk/ELF/Driver.cpp
Modified: lld/trunk/ELF/Config.h
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/Config.h?rev=267839&r1=267838&r2=267839&view=diff
==============================================================================
--- lld/trunk/ELF/Config.h (original)
+++ lld/trunk/ELF/Config.h Wed Apr 27 21:08:54 2016
@@ -86,7 +86,7 @@ struct Configuration {
bool Threads;
bool Trace;
bool Verbose;
- bool VersionScript;
+ bool VersionScript = false;
bool WarnCommon;
bool ZExecStack;
bool ZNodelete;
Modified: lld/trunk/ELF/Driver.cpp
URL: http://llvm.org/viewvc/llvm-project/lld/trunk/ELF/Driver.cpp?rev=267839&r1=267838&r2=267839&view=diff
==============================================================================
--- lld/trunk/ELF/Driver.cpp (original)
+++ lld/trunk/ELF/Driver.cpp Wed Apr 27 21:08:54 2016
@@ -394,19 +394,18 @@ void LinkerDriver::readConfigs(opt::Inpu
for (auto *Arg : Args.filtered(OPT_undefined))
Config->Undefined.push_back(Arg->getValue());
- if (Args.hasArg(OPT_dynamic_list))
- if (Optional<MemoryBufferRef> Buffer =
- readFile(getString(Args, OPT_dynamic_list)))
+ if (auto *Arg = Args.getLastArg(OPT_dynamic_list))
+ if (Optional<MemoryBufferRef> Buffer = readFile(Arg->getValue()))
parseDynamicList(*Buffer);
for (auto *Arg : Args.filtered(OPT_export_dynamic_symbol))
Config->DynamicList.push_back(Arg->getValue());
- Config->VersionScript = Args.hasArg(OPT_version_script);
- if (Config->VersionScript)
- if (Optional<MemoryBufferRef> Buffer =
- readFile(getString(Args, OPT_version_script)))
+ if (auto *Arg = Args.getLastArg(OPT_version_script)) {
+ Config->VersionScript = true;
+ if (Optional<MemoryBufferRef> Buffer = readFile(Arg->getValue()))
parseVersionScript(*Buffer);
+ }
}
void LinkerDriver::createFiles(opt::InputArgList &Args) {
More information about the llvm-commits
mailing list