1//===- DirectXTargetInfo.cpp - DirectX Target Implementation ----*- C++ -*-===//
2//
3// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
4// See https://llvm.org/LICENSE.txt for license information.
5// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
6//
7//===----------------------------------------------------------------------===//
8///
9/// \file
10/// This file contains DirectX target initializer.
11///
12//===----------------------------------------------------------------------===//
13
14#include "llvm/MC/TargetRegistry.h"
15#include "llvm/Support/Compiler.h"
16#include "llvm/TargetParser/Triple.h"
17
18namespace llvm {
19Target &getTheDirectXTarget() {
20 static Target TheDirectXTarget;
21 return TheDirectXTarget;
22}
23} // namespace llvm
24
25using namespace llvm;
26
27extern "C" LLVM_ABI LLVM_EXTERNAL_VISIBILITY void
28LLVMInitializeDirectXTargetInfo() {
29 RegisterTarget<Triple::dxil, /*HasJIT=*/false> X(
30 getTheDirectXTarget(), "dxil", "DirectX Intermediate Language", "DXIL");
31}
32