llvm/lib/Target/R600
Tom Stellard 33aca6d4a0 R600/SI: Clean up checks for legality of immediate operands
There are new register classes VCSrc_* which represent operands that
can take an SGPR, VGPR or inline constant.  The VSrc_* class is now used
to represent operands that can take an SGPR, VGPR, or a 32-bit
immediate.

This allows us to have more accurate checks for legality of
immediates, since before we had no way to distinguish between operands
that supported any 32-bit immediate and operands which could only
support inline constants.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@218334 91177308-0d34-0410-b5e6-96231b3b80d8
2014-09-23 21:26:25 +00:00
..
InstPrinter Use llvm_unreachable instead of assert(!) 2014-09-21 17:27:31 +00:00
MCTargetDesc R600/SI: Clean up checks for legality of immediate operands 2014-09-23 21:26:25 +00:00
TargetInfo Prune redundant dependencies in LLVMBuild.txt. 2013-12-11 00:30:57 +00:00
AMDGPU.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
AMDGPU.td R600/SI: Add preliminary support for flat address space 2014-09-15 15:41:53 +00:00
AMDGPUAsmPrinter.cpp R600/SI: Fix config value for number of gprs 2014-09-19 20:42:37 +00:00
AMDGPUAsmPrinter.h R600/SI: Add preliminary support for flat address space 2014-09-15 15:41:53 +00:00
AMDGPUCallingConv.td Remove the target machine from CCState. Previously it was only used 2014-08-06 18:45:26 +00:00
AMDGPUFrameLowering.cpp Fix typo 2014-06-14 04:26:07 +00:00
AMDGPUFrameLowering.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
AMDGPUInstrInfo.cpp R600: Increase nearby load scheduling threshold. 2014-08-06 00:29:49 +00:00
AMDGPUInstrInfo.h R600/SI: Add preliminary support for flat address space 2014-09-15 15:41:53 +00:00
AMDGPUInstrInfo.td R600/SI: Use mad for fsub + fmul 2014-08-29 16:01:14 +00:00
AMDGPUInstructions.td Revert "R600/SI: Add support for global atomic add" 2014-09-22 16:44:04 +00:00
AMDGPUIntrinsicInfo.cpp Move R600 subtarget dependent variables onto the subtarget. 2014-07-25 22:22:39 +00:00
AMDGPUIntrinsicInfo.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
AMDGPUIntrinsics.td R600: Remove intrinsics that appear to be unused 2014-07-15 20:10:27 +00:00
AMDGPUISelDAGToDAG.cpp Revert "R600/SI: Add support for global atomic add" 2014-09-22 16:44:04 +00:00
AMDGPUISelLowering.cpp R600: Don't set BypassSlowDiv for 64-bit division 2014-09-22 15:35:32 +00:00
AMDGPUISelLowering.h R600: Custom lower frem 2014-09-10 21:44:27 +00:00
AMDGPUMachineFunction.cpp R600/SI: Add preliminary support for flat address space 2014-09-15 15:41:53 +00:00
AMDGPUMachineFunction.h R600/SI: Add preliminary support for flat address space 2014-09-15 15:41:53 +00:00
AMDGPUMCInstLower.cpp Remove the TargetMachine forwards for TargetSubtargetInfo based 2014-08-04 21:25:23 +00:00
AMDGPUMCInstLower.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
AMDGPUPromoteAlloca.cpp R600/SI: Fix promote alloca pass breaking addrspacecast 2014-09-15 15:41:44 +00:00
AMDGPURegisterInfo.cpp R600: Move AMDGPUInstrInfo from AMDGPUTargetMachine into AMDGPUSubtarget 2014-06-13 01:32:00 +00:00
AMDGPURegisterInfo.h Add override to overriden virtual methods, remove virtual keywords. 2014-09-03 11:41:21 +00:00
AMDGPURegisterInfo.td Make SubRegIndex size mandatory, following r183020. 2013-05-31 23:45:26 +00:00
AMDGPUSubtarget.cpp R600/SI: Add preliminary support for flat address space 2014-09-15 15:41:53 +00:00
AMDGPUSubtarget.h R600/SI: Add preliminary support for flat address space 2014-09-15 15:41:53 +00:00
AMDGPUTargetMachine.cpp Add override to overriden virtual methods, remove virtual keywords. 2014-09-03 11:41:21 +00:00
AMDGPUTargetMachine.h Reverting NFC changes from r218050. Instead, the warning was disabled for GCC in r218059, so these changes are no longer required. 2014-09-18 17:34:23 +00:00
AMDGPUTargetTransformInfo.cpp Add a new pass FunctionTargetTransformInfo. This pass serves as a 2014-09-18 00:34:14 +00:00
AMDILCFGStructurizer.cpp Fix typos: 2014-08-11 18:04:46 +00:00
CaymanInstructions.td R600: Match rcp node on pre-SI 2014-07-24 06:59:24 +00:00
CMakeLists.txt Reinstate "Nuke the old JIT." 2014-09-02 22:28:02 +00:00
EvergreenInstructions.td R600: Add cmpxchg instruction for evergreen 2014-09-11 15:02:54 +00:00
LLVMBuild.txt Prune Redundant libdeps in CMake's target_link_libraries and LLVMBuild.txt. 2014-07-15 11:37:03 +00:00
Makefile
Processors.td R600/SI: Add processor type for Mullins. 2014-05-02 15:41:49 +00:00
R600ClauseMergePass.cpp Have MachineFunction cache a pointer to the subtarget to make lookups 2014-08-05 02:39:49 +00:00
R600ControlFlowFinalizer.cpp Have MachineFunction cache a pointer to the subtarget to make lookups 2014-08-05 02:39:49 +00:00
R600Defines.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
R600EmitClauseMarkers.cpp Have MachineFunction cache a pointer to the subtarget to make lookups 2014-08-05 02:39:49 +00:00
R600ExpandSpecialInstrs.cpp Have MachineFunction cache a pointer to the subtarget to make lookups 2014-08-05 02:39:49 +00:00
R600InstrFormats.td R600: Use SchedModel enum for is{Trans,Vector}Only functions 2013-09-04 19:53:30 +00:00
R600InstrInfo.cpp Have MachineFunction cache a pointer to the subtarget to make lookups 2014-08-05 02:39:49 +00:00
R600InstrInfo.h Add override to overriden virtual methods, remove virtual keywords. 2014-09-03 11:41:21 +00:00
R600Instructions.td R600: Fix FROUND 2014-09-05 14:26:54 +00:00
R600Intrinsics.td R600: Reenable llvm.R600.load.input/interp.input for compatibility 2013-11-12 16:26:47 +00:00
R600ISelLowering.cpp R600: Add cmpxchg instruction for evergreen 2014-09-11 15:02:54 +00:00
R600ISelLowering.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
R600MachineFunctionInfo.cpp [weak vtables] Remove a bunch of weak vtables 2013-11-19 00:57:56 +00:00
R600MachineFunctionInfo.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
R600MachineScheduler.cpp Fix float division-by-zero in R600 scheduler. 2014-09-17 17:47:21 +00:00
R600MachineScheduler.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
R600OptimizeVectorRegisters.cpp Have MachineFunction cache a pointer to the subtarget to make lookups 2014-08-05 02:39:49 +00:00
R600Packetizer.cpp Cleanup: Delete seemingly unused reference to MachineDominatorTree from ScheduleDAGInstrs. 2014-08-20 20:57:26 +00:00
R600RegisterInfo.cpp R600: Remove AMDIL instruction and register definitions 2014-06-13 16:38:59 +00:00
R600RegisterInfo.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
R600RegisterInfo.td R600: Use LDS and vectors for private memory 2014-06-17 16:53:14 +00:00
R600Schedule.td R600: Add local memory support via LDS 2013-06-28 15:47:08 +00:00
R600TextureIntrinsicsReplacer.cpp [C++11] Add 'override' keywords and remove 'virtual'. Additionally add 'final' and leave 'virtual' on some methods that are marked virtual without overriding anything and have no obvious overrides themselves. R600 edition 2014-04-29 07:57:24 +00:00
R700Instructions.td R600: Reorganize tablegen instruction definitions 2014-03-24 16:07:25 +00:00
SIAnnotateControlFlow.cpp R600/SI: SI Control Flow Annotation bug fixed 2014-06-20 17:06:02 +00:00
SIDefines.h R600/SI: Add preliminary support for flat address space 2014-09-15 15:41:53 +00:00
SIFixSGPRCopies.cpp Have MachineFunction cache a pointer to the subtarget to make lookups 2014-08-05 02:39:49 +00:00
SIFixSGPRLiveRanges.cpp Remove 'virtual' keyword from methods markedwith 'override' keyword. 2014-08-30 16:48:34 +00:00
SIInsertWaits.cpp Have MachineFunction cache a pointer to the subtarget to make lookups 2014-08-05 02:39:49 +00:00
SIInstrFormats.td R600/SI: Add preliminary support for flat address space 2014-09-15 15:41:53 +00:00
SIInstrInfo.cpp R600/SI: Clean up checks for legality of immediate operands 2014-09-23 21:26:25 +00:00
SIInstrInfo.h R600/SI: Clean up checks for legality of immediate operands 2014-09-23 21:26:25 +00:00
SIInstrInfo.td R600/SI: Clean up checks for legality of immediate operands 2014-09-23 21:26:25 +00:00
SIInstructions.td Revert "R600/SI: Add support for global atomic add" 2014-09-22 16:44:04 +00:00
SIIntrinsics.td R600/SI: Use i32 vectors for resources and samplers 2014-07-11 17:11:52 +00:00
SIISelLowering.cpp R600/SI: Clean up checks for legality of immediate operands 2014-09-23 21:26:25 +00:00
SIISelLowering.h R600/SI: Remove promotion of instructions to e64 forms. 2014-09-17 15:35:43 +00:00
SILowerControlFlow.cpp R600/SI: Add preliminary support for flat address space 2014-09-15 15:41:53 +00:00
SILowerI1Copies.cpp R600/SI: Remove modifier operands from V_CNDMASK_B32_e64 2014-09-22 15:35:34 +00:00
SIMachineFunctionInfo.cpp R600/SI: Remove unused SGPR spilling code 2014-08-21 20:40:56 +00:00
SIMachineFunctionInfo.h R600/SI: Remove unused SGPR spilling code 2014-08-21 20:40:56 +00:00
SIRegisterInfo.cpp R600/SI: Clean up checks for legality of immediate operands 2014-09-23 21:26:25 +00:00
SIRegisterInfo.h R600/SI: Clean up checks for legality of immediate operands 2014-09-23 21:26:25 +00:00
SIRegisterInfo.td R600/SI: Clean up checks for legality of immediate operands 2014-09-23 21:26:25 +00:00
SISchedule.td
SIShrinkInstructions.cpp Fix typo 2014-09-21 17:27:32 +00:00
SITypeRewriter.cpp Use cast<> instead of dyn_cast + assert 2014-07-05 21:16:43 +00:00