diff options
4 files changed, 9 insertions, 6 deletions
diff --git a/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp b/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp index f74d2e85392..d248556c62d 100644 --- a/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp +++ b/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.cpp @@ -46,7 +46,7 @@ createWebAssemblyMCInstPrinter(const Triple &T, unsigned SyntaxVariant, // Force static initialization. extern "C" void LLVMInitializeWebAssemblyTargetMC() { - for (Target *T : {&TheWebAssemblyTarget}) { + for (Target *T : {&TheWebAssemblyTarget32, &TheWebAssemblyTarget64}) { // Register the MC asm info. RegisterMCAsmInfoFn X(*T, createWebAssemblyMCAsmInfo); diff --git a/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h b/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h index 19c0737ffbf..24893daec7e 100644 --- a/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h +++ b/llvm/lib/Target/WebAssembly/MCTargetDesc/WebAssemblyMCTargetDesc.h @@ -35,7 +35,8 @@ class Target; class Triple; class raw_ostream; -extern Target TheWebAssemblyTarget; +extern Target TheWebAssemblyTarget32; +extern Target TheWebAssemblyTarget64; MCAsmBackend *createWebAssemblyAsmBackend(const Target &T, const MCRegisterInfo &MRI, diff --git a/llvm/lib/Target/WebAssembly/TargetInfo/WebAssemblyTargetInfo.cpp b/llvm/lib/Target/WebAssembly/TargetInfo/WebAssemblyTargetInfo.cpp index fb339b95512..ddb1eb1d189 100644 --- a/llvm/lib/Target/WebAssembly/TargetInfo/WebAssemblyTargetInfo.cpp +++ b/llvm/lib/Target/WebAssembly/TargetInfo/WebAssemblyTargetInfo.cpp @@ -19,11 +19,12 @@ using namespace llvm; #define DEBUG_TYPE "wasm-target-info" -Target llvm::TheWebAssemblyTarget; +Target llvm::TheWebAssemblyTarget32; +Target llvm::TheWebAssemblyTarget64; extern "C" void LLVMInitializeWebAssemblyTargetInfo() { - RegisterTarget<Triple::wasm32> X(TheWebAssemblyTarget, "wasm32", + RegisterTarget<Triple::wasm32> X(TheWebAssemblyTarget32, "wasm32", "WebAssembly 32-bit"); - RegisterTarget<Triple::wasm64> Y(TheWebAssemblyTarget, "wasm64", + RegisterTarget<Triple::wasm64> Y(TheWebAssemblyTarget64, "wasm64", "WebAssembly 64-bit"); } diff --git a/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp b/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp index 24277a30bd3..54ab02848b0 100644 --- a/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp +++ b/llvm/lib/Target/WebAssembly/WebAssemblyTargetMachine.cpp @@ -30,7 +30,8 @@ using namespace llvm; extern "C" void LLVMInitializeWebAssemblyTarget() { // Register the target. - RegisterTargetMachine<WebAssemblyTargetMachine> X(TheWebAssemblyTarget); + RegisterTargetMachine<WebAssemblyTargetMachine> X(TheWebAssemblyTarget32); + RegisterTargetMachine<WebAssemblyTargetMachine> Y(TheWebAssemblyTarget64); } //===----------------------------------------------------------------------===// |