summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRui Ueyama <ruiu@google.com>2015-11-12 19:42:43 +0000
committerRui Ueyama <ruiu@google.com>2015-11-12 19:42:43 +0000
commit92ce0e9122859a8591545963d985f1ec12f5d591 (patch)
treeff0b5bf5518e547660e67f43e3da6f42130fc2f0
parent14a06ac05edbbf2f6fb362942bbe08f75113476e (diff)
downloadbcm5719-llvm-92ce0e9122859a8591545963d985f1ec12f5d591.tar.gz
bcm5719-llvm-92ce0e9122859a8591545963d985f1ec12f5d591.zip
ELF2: Make type a bit stricter. NFC.
llvm-svn: 252934
-rw-r--r--lld/ELF/MarkLive.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/lld/ELF/MarkLive.cpp b/lld/ELF/MarkLive.cpp
index cc94a662f4e..a7312f5fd39 100644
--- a/lld/ELF/MarkLive.cpp
+++ b/lld/ELF/MarkLive.cpp
@@ -76,13 +76,14 @@ template <class ELFT> static bool isReserved(InputSectionBase<ELFT> *Sec) {
}
template <class ELFT> void lld::elf2::markLive(SymbolTable<ELFT> *Symtab) {
- SmallVector<InputSectionBase<ELFT> *, 256> Q;
+ SmallVector<InputSection<ELFT> *, 256> Q;
auto Enqueue = [&](InputSectionBase<ELFT> *Sec) {
if (!Sec || Sec->Live)
return;
Sec->Live = true;
- Q.push_back(Sec);
+ if (InputSection<ELFT> *S = dyn_cast<InputSection<ELFT>>(Sec))
+ Q.push_back(S);
};
auto MarkSymbol = [&](SymbolBody *Sym) {
@@ -124,8 +125,7 @@ template <class ELFT> void lld::elf2::markLive(SymbolTable<ELFT> *Symtab) {
// Mark all reachable sections.
while (!Q.empty())
- if (auto *Sec = dyn_cast<InputSection<ELFT>>(Q.pop_back_val()))
- forEachSuccessor<ELFT>(Sec, Enqueue);
+ forEachSuccessor<ELFT>(Q.pop_back_val(), Enqueue);
}
template void lld::elf2::markLive<ELF32LE>(SymbolTable<ELF32LE> *);
OpenPOWER on IntegriCloud