30 lines · cpp
1//===-- NVPTXTargetInfo.cpp - NVPTX Target Implementation -----------------===//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-exception6//7//===----------------------------------------------------------------------===//8 9#include "TargetInfo/NVPTXTargetInfo.h"10#include "llvm/MC/TargetRegistry.h"11#include "llvm/Support/Compiler.h"12using namespace llvm;13 14Target &llvm::getTheNVPTXTarget32() {15 static Target TheNVPTXTarget32;16 return TheNVPTXTarget32;17}18Target &llvm::getTheNVPTXTarget64() {19 static Target TheNVPTXTarget64;20 return TheNVPTXTarget64;21}22 23extern "C" LLVM_ABI LLVM_EXTERNAL_VISIBILITY void24LLVMInitializeNVPTXTargetInfo() {25 RegisterTarget<Triple::nvptx> X(getTheNVPTXTarget32(), "nvptx",26 "NVIDIA PTX 32-bit", "NVPTX");27 RegisterTarget<Triple::nvptx64> Y(getTheNVPTXTarget64(), "nvptx64",28 "NVIDIA PTX 64-bit", "NVPTX");29}30