summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRui Ueyama <ruiu@google.com>2017-04-05 03:21:01 +0000
committerRui Ueyama <ruiu@google.com>2017-04-05 03:21:01 +0000
commitc8124ee9a310b68f5619bc5f88a1aa9251126b2c (patch)
treedebc04d342de87a830d2389bb42bcf4d55ea1b1e
parent8f99f73c8fe746deb8fc3963439f181419a057d3 (diff)
downloadbcm5719-llvm-c8124ee9a310b68f5619bc5f88a1aa9251126b2c.tar.gz
bcm5719-llvm-c8124ee9a310b68f5619bc5f88a1aa9251126b2c.zip
Simplify. NFC.
llvm-svn: 299506
-rw-r--r--lld/ELF/LinkerScript.cpp17
1 files changed, 7 insertions, 10 deletions
diff --git a/lld/ELF/LinkerScript.cpp b/lld/ELF/LinkerScript.cpp
index bfa21666941..14e920063ea 100644
--- a/lld/ELF/LinkerScript.cpp
+++ b/lld/ELF/LinkerScript.cpp
@@ -423,17 +423,14 @@ void LinkerScript::processCommands(OutputSectionFactory &Factory) {
CurOutSec = Aether;
Dot = 0;
- for (unsigned I = 0; I < Opt.Commands.size(); ++I) {
- auto Iter = Opt.Commands.begin() + I;
- BaseCommand *Base1 = *Iter;
-
+ for (auto It = Opt.Commands.begin(); It != Opt.Commands.end(); ++It) {
// Handle symbol assignments outside of any output section.
- if (auto *Cmd = dyn_cast<SymbolAssignment>(Base1)) {
+ if (auto *Cmd = dyn_cast<SymbolAssignment>(*It)) {
addSymbol(Cmd);
continue;
}
- if (auto *Cmd = dyn_cast<OutputSectionCommand>(Base1)) {
+ if (auto *Cmd = dyn_cast<OutputSectionCommand>(*It)) {
std::vector<InputSectionBase *> V = createInputSectionList(*Cmd);
// The output section name `/DISCARD/' is special.
@@ -446,15 +443,15 @@ void LinkerScript::processCommands(OutputSectionFactory &Factory) {
// This is for ONLY_IF_RO and ONLY_IF_RW. An output section directive
// ".foo : ONLY_IF_R[OW] { ... }" is handled only if all member input
// sections satisfy a given constraint. If not, a directive is handled
- // as if it wasn't present from the beginning.
+ // as if it weren't present from the beginning.
//
// Because we'll iterate over Commands many more times, the easiest
- // way to "make it as if it wasn't present" is to just remove it.
+ // way to "make it as if it weren't present" is to just remove it.
if (!matchConstraints(V, Cmd->Constraint)) {
for (InputSectionBase *S : V)
S->Assigned = false;
- Opt.Commands.erase(Iter);
- --I;
+ --It;
+ Opt.Commands.erase(It + 1);
continue;
}
OpenPOWER on IntegriCloud