110e730a2SDan Gohman //===-- WebAssemblyTargetInfo.cpp - WebAssembly Target Implementation -----===//
210e730a2SDan Gohman //
310e730a2SDan Gohman //                     The LLVM Compiler Infrastructure
410e730a2SDan Gohman //
510e730a2SDan Gohman // This file is distributed under the University of Illinois Open Source
610e730a2SDan Gohman // License. See LICENSE.TXT for details.
710e730a2SDan Gohman //
810e730a2SDan Gohman //===----------------------------------------------------------------------===//
910e730a2SDan Gohman ///
1010e730a2SDan Gohman /// \file
1110e730a2SDan Gohman /// \brief This file registers the WebAssembly target.
1210e730a2SDan Gohman ///
1310e730a2SDan Gohman //===----------------------------------------------------------------------===//
1410e730a2SDan Gohman 
1510e730a2SDan Gohman #include "MCTargetDesc/WebAssemblyMCTargetDesc.h"
1610e730a2SDan Gohman #include "llvm/ADT/Triple.h"
1710e730a2SDan Gohman #include "llvm/Support/TargetRegistry.h"
1810e730a2SDan Gohman using namespace llvm;
1910e730a2SDan Gohman 
2010e730a2SDan Gohman #define DEBUG_TYPE "wasm-target-info"
2110e730a2SDan Gohman 
220dea246bSDaniel Jasper Target &llvm::getTheWebAssemblyTarget32() {
230dea246bSDaniel Jasper   static Target TheWebAssemblyTarget32;
240dea246bSDaniel Jasper   return TheWebAssemblyTarget32;
250dea246bSDaniel Jasper }
260dea246bSDaniel Jasper Target &llvm::getTheWebAssemblyTarget64() {
270dea246bSDaniel Jasper   static Target TheWebAssemblyTarget64;
280dea246bSDaniel Jasper   return TheWebAssemblyTarget64;
290dea246bSDaniel Jasper }
3010e730a2SDan Gohman 
3110e730a2SDan Gohman extern "C" void LLVMInitializeWebAssemblyTargetInfo() {
32f42454b9SMehdi Amini   RegisterTarget<Triple::wasm32> X(getTheWebAssemblyTarget32(), "wasm32",
33*8d8a8bb7SReid Kleckner                                    "WebAssembly 32-bit", "WebAssembly");
34f42454b9SMehdi Amini   RegisterTarget<Triple::wasm64> Y(getTheWebAssemblyTarget64(), "wasm64",
35*8d8a8bb7SReid Kleckner                                    "WebAssembly 64-bit", "WebAssembly");
3610e730a2SDan Gohman }
37