diff options
author | Mehdi Amini <mehdi.amini@apple.com> | 2016-10-09 23:00:34 +0000 |
---|---|---|
committer | Mehdi Amini <mehdi.amini@apple.com> | 2016-10-09 23:00:34 +0000 |
commit | f42454b94b035cd4ad65c8470bb56e761f79b86e (patch) | |
tree | dc8386dc823263161a0fadf2cf1de1227927a2e7 /llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp | |
parent | 69125397170c6ee553725b8bfb562fe38d3ffefe (diff) | |
download | bcm5719-llvm-f42454b94b035cd4ad65c8470bb56e761f79b86e.tar.gz bcm5719-llvm-f42454b94b035cd4ad65c8470bb56e761f79b86e.zip |
Move the global variables representing each Target behind accessor function
This avoids "static initialization order fiasco"
Differential Revision: https://reviews.llvm.org/D25412
llvm-svn: 283702
Diffstat (limited to 'llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp')
-rw-r--r-- | llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp b/llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp index a0557395097..56fe1857211 100644 --- a/llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp +++ b/llvm/lib/Target/Mips/MCTargetDesc/MipsMCTargetDesc.cpp @@ -149,8 +149,8 @@ static MCInstrAnalysis *createMipsMCInstrAnalysis(const MCInstrInfo *Info) { } extern "C" void LLVMInitializeMipsTargetMC() { - for (Target *T : {&TheMipsTarget, &TheMipselTarget, &TheMips64Target, - &TheMips64elTarget}) { + for (Target *T : {&getTheMipsTarget(), &getTheMipselTarget(), + &getTheMips64Target(), &getTheMips64elTarget()}) { // Register the MC asm info. RegisterMCAsmInfoFn X(*T, createMipsMCAsmInfo); @@ -183,20 +183,19 @@ extern "C" void LLVMInitializeMipsTargetMC() { } // Register the MC Code Emitter - for (Target *T : {&TheMipsTarget, &TheMips64Target}) + for (Target *T : {&getTheMipsTarget(), &getTheMips64Target()}) TargetRegistry::RegisterMCCodeEmitter(*T, createMipsMCCodeEmitterEB); - for (Target *T : {&TheMipselTarget, &TheMips64elTarget}) + for (Target *T : {&getTheMipselTarget(), &getTheMips64elTarget()}) TargetRegistry::RegisterMCCodeEmitter(*T, createMipsMCCodeEmitterEL); // Register the asm backend. - TargetRegistry::RegisterMCAsmBackend(TheMipsTarget, + TargetRegistry::RegisterMCAsmBackend(getTheMipsTarget(), createMipsAsmBackendEB32); - TargetRegistry::RegisterMCAsmBackend(TheMipselTarget, + TargetRegistry::RegisterMCAsmBackend(getTheMipselTarget(), createMipsAsmBackendEL32); - TargetRegistry::RegisterMCAsmBackend(TheMips64Target, + TargetRegistry::RegisterMCAsmBackend(getTheMips64Target(), createMipsAsmBackendEB64); - TargetRegistry::RegisterMCAsmBackend(TheMips64elTarget, + TargetRegistry::RegisterMCAsmBackend(getTheMips64elTarget(), createMipsAsmBackendEL64); - } |