llvm-6502/lib/Target/R600
Matt Arsenault a5f45d5444 R600/SI: Fix using mad with multiplies by 2
These turn into fadds, so combine them into the target
mad node.

fadd (fadd (a, a), b) -> mad 2.0, a, b

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@218608 91177308-0d34-0410-b5e6-96231b3b80d8
2014-09-29 14:59:34 +00:00
..
InstPrinter R600/SI: Fix emitting trailing whitespace after s_waitcnt 2014-09-26 01:09:46 +00:00
MCTargetDesc R600/SI: Clean up checks for legality of immediate operands 2014-09-23 21:26:25 +00:00
TargetInfo
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: Implement VGPR register spilling for compute at -O0 v3 2014-09-24 01:33:17 +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
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 R600/SI: Add support for global atomic add 2014-09-25 18:30:26 +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
AMDGPUISelDAGToDAG.cpp R600/SI: Add support for global atomic add 2014-09-25 18:30:26 +00:00
AMDGPUISelLowering.cpp R600/SI: Add a note about the order of the operands to div_scale 2014-09-26 17:55:09 +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
AMDGPURegisterInfo.h Add override to overriden virtual methods, remove virtual keywords. 2014-09-03 11:41:21 +00:00
AMDGPURegisterInfo.td
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 R600/SI: Fix the FixSGPRLiveRanges pass 2014-09-24 01:33:24 +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
Makefile
Processors.td
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
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
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
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
R600RegisterInfo.h Canonicalize header guards into a common format. 2014-08-13 16:26:38 +00:00
R600RegisterInfo.td
R600Schedule.td
R600TextureIntrinsicsReplacer.cpp
R700Instructions.td
SIAnnotateControlFlow.cpp
SIDefines.h R600/SI: Add preliminary support for flat address space 2014-09-15 15:41:53 +00:00
SIFixSGPRCopies.cpp R600/SI: Move PHIs that define SGPRs to the VALU in most cases 2014-09-24 01:33:26 +00:00
SIFixSGPRLiveRanges.cpp R600/SI: Fix the FixSGPRLiveRanges pass 2014-09-24 01:33:24 +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: Partially move operand legalization to post-isel hook. 2014-09-26 17:54:59 +00:00
SIInstrInfo.cpp R600/SI: Use break instead of continue 2014-09-26 17:55:14 +00:00
SIInstrInfo.h R600/SI: Move finding SGPR operand to move to separate function 2014-09-26 17:55:06 +00:00
SIInstrInfo.td R600/SI: Add support for global atomic add 2014-09-25 18:30:26 +00:00
SIInstructions.td R600/SI: Add support for global atomic add 2014-09-25 18:30:26 +00:00
SIIntrinsics.td
SIISelLowering.cpp R600/SI: Fix using mad with multiplies by 2 2014-09-29 14:59:34 +00:00
SIISelLowering.h R600/SI: Partially move operand legalization to post-isel hook. 2014-09-26 17:54:59 +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: Implement VGPR register spilling for compute at -O0 v3 2014-09-24 01:33:17 +00:00
SIMachineFunctionInfo.h R600/SI: Implement VGPR register spilling for compute at -O0 v3 2014-09-24 01:33:17 +00:00
SIRegisterInfo.cpp R600/SI: Add new helper isSGPRClassID 2014-09-24 02:17:12 +00:00
SIRegisterInfo.h R600/SI: Add new helper isSGPRClassID 2014-09-24 02:17:12 +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