llvm-6502/lib/Target/R600
Christian Konig 6fd49bc89a R600/SI: fix and cleanup SI register definition v2
Prevent producing real strange tablegen code by using
proper register sizes, alignments and hierarchy.

Also cleanup the unused definitions and add some comments.

v2: add SGPR 512 bit registers, stop registers from wrapping around,
    fix SGPR alignment

This is a candidate for the mesa-stable branch.

Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Tom Stellard <thomas.stellard@amd.com>

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@176098 91177308-0d34-0410-b5e6-96231b3b80d8
2013-02-26 17:52:03 +00:00
..
InstPrinter R600/SI: add all the other missing asm operands v2 2013-02-21 15:17:22 +00:00
MCTargetDesc R600/SI: fix stupid typo 2013-02-26 17:51:57 +00:00
TargetInfo
AMDGPU.h R600/SI: cleanup literal handling v3 2013-02-16 11:28:22 +00:00
AMDGPU.td
AMDGPUAsmPrinter.cpp R600/SI: cleanup literal handling v3 2013-02-16 11:28:22 +00:00
AMDGPUAsmPrinter.h
AMDGPUConvertToISA.cpp
AMDGPUFrameLowering.cpp R600: Support for indirect addressing v4 2013-02-06 17:32:29 +00:00
AMDGPUFrameLowering.h R600: Support for indirect addressing v4 2013-02-06 17:32:29 +00:00
AMDGPUIndirectAddressing.cpp R600: Fix tracking of implicit defs in the IndirectAddressing pass 2013-02-19 15:22:42 +00:00
AMDGPUInstrInfo.cpp R600: Support for indirect addressing v4 2013-02-06 17:32:29 +00:00
AMDGPUInstrInfo.h R600: Support for indirect addressing v4 2013-02-06 17:32:29 +00:00
AMDGPUInstrInfo.td R600: Support for indirect addressing v4 2013-02-06 17:32:29 +00:00
AMDGPUInstructions.td R600/SI: simplify VOPC_* pattern v2 2013-02-21 15:17:04 +00:00
AMDGPUIntrinsics.td
AMDGPUISelLowering.cpp R600/SI: Use MULADD_IEEE/V_MAD_F32 instruction for mad pattern 2013-02-18 14:11:28 +00:00
AMDGPUISelLowering.h R600/SI: Use MULADD_IEEE/V_MAD_F32 instruction for mad pattern 2013-02-18 14:11:28 +00:00
AMDGPUMCInstLower.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
AMDGPUMCInstLower.h R600: BB operand support for SI 2012-12-17 15:14:54 +00:00
AMDGPURegisterInfo.cpp R600: Consolidate sub register indices. 2013-02-07 14:02:37 +00:00
AMDGPURegisterInfo.h R600: Support for indirect addressing v4 2013-02-06 17:32:29 +00:00
AMDGPURegisterInfo.td R600: Consolidate sub register indices. 2013-02-07 14:02:37 +00:00
AMDGPUStructurizeCFG.cpp R600/structurizer: improve inverting conditions 2013-02-16 11:27:50 +00:00
AMDGPUSubtarget.cpp
AMDGPUSubtarget.h Remove redundant 'llvm::' qualifications 2013-01-13 16:01:15 +00:00
AMDGPUTargetMachine.cpp R600/SI: cleanup literal handling v3 2013-02-16 11:28:22 +00:00
AMDGPUTargetMachine.h R600: Support for indirect addressing v4 2013-02-06 17:32:29 +00:00
AMDIL7XXDevice.cpp
AMDIL7XXDevice.h
AMDIL.h R600: rework handling of the constants 2013-01-23 02:09:06 +00:00
AMDILBase.td
AMDILCFGStructurizer.cpp Resort the #include lines in include/... and lib/... with the 2013-01-02 10:22:59 +00:00
AMDILDevice.cpp
AMDILDevice.h Remove redundant 'llvm::' qualifications 2013-01-13 16:01:15 +00:00
AMDILDeviceInfo.cpp
AMDILDeviceInfo.h
AMDILDevices.h
AMDILEvergreenDevice.cpp
AMDILEvergreenDevice.h Resort the #include lines in include/... and lib/... with the 2013-01-02 10:22:59 +00:00
AMDILInstrInfo.td R600/SI: Use MULADD_IEEE/V_MAD_F32 instruction for mad pattern 2013-02-18 14:11:28 +00:00
AMDILIntrinsicInfo.cpp Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
AMDILIntrinsicInfo.h Move all of the header files which are involved in modelling the LLVM IR 2013-01-02 11:36:10 +00:00
AMDILIntrinsics.td R600/SI: Use MULADD_IEEE/V_MAD_F32 instruction for mad pattern 2013-02-18 14:11:28 +00:00
AMDILISelDAGToDAG.cpp R600: Do not fold single instruction with more that 3 kcache read 2013-02-14 16:57:19 +00:00
AMDILISelLowering.cpp R600: Update for name changes from r175667. 2013-02-20 21:31:28 +00:00
AMDILNIDevice.cpp Resort the #include lines in include/... and lib/... with the 2013-01-02 10:22:59 +00:00
AMDILNIDevice.h Resort the #include lines in include/... and lib/... with the 2013-01-02 10:22:59 +00:00
AMDILPeepholeOptimizer.cpp R600/AMDILPeepholeOptimizer.cpp: Tweak std::make_pair to satisfy C++11. 2013-01-29 16:31:56 +00:00
AMDILRegisterInfo.td
AMDILSIDevice.cpp Resort the #include lines in include/... and lib/... with the 2013-01-02 10:22:59 +00:00
AMDILSIDevice.h
CMakeLists.txt Target/R600/CMakeLists.txt: Prune SILowerLiteralConstants.cpp corresponding to r175354. 2013-02-16 15:30:28 +00:00
LLVMBuild.txt
Makefile
Processors.td R600: Add an explicit default processor 2013-02-07 19:39:34 +00:00
R600Defines.h R600: Support for indirect addressing v4 2013-02-06 17:32:29 +00:00
R600ExpandSpecialInstrs.cpp R600: improve inputs/interpolation handling 2013-02-05 17:09:14 +00:00
R600InstrInfo.cpp R600: Support for indirect addressing v4 2013-02-06 17:32:29 +00:00
R600InstrInfo.h R600: Support for indirect addressing v4 2013-02-06 17:32:29 +00:00
R600Instructions.td R600: Fix for Unigine when MachineSched is enabled 2013-02-21 15:06:59 +00:00
R600Intrinsics.td R600: Support for TBO 2013-02-18 14:11:19 +00:00
R600ISelLowering.cpp R600: Fix scheduler crash caused by invalid MachinePointerInfo 2013-02-19 15:22:44 +00:00
R600ISelLowering.h R600: Support for indirect addressing v4 2013-02-06 17:32:29 +00:00
R600LowerConstCopy.cpp R600: Do not fold single instruction with more that 3 kcache read 2013-02-14 16:57:19 +00:00
R600MachineFunctionInfo.cpp R600: improve inputs/interpolation handling 2013-02-05 17:09:14 +00:00
R600MachineFunctionInfo.h R600: Support for indirect addressing v4 2013-02-06 17:32:29 +00:00
R600RegisterInfo.cpp R600: Mark all members of the TRegMem register class as reserved 2013-02-19 15:22:45 +00:00
R600RegisterInfo.h Resort the #include lines in include/... and lib/... with the 2013-01-02 10:22:59 +00:00
R600RegisterInfo.td R600: Add AR_X to the R600_TReg_X register class. 2013-02-19 15:22:47 +00:00
R600Schedule.td
SIAnnotateControlFlow.cpp R600/SI: Check for empty stack in SIAnnotateControlFlow::isTopOfStack 2013-02-14 08:00:33 +00:00
SIAssignInterpRegs.cpp
SIInsertWaits.cpp R600: Proper insert S_WAITCNT instructions 2013-01-18 21:15:53 +00:00
SIInstrFormats.td R600/SI: cleanup SIInstrInfo.td and SIInstrFormat.td 2013-02-21 15:16:44 +00:00
SIInstrInfo.cpp R600/SI: cleanup literal handling v3 2013-02-16 11:28:22 +00:00
SIInstrInfo.h R600/SI: cleanup VGPR encoding 2013-02-07 19:39:45 +00:00
SIInstrInfo.td R600/SI: add the missing M*BUF|IMG asm operands 2013-02-21 15:17:17 +00:00
SIInstructions.td R600/SI: fix and cleanup SI register definition v2 2013-02-26 17:52:03 +00:00
SIIntrinsics.td R600/SI: Make sample intrinsic address parameter type overloaded. 2013-02-07 17:02:13 +00:00
SIISelLowering.cpp R600/SI: replace SI_V_CNDLT with a pattern 2013-02-21 15:17:32 +00:00
SIISelLowering.h R600/SI: replace SI_V_CNDLT with a pattern 2013-02-21 15:17:32 +00:00
SILowerControlFlow.cpp R600/SI: cleanup literal handling v3 2013-02-16 11:28:22 +00:00
SIMachineFunctionInfo.cpp
SIMachineFunctionInfo.h
SIRegisterInfo.cpp
SIRegisterInfo.h
SIRegisterInfo.td R600/SI: fix and cleanup SI register definition v2 2013-02-26 17:52:03 +00:00
SISchedule.td