1 //===-- RISCV.h - Top-level interface for RISCV -----------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 // This file contains the entry points for global functions defined in the LLVM
13 //===----------------------------------------------------------------------===//
15 #ifndef LLVM_LIB_TARGET_RISCV_RISCV_H
16 #define LLVM_LIB_TARGET_RISCV_RISCV_H
18 #include "MCTargetDesc/RISCVBaseInfo.h"
21 class RISCVTargetMachine;
30 void LowerRISCVMachineInstrToMCInst(const MachineInstr *MI, MCInst &OutMI,
31 const AsmPrinter &AP);
32 bool LowerRISCVMachineOperandToMCOperand(const MachineOperand &MO,
33 MCOperand &MCOp, const AsmPrinter &AP);
35 FunctionPass *createRISCVISelDag(RISCVTargetMachine &TM);
37 FunctionPass *createRISCVMergeBaseOffsetOptPass();
38 void initializeRISCVMergeBaseOffsetOptPass(PassRegistry &);