mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-10-19 19:12:56 +02:00
75a022ea2b
Summary: LLVM Allows Targets to provide information that guides optimisations made to LLVM IR. This is done with callbacks on a TargetTransformInfo object. This patch adds a TargetTransformInfo class for RISC-V. This will allow us to implement RISC-V specific callbacks as they become necessary. This commit also adds the getIntImmCost callbacks, and tests them with a simple constant hoisting test. Our immediate costs are on the conservative side, for the moment, but we prevent hoisting in most circumstances anyway. Previous review was on D63007 Reviewers: asb, luismarques Reviewed By: asb Subscribers: ributzka, MaskRay, llvm-commits, Jim, benna, psnobl, jocewei, PkmX, rkruppe, the_o, brucehoult, MartinMosbeck, rogfer01, edward-jones, zzheng, jrtc27, shiva0217, kito-cheng, niosHD, sabuasal, apazos, simoncook, johnrusso, rbar, hiraditya, mgorny Tags: #llvm Differential Revision: https://reviews.llvm.org/D63433 llvm-svn: 364046
38 lines
1.2 KiB
CMake
38 lines
1.2 KiB
CMake
set(LLVM_TARGET_DEFINITIONS RISCV.td)
|
|
|
|
tablegen(LLVM RISCVGenAsmMatcher.inc -gen-asm-matcher)
|
|
tablegen(LLVM RISCVGenAsmWriter.inc -gen-asm-writer)
|
|
tablegen(LLVM RISCVGenCompressInstEmitter.inc -gen-compress-inst-emitter)
|
|
tablegen(LLVM RISCVGenDAGISel.inc -gen-dag-isel)
|
|
tablegen(LLVM RISCVGenDisassemblerTables.inc -gen-disassembler)
|
|
tablegen(LLVM RISCVGenInstrInfo.inc -gen-instr-info)
|
|
tablegen(LLVM RISCVGenMCCodeEmitter.inc -gen-emitter)
|
|
tablegen(LLVM RISCVGenMCPseudoLowering.inc -gen-pseudo-lowering)
|
|
tablegen(LLVM RISCVGenRegisterInfo.inc -gen-register-info)
|
|
tablegen(LLVM RISCVGenSubtargetInfo.inc -gen-subtarget)
|
|
tablegen(LLVM RISCVGenSystemOperands.inc -gen-searchable-tables)
|
|
|
|
add_public_tablegen_target(RISCVCommonTableGen)
|
|
|
|
add_llvm_target(RISCVCodeGen
|
|
RISCVAsmPrinter.cpp
|
|
RISCVExpandPseudoInsts.cpp
|
|
RISCVFrameLowering.cpp
|
|
RISCVInstrInfo.cpp
|
|
RISCVISelDAGToDAG.cpp
|
|
RISCVISelLowering.cpp
|
|
RISCVMCInstLower.cpp
|
|
RISCVMergeBaseOffset.cpp
|
|
RISCVRegisterInfo.cpp
|
|
RISCVSubtarget.cpp
|
|
RISCVTargetMachine.cpp
|
|
RISCVTargetObjectFile.cpp
|
|
RISCVTargetTransformInfo.cpp
|
|
)
|
|
|
|
add_subdirectory(AsmParser)
|
|
add_subdirectory(Disassembler)
|
|
add_subdirectory(MCTargetDesc)
|
|
add_subdirectory(TargetInfo)
|
|
add_subdirectory(Utils)
|