mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-23 03:02:36 +01:00
e7084f2810
LLVM does not have valid assembly backends for atomicrmw on local memory. However, as this memory is thread local, we should be able to lower this to the relevant load/store. Differential Revision: https://reviews.llvm.org/D98650
66 lines
1.3 KiB
CMake
66 lines
1.3 KiB
CMake
add_llvm_component_group(NVPTX)
|
|
|
|
set(LLVM_TARGET_DEFINITIONS NVPTX.td)
|
|
|
|
tablegen(LLVM NVPTXGenAsmWriter.inc -gen-asm-writer)
|
|
tablegen(LLVM NVPTXGenDAGISel.inc -gen-dag-isel)
|
|
tablegen(LLVM NVPTXGenInstrInfo.inc -gen-instr-info)
|
|
tablegen(LLVM NVPTXGenRegisterInfo.inc -gen-register-info)
|
|
tablegen(LLVM NVPTXGenSubtargetInfo.inc -gen-subtarget)
|
|
|
|
add_public_tablegen_target(NVPTXCommonTableGen)
|
|
|
|
set(NVPTXCodeGen_sources
|
|
NVPTXAllocaHoisting.cpp
|
|
NVPTXAtomicLower.cpp
|
|
NVPTXAsmPrinter.cpp
|
|
NVPTXAssignValidGlobalNames.cpp
|
|
NVPTXFrameLowering.cpp
|
|
NVPTXGenericToNVVM.cpp
|
|
NVPTXISelDAGToDAG.cpp
|
|
NVPTXISelLowering.cpp
|
|
NVPTXImageOptimizer.cpp
|
|
NVPTXInstrInfo.cpp
|
|
NVPTXLowerAggrCopies.cpp
|
|
NVPTXLowerArgs.cpp
|
|
NVPTXLowerAlloca.cpp
|
|
NVPTXPeephole.cpp
|
|
NVPTXMCExpr.cpp
|
|
NVPTXPrologEpilogPass.cpp
|
|
NVPTXRegisterInfo.cpp
|
|
NVPTXReplaceImageHandles.cpp
|
|
NVPTXSubtarget.cpp
|
|
NVPTXTargetMachine.cpp
|
|
NVPTXTargetTransformInfo.cpp
|
|
NVPTXUtilities.cpp
|
|
NVVMIntrRange.cpp
|
|
NVVMReflect.cpp
|
|
NVPTXProxyRegErasure.cpp
|
|
)
|
|
|
|
add_llvm_target(NVPTXCodeGen
|
|
${NVPTXCodeGen_sources}
|
|
|
|
LINK_COMPONENTS
|
|
Analysis
|
|
AsmPrinter
|
|
CodeGen
|
|
Core
|
|
IPO
|
|
MC
|
|
NVPTXDesc
|
|
NVPTXInfo
|
|
Scalar
|
|
SelectionDAG
|
|
Support
|
|
Target
|
|
TransformUtils
|
|
Vectorize
|
|
|
|
ADD_TO_COMPONENT
|
|
NVPTX
|
|
)
|
|
|
|
add_subdirectory(MCTargetDesc)
|
|
add_subdirectory(TargetInfo)
|