1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64
|
add_llvm_library(LLVMSPIRVLib
LLVMSPIRVOpts.cpp
LLVMToSPIRVDbgTran.cpp
Mangler/FunctionDescriptor.cpp
Mangler/Mangler.cpp
Mangler/ManglingUtils.cpp
Mangler/ParameterType.cpp
OCLToSPIRV.cpp
OCLTypeToSPIRV.cpp
OCLUtil.cpp
VectorComputeUtil.cpp
SPIRVLowerBitCastToNonStandardType.cpp
SPIRVLowerBool.cpp
SPIRVLowerConstExpr.cpp
SPIRVLowerMemmove.cpp
SPIRVLowerOCLBlocks.cpp
SPIRVLowerSaddIntrinsics.cpp
SPIRVReader.cpp
SPIRVRegularizeLLVM.cpp
SPIRVToLLVMDbgTran.cpp
SPIRVToOCL.cpp
SPIRVToOCL12.cpp
SPIRVToOCL20.cpp
SPIRVUtil.cpp
SPIRVWriter.cpp
SPIRVWriterPass.cpp
PreprocessMetadata.cpp
libSPIRV/SPIRVBasicBlock.cpp
libSPIRV/SPIRVDebug.cpp
libSPIRV/SPIRVDecorate.cpp
libSPIRV/SPIRVEntry.cpp
libSPIRV/SPIRVFunction.cpp
libSPIRV/SPIRVInstruction.cpp
libSPIRV/SPIRVModule.cpp
libSPIRV/SPIRVStream.cpp
libSPIRV/SPIRVType.cpp
libSPIRV/SPIRVValue.cpp
LINK_COMPONENTS
Analysis
BitWriter
CodeGen
Core
Demangle
IRReader
Linker
Passes
Support
TransformUtils
DEPENDS
intrinsics_gen
)
target_include_directories(LLVMSPIRVLib
PRIVATE
${LLVM_INCLUDE_DIRS}
${LLVM_SPIRV_INCLUDE_DIRS}
# TODO: Consider using SPIRV-Headers' as a header-only INTERFACE
# instead. Right now this runs into exporting issues with
# the LLVM in-tree builds.
${LLVM_EXTERNAL_SPIRV_HEADERS_SOURCE_DIR}/include
${CMAKE_CURRENT_SOURCE_DIR}
${CMAKE_CURRENT_SOURCE_DIR}/libSPIRV
${CMAKE_CURRENT_SOURCE_DIR}/Mangler
)
|