blob: 0f369d960fe1495b53443a4b287254b5419e37f8 [file] [log] [blame]
Alex Bradburyb2e54722016-11-01 17:27:54 +00001//===-- RISCVTargetInfo.cpp - RISCV Target Implementation -----------------===//
2//
3// The LLVM Compiler Infrastructure
4//
5// This file is distributed under the University of Illinois Open Source
6// License. See LICENSE.TXT for details.
7//
8//===----------------------------------------------------------------------===//
9
10#include "llvm/Support/TargetRegistry.h"
11using namespace llvm;
12
13namespace llvm {
14Target &getTheRISCV32Target() {
15 static Target TheRISCV32Target;
16 return TheRISCV32Target;
17}
18
19Target &getTheRISCV64Target() {
20 static Target TheRISCV64Target;
21 return TheRISCV64Target;
22}
23}
24
25extern "C" void LLVMInitializeRISCVTargetInfo() {
26 RegisterTarget<Triple::riscv32> X(getTheRISCV32Target(), "riscv32",
Azharuddin Mohammedfa8420d2017-11-16 18:39:31 +000027 "32-bit RISC-V", "RISCV");
Alex Bradburyb2e54722016-11-01 17:27:54 +000028 RegisterTarget<Triple::riscv64> Y(getTheRISCV64Target(), "riscv64",
Azharuddin Mohammedfa8420d2017-11-16 18:39:31 +000029 "64-bit RISC-V", "RISCV");
Alex Bradburyb2e54722016-11-01 17:27:54 +000030}