mirror of
https://github.com/RPCS3/llvm.git
synced 2025-02-09 03:56:28 +00:00
![Matt Arsenault](/assets/img/avatar_default.png)
It does not work because of emergency stack slots. This pass was supposed to eliminate dummy registers for the spill instructions, but the register scavenger can introduce more during PrologEpilogInserter, so some would end up left behind if they were needed. The potential for spilling the scratch resource descriptor and offset register makes doing something like this overly complicated. Reserve registers to use for the resource descriptor and use them directly in eliminateFrameIndex. Also removes creating another scratch resource descriptor when directly selecting scratch MUBUF instructions. The choice of which registers are reserved is temporary. For now it attempts to pick the next available registers after the user and system SGPRs. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@254329 91177308-0d34-0410-b5e6-96231b3b80d8
70 lines
2.0 KiB
CMake
70 lines
2.0 KiB
CMake
set(LLVM_TARGET_DEFINITIONS AMDGPU.td)
|
|
|
|
tablegen(LLVM AMDGPUGenRegisterInfo.inc -gen-register-info)
|
|
tablegen(LLVM AMDGPUGenInstrInfo.inc -gen-instr-info)
|
|
tablegen(LLVM AMDGPUGenDAGISel.inc -gen-dag-isel)
|
|
tablegen(LLVM AMDGPUGenCallingConv.inc -gen-callingconv)
|
|
tablegen(LLVM AMDGPUGenSubtargetInfo.inc -gen-subtarget)
|
|
tablegen(LLVM AMDGPUGenIntrinsics.inc -gen-tgt-intrinsic)
|
|
tablegen(LLVM AMDGPUGenMCCodeEmitter.inc -gen-emitter)
|
|
tablegen(LLVM AMDGPUGenDFAPacketizer.inc -gen-dfa-packetizer)
|
|
tablegen(LLVM AMDGPUGenAsmWriter.inc -gen-asm-writer)
|
|
tablegen(LLVM AMDGPUGenAsmMatcher.inc -gen-asm-matcher)
|
|
add_public_tablegen_target(AMDGPUCommonTableGen)
|
|
|
|
add_llvm_target(AMDGPUCodeGen
|
|
AMDILCFGStructurizer.cpp
|
|
AMDGPUAlwaysInlinePass.cpp
|
|
AMDGPUAnnotateKernelFeatures.cpp
|
|
AMDGPUAsmPrinter.cpp
|
|
AMDGPUDiagnosticInfoUnsupported.cpp
|
|
AMDGPUFrameLowering.cpp
|
|
AMDGPUHSATargetObjectFile.cpp
|
|
AMDGPUIntrinsicInfo.cpp
|
|
AMDGPUISelDAGToDAG.cpp
|
|
AMDGPUMCInstLower.cpp
|
|
AMDGPUMachineFunction.cpp
|
|
AMDGPUOpenCLImageTypeLoweringPass.cpp
|
|
AMDGPUSubtarget.cpp
|
|
AMDGPUTargetMachine.cpp
|
|
AMDGPUTargetTransformInfo.cpp
|
|
AMDGPUISelLowering.cpp
|
|
AMDGPUInstrInfo.cpp
|
|
AMDGPUPromoteAlloca.cpp
|
|
AMDGPURegisterInfo.cpp
|
|
R600ClauseMergePass.cpp
|
|
R600ControlFlowFinalizer.cpp
|
|
R600EmitClauseMarkers.cpp
|
|
R600ExpandSpecialInstrs.cpp
|
|
R600InstrInfo.cpp
|
|
R600ISelLowering.cpp
|
|
R600MachineFunctionInfo.cpp
|
|
R600MachineScheduler.cpp
|
|
R600OptimizeVectorRegisters.cpp
|
|
R600Packetizer.cpp
|
|
R600RegisterInfo.cpp
|
|
R600TextureIntrinsicsReplacer.cpp
|
|
SIAnnotateControlFlow.cpp
|
|
SIFixControlFlowLiveIntervals.cpp
|
|
SIFixSGPRCopies.cpp
|
|
SIFixSGPRLiveRanges.cpp
|
|
SIFoldOperands.cpp
|
|
SIFrameLowering.cpp
|
|
SIInsertWaits.cpp
|
|
SIInstrInfo.cpp
|
|
SIISelLowering.cpp
|
|
SILoadStoreOptimizer.cpp
|
|
SILowerControlFlow.cpp
|
|
SILowerI1Copies.cpp
|
|
SIMachineFunctionInfo.cpp
|
|
SIRegisterInfo.cpp
|
|
SIShrinkInstructions.cpp
|
|
SITypeRewriter.cpp
|
|
)
|
|
|
|
add_subdirectory(AsmParser)
|
|
add_subdirectory(InstPrinter)
|
|
add_subdirectory(TargetInfo)
|
|
add_subdirectory(MCTargetDesc)
|
|
add_subdirectory(Utils)
|