summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRui Ueyama <ruiu@google.com>2017-05-24 17:12:53 +0000
committerRui Ueyama <ruiu@google.com>2017-05-24 17:12:53 +0000
commit8df7fa782e07788bb2327812730b025f30a3eb62 (patch)
tree2c4675699b432993aba29d39899948869afb06bd
parent216d6834ba089668599b55d948cd1bd8eee57194 (diff)
downloadbcm5719-llvm-8df7fa782e07788bb2327812730b025f30a3eb62.tar.gz
bcm5719-llvm-8df7fa782e07788bb2327812730b025f30a3eb62.zip
Rewrite badly-formatted switch. NFC.
llvm-svn: 303777
-rw-r--r--lld/COFF/Symbols.cpp19
1 files changed, 11 insertions, 8 deletions
diff --git a/lld/COFF/Symbols.cpp b/lld/COFF/Symbols.cpp
index 993e920ce7f..5fd17a02ffc 100644
--- a/lld/COFF/Symbols.cpp
+++ b/lld/COFF/Symbols.cpp
@@ -61,16 +61,19 @@ COFFSymbolRef DefinedCOFF::getCOFFSymbol() {
return COFFSymbolRef(reinterpret_cast<const coff_symbol32 *>(Sym));
}
+static Chunk *makeImportThunk(DefinedImportData *S, uint16_t Machine) {
+ if (Machine == AMD64)
+ return make<ImportThunkChunkX64>(S);
+ if (Machine == I386)
+ return make<ImportThunkChunkX86>(S);
+ assert(Machine == ARMNT);
+ return make<ImportThunkChunkARM>(S);
+}
+
DefinedImportThunk::DefinedImportThunk(StringRef Name, DefinedImportData *S,
uint16_t Machine)
- : Defined(DefinedImportThunkKind, Name) {
- switch (Machine) {
- case AMD64: Data = make<ImportThunkChunkX64>(S); return;
- case I386: Data = make<ImportThunkChunkX86>(S); return;
- case ARMNT: Data = make<ImportThunkChunkARM>(S); return;
- default: llvm_unreachable("unknown machine type");
- }
-}
+ : Defined(DefinedImportThunkKind, Name),
+ Data(makeImportThunk(S, Machine)) {}
Defined *Undefined::getWeakAlias() {
// A weak alias may be a weak alias to another symbol, so check recursively.
OpenPOWER on IntegriCloud