mirror of
https://github.com/RPCS3/llvm.git
synced 2024-12-16 08:29:43 +00:00
597432fbe5
Thread local storage is not supported by the XMOS linker so we handle thread local variables by lowering the variable to an array of n elements (where n is the number of hardware threads per core, currently 8 for all XMOS devices) indexed by the the current thread ID. Previously this lowering was spread across the XCoreISelLowering and the XCoreAsmPrinter classes. Moving this to a separate pass should be much cleaner. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@181124 91177308-0d34-0410-b5e6-96231b3b80d8
34 lines
1008 B
CMake
34 lines
1008 B
CMake
set(LLVM_TARGET_DEFINITIONS XCore.td)
|
|
|
|
tablegen(LLVM XCoreGenRegisterInfo.inc -gen-register-info)
|
|
tablegen(LLVM XCoreGenInstrInfo.inc -gen-instr-info)
|
|
tablegen(LLVM XCoreGenDisassemblerTables.inc -gen-disassembler)
|
|
tablegen(LLVM XCoreGenAsmWriter.inc -gen-asm-writer)
|
|
tablegen(LLVM XCoreGenDAGISel.inc -gen-dag-isel)
|
|
tablegen(LLVM XCoreGenCallingConv.inc -gen-callingconv)
|
|
tablegen(LLVM XCoreGenSubtargetInfo.inc -gen-subtarget)
|
|
add_public_tablegen_target(XCoreCommonTableGen)
|
|
|
|
add_llvm_target(XCoreCodeGen
|
|
XCoreAsmPrinter.cpp
|
|
XCoreFrameLowering.cpp
|
|
XCoreInstrInfo.cpp
|
|
XCoreISelDAGToDAG.cpp
|
|
XCoreISelLowering.cpp
|
|
XCoreLowerThreadLocal.cpp
|
|
XCoreMachineFunctionInfo.cpp
|
|
XCoreMCInstLower.cpp
|
|
XCoreRegisterInfo.cpp
|
|
XCoreSubtarget.cpp
|
|
XCoreTargetMachine.cpp
|
|
XCoreTargetObjectFile.cpp
|
|
XCoreSelectionDAGInfo.cpp
|
|
)
|
|
|
|
add_dependencies(LLVMXCoreCodeGen intrinsics_gen)
|
|
|
|
add_subdirectory(Disassembler)
|
|
add_subdirectory(InstPrinter)
|
|
add_subdirectory(TargetInfo)
|
|
add_subdirectory(MCTargetDesc)
|