llvm-project/llvm/lib/Target/AMDGPU
Nicolai Haehnle 75c98c365b AMDGPU: IMPLICIT_DEFs and DBG_VALUEs do not contribute to wait states
Summary:
This fixes a bug that was exposed on gfx9 in various
GL45-CTS.shaders.loops.*_iterations.select_iteration_count_fragment tests,
e.g. GL45-CTS.shaders.loops.do_while_uniform_iterations.select_iteration_count_fragment

Reviewers: arsenm

Subscribers: kzhuravl, wdng, yaxunl, dstuttard, tpr, t-tye, llvm-commits

Differential Revision: https://reviews.llvm.org/D36193

llvm-svn: 312337
2017-09-01 16:56:32 +00:00
..
AsmParser AMDGPU: Correct operand types for v_mad_mix* 2017-08-30 22:18:40 +00:00
Disassembler [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-10 00:46:15 +00:00
InstPrinter AMDGPU: Add R600InstPrinter class 2017-08-17 22:20:04 +00:00
MCTargetDesc AMDGPU: Add R600InstPrinter class 2017-08-17 22:20:04 +00:00
TargetInfo fix trivial typos; NFC 2017-07-02 03:24:54 +00:00
Utils [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-10 00:46:15 +00:00
AMDGPU.h [AMDGPU] Ported and adopted AMDLibCalls pass 2017-08-11 16:42:09 +00:00
AMDGPU.td AMDGPU: Fix gfx801 features 2017-08-24 20:03:07 +00:00
AMDGPUAliasAnalysis.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-08 23:53:55 +00:00
AMDGPUAliasAnalysis.h [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-08 23:53:55 +00:00
AMDGPUAlwaysInlinePass.cpp [AMDGPU] Testing commit access only, no real change 2017-06-15 23:02:55 +00:00
AMDGPUAnnotateKernelFeatures.cpp [Analysis] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes. Also affected in files (NFC). 2017-08-31 21:56:16 +00:00
AMDGPUAnnotateUniformValues.cpp AMDGPU: Fix converting unanalyzable global loads to SMRD 2017-07-12 23:06:18 +00:00
AMDGPUArgumentUsageInfo.cpp AMDGPU: Fix implicitarg.ptr handling special inputs 2017-08-03 23:12:44 +00:00
AMDGPUArgumentUsageInfo.h [AMDGPU] Fixed MSVC build break 2017-08-04 10:53:07 +00:00
AMDGPUAsmPrinter.cpp AMDGPU: Start adding tail call support 2017-08-11 20:42:08 +00:00
AMDGPUAsmPrinter.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
AMDGPUCallLowering.cpp AMDGPU: Pass special input registers to functions 2017-08-03 23:00:29 +00:00
AMDGPUCallLowering.h AMDGPU: Start defining a calling convention 2017-05-17 21:56:25 +00:00
AMDGPUCallingConv.td AMDGPU: Initial implementation of calls 2017-08-01 19:54:18 +00:00
AMDGPUCodeGenPrepare.cpp AMDGPU : Widen extending scalar loads to 32-bits. 2017-07-26 21:07:28 +00:00
AMDGPUFrameLowering.cpp [AMDGPU] Split R600/SI getFrameIndexReference and emit stack object offsets for SI 2017-03-10 19:39:07 +00:00
AMDGPUFrameLowering.h AMDGPU: Initial implementation of calls 2017-08-01 19:54:18 +00:00
AMDGPUGenRegisterBankInfo.def [GlobalISel] Make GlobalISel a non-optional library. 2017-08-03 21:52:25 +00:00
AMDGPUISelDAGToDAG.cpp AMDGPU: Fix warnings introduced by r310336 2017-08-08 05:52:00 +00:00
AMDGPUISelLowering.cpp AMDGPU: Turn int pack pattern into build_vector 2017-08-31 21:17:22 +00:00
AMDGPUISelLowering.h AMDGPU: Start adding tail call support 2017-08-11 20:42:08 +00:00
AMDGPUInstrInfo.cpp [AMDGPU][MC][GFX9] Added 16-bit renamed and "_legacy" VALU opcodes 2017-08-09 17:10:47 +00:00
AMDGPUInstrInfo.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
AMDGPUInstrInfo.td AMDGPU: Start adding tail call support 2017-08-11 20:42:08 +00:00
AMDGPUInstructionSelector.cpp AMDGPU: Start adding offset fields to flat instructions 2017-06-12 15:55:58 +00:00
AMDGPUInstructionSelector.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
AMDGPUInstructions.td [AMDGPU] Use v_max_f* for fcanonicalize 2017-08-30 03:03:38 +00:00
AMDGPUIntrinsicInfo.cpp Rename AttributeSet to AttributeList 2017-03-21 16:57:19 +00:00
AMDGPUIntrinsicInfo.h
AMDGPUIntrinsics.td AMDGPU: Remove legacy bfe intrinsics 2017-04-03 18:08:08 +00:00
AMDGPULegalizerInfo.cpp [GlobalISel] Make GlobalISel a non-optional library. 2017-08-03 21:52:25 +00:00
AMDGPULegalizerInfo.h Re-commit AMDGPU/GlobalISel: Add support for simple shaders 2017-01-30 21:56:46 +00:00
AMDGPULibCalls.cpp [AMDGPU] Fix regression in AMDGPULibCalls allowing native for doubles 2017-08-28 18:00:08 +00:00
AMDGPULibFunc.cpp Move helper classes into anonymous namespaces. 2017-08-20 13:03:48 +00:00
AMDGPULibFunc.h [AMDGPU] Ported and adopted AMDLibCalls pass 2017-08-11 16:42:09 +00:00
AMDGPULowerIntrinsics.cpp Extend memcpy expansion in Transform/Utils to handle wider operand types. 2017-07-07 02:00:06 +00:00
AMDGPUMCInstLower.cpp AMDGPU: Start adding tail call support 2017-08-11 20:42:08 +00:00
AMDGPUMCInstLower.h
AMDGPUMachineCFGStructurizer.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-08 23:53:55 +00:00
AMDGPUMachineFunction.cpp AMDGPU: Start defining a calling convention 2017-05-17 21:56:25 +00:00
AMDGPUMachineFunction.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
AMDGPUMachineModuleInfo.cpp AMDGPU: Implement memory model 2017-07-21 21:19:23 +00:00
AMDGPUMachineModuleInfo.h AMDGPU: Implement memory model 2017-07-21 21:19:23 +00:00
AMDGPUMacroFusion.cpp AMDGPU: Add macro fusion schedule DAG mutation 2017-07-06 20:57:05 +00:00
AMDGPUMacroFusion.h AMDGPU: Add macro fusion schedule DAG mutation 2017-07-06 20:57:05 +00:00
AMDGPUOpenCLImageTypeLoweringPass.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-08 23:53:55 +00:00
AMDGPUPTNote.h [AMDGPU] Restructure code object metadata creation 2017-03-22 22:32:22 +00:00
AMDGPUPromoteAlloca.cpp [AMDGPU] Fix for issue in alloca to vector promotion pass 2017-06-09 14:16:22 +00:00
AMDGPURegAsmNames.inc.cpp AMDGPU: Work around build special casing .inc files 2017-06-08 19:25:21 +00:00
AMDGPURegisterBankInfo.cpp [GlobalISel] Make GlobalISel a non-optional library. 2017-08-03 21:52:25 +00:00
AMDGPURegisterBankInfo.h Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
AMDGPURegisterBanks.td Re-commit AMDGPU/GlobalISel: Add support for simple shaders 2017-01-30 21:56:46 +00:00
AMDGPURegisterInfo.cpp AMDGPU: Initial implementation of calls 2017-08-01 19:54:18 +00:00
AMDGPURegisterInfo.h AMDGPU: Start defining a calling convention 2017-05-17 21:56:25 +00:00
AMDGPURegisterInfo.td AMDGPU: Move INDIRECT_BASE_ADDR definition out of common files 2017-07-29 03:44:07 +00:00
AMDGPURewriteOutArguments.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-08 23:53:55 +00:00
AMDGPUSubtarget.cpp [AMDGPU][MC][GFX9] Added integer clamping support for VOP3 opcodes 2017-08-16 13:51:56 +00:00
AMDGPUSubtarget.h [AMDGPU][MC][GFX9] Added integer clamping support for VOP3 opcodes 2017-08-16 13:51:56 +00:00
AMDGPUTargetMachine.cpp [AMDGPU] Ported and adopted AMDLibCalls pass 2017-08-11 16:42:09 +00:00
AMDGPUTargetMachine.h AMDGPU: Remove error on calls for amdgcn 2017-08-03 23:24:05 +00:00
AMDGPUTargetObjectFile.cpp Move Object format code to lib/BinaryFormat. 2017-06-07 03:48:56 +00:00
AMDGPUTargetObjectFile.h [AMDGPU] Get address space mapping by target triple environment 2017-03-27 14:04:01 +00:00
AMDGPUTargetTransformInfo.cpp AMDGPU: Don't assert in TTI with fp32 denorms enabled 2017-08-31 05:47:00 +00:00
AMDGPUTargetTransformInfo.h [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-08 23:53:55 +00:00
AMDGPUUnifyDivergentExitNodes.cpp AMDGPU: Unify divergent function exits. 2017-03-24 19:52:05 +00:00
AMDGPUUnifyMetadata.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-10 00:46:15 +00:00
AMDILCFGStructurizer.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-08 23:53:55 +00:00
AMDKernelCodeT.h [AMDGPU] Revert r310429 changes in AMDKernelCodeT.h which broke some build bots. 2017-08-09 00:06:29 +00:00
BUFInstructions.td AMDGPU: Implement memory model 2017-07-21 21:19:23 +00:00
CMakeLists.txt AMDGPU/NFC: Sort files in CMakeLists.txt alphabetically 2017-08-16 16:23:32 +00:00
CaymanInstructions.td
DSInstructions.td [AMDGPU][MC] New syntax for ds_swizzle_b32 offset 2017-05-31 16:26:47 +00:00
EvergreenInstructions.td AMDGPU: Fix unnecessary ands when packing f16 vectors 2017-03-15 19:04:26 +00:00
FLATInstructions.td AMDGPU: Cleanup subtarget features 2017-08-07 14:58:04 +00:00
GCNHazardRecognizer.cpp AMDGPU: IMPLICIT_DEFs and DBG_VALUEs do not contribute to wait states 2017-09-01 16:56:32 +00:00
GCNHazardRecognizer.h AMDGPU: Fix broken condition in hazard recognizer 2017-03-17 21:36:28 +00:00
GCNIterativeScheduler.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-10 00:46:15 +00:00
GCNIterativeScheduler.h [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-10 00:46:15 +00:00
GCNMinRegStrategy.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-08 23:53:55 +00:00
GCNRegPressure.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-10 00:46:15 +00:00
GCNRegPressure.h [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-10 00:46:15 +00:00
GCNSchedStrategy.cpp [CodeGen] Rename DEBUG_TYPE to match passnames 2017-07-11 22:08:28 +00:00
GCNSchedStrategy.h fix typos in comments and error messges; NFC 2017-07-13 06:48:39 +00:00
LLVMBuild.txt AMDGPU: Add GlobalISel to required_libraries. 2017-01-28 18:13:08 +00:00
MIMGInstructions.td [AMDGPU] Fix latency of MIMG instructions 2017-07-04 14:43:38 +00:00
Processors.td AMDGPU: Remove -mcpu=SI 2017-08-07 18:30:35 +00:00
R600ClauseMergePass.cpp AMDGPU/R600: Initialize more passes 2017-08-02 22:19:45 +00:00
R600ControlFlowFinalizer.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-10 00:46:15 +00:00
R600Defines.h
R600EmitClauseMarkers.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
R600ExpandSpecialInstrs.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-10 00:46:15 +00:00
R600FrameLowering.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
R600FrameLowering.h AMDGPU: Initial implementation of calls 2017-08-01 19:54:18 +00:00
R600ISelLowering.cpp Add DAG argument to canMergeStoresTo NFC. 2017-07-10 20:25:54 +00:00
R600ISelLowering.h Add DAG argument to canMergeStoresTo NFC. 2017-07-10 20:25:54 +00:00
R600InstrFormats.td
R600InstrInfo.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
R600InstrInfo.h Cyle -> Cycle; NFCI 2017-03-15 15:37:42 +00:00
R600Instructions.td AMDGPU: Remove deadcode from AMDGPUInstPrinter 2017-07-29 03:56:53 +00:00
R600Intrinsics.td AMDGPU: Make intrinsics speculatable 2017-05-02 16:57:44 +00:00
R600MachineFunctionInfo.cpp
R600MachineFunctionInfo.h
R600MachineScheduler.cpp [CodeGen] Rename DEBUG_TYPE to match passnames 2017-07-11 22:08:28 +00:00
R600MachineScheduler.h [AMDGPU, PowerPC, TableGen] Fix some Clang-tidy modernize and Include What You Use warnings; other minor fixes (NFC). 2016-12-09 22:06:55 +00:00
R600OptimizeVectorRegisters.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-10 00:46:15 +00:00
R600Packetizer.cpp AMDGPU/R600: Initialize more passes 2017-08-02 22:19:45 +00:00
R600RegisterInfo.cpp AMDGPU: Start defining a calling convention 2017-05-17 21:56:25 +00:00
R600RegisterInfo.h AMDGPU: Start defining a calling convention 2017-05-17 21:56:25 +00:00
R600RegisterInfo.td AMDGPU: Move INDIRECT_BASE_ADDR definition out of common files 2017-07-29 03:44:07 +00:00
R600Schedule.td
R700Instructions.td
SIAnnotateControlFlow.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-08 00:47:13 +00:00
SIDebuggerInsertNops.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
SIDefines.h AMDGPU: Fold clamp modifier for packed instructions 2017-08-31 23:53:50 +00:00
SIFixSGPRCopies.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-08 00:47:13 +00:00
SIFixVGPRCopies.cpp [AMDGPU] Add VGPR copies post regalloc fix pass 2017-01-24 17:46:17 +00:00
SIFixWWMLiveness.cpp [AMDGPU] Add support for Whole Wavefront Mode 2017-08-04 18:36:52 +00:00
SIFoldOperands.cpp AMDGPU: Fold clamp modifier for packed instructions 2017-08-31 23:53:50 +00:00
SIFrameLowering.cpp AMDGPU: Pass special input registers to functions 2017-08-03 23:00:29 +00:00
SIFrameLowering.h AMDGPU: Initial implementation of calls 2017-08-01 19:54:18 +00:00
SIISelLowering.cpp AMDGPU: Select clamp pattern with v2f16 2017-08-30 01:20:17 +00:00
SIISelLowering.h AMDGPU: Start adding tail call support 2017-08-11 20:42:08 +00:00
SIInsertSkips.cpp AMDGPU: Rename SI_RETURN 2017-03-21 22:18:10 +00:00
SIInsertWaitcnts.cpp [AMDGPU] NFC: test commit 2017-08-16 16:47:29 +00:00
SIInsertWaits.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-08 00:47:13 +00:00
SIInstrFormats.td AMDGPU: Fold clamp modifier for packed instructions 2017-08-31 23:53:50 +00:00
SIInstrInfo.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-08 00:47:13 +00:00
SIInstrInfo.h AMDGPU: Fold clamp modifier for packed instructions 2017-08-31 23:53:50 +00:00
SIInstrInfo.td AMDGPU: Fold clamp modifier for packed instructions 2017-08-31 23:53:50 +00:00
SIInstructions.td AMDGPU: Turn int pack pattern into build_vector 2017-08-31 21:17:22 +00:00
SIIntrinsics.td AMDGPU: Remove legacy export intrinsic 2017-04-04 16:34:39 +00:00
SILoadStoreOptimizer.cpp AMDGPU: Use set for tracked registers 2017-08-31 01:53:09 +00:00
SILowerControlFlow.cpp [AMDGPU] Preserve inverted bit in SI_IF in presence of SI_KILL 2017-08-04 06:58:42 +00:00
SILowerI1Copies.cpp Sort the remaining #include lines in include/... and lib/.... 2017-06-06 11:49:48 +00:00
SIMachineFunctionInfo.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-08 00:47:13 +00:00
SIMachineFunctionInfo.h AMDGPU: Start adding tail call support 2017-08-11 20:42:08 +00:00
SIMachineScheduler.cpp AMDGPU/SI: Fix Depth and Height computation for SI scheduler 2017-07-25 20:37:03 +00:00
SIMachineScheduler.h AMDGPU/SI: Force exports at the end for SI scheduler 2017-07-25 20:36:58 +00:00
SIMemoryLegalizer.cpp AMDGPU/NFC: Reorder functions in SIMemoryLegalizer: 2017-08-19 18:44:27 +00:00
SIOptimizeExecMasking.cpp [AMDGPU] Turn s_and_saveexec_b64 into s_and_b64 if result is unused 2017-08-01 23:44:35 +00:00
SIOptimizeExecMaskingPreRA.cpp [AMDGPU] Eliminate no effect instructions before s_endpgm 2017-08-16 04:43:49 +00:00
SIPeepholeSDWA.cpp [AMDGPU] Fix some Clang-tidy modernize-use-using and Include What You Use warnings; other minor fixes (NFC). 2017-08-08 00:47:13 +00:00
SIRegisterInfo.cpp AMDGPU: Pass special input registers to functions 2017-08-03 23:00:29 +00:00
SIRegisterInfo.h AMDGPU: Pass special input registers to functions 2017-08-03 23:00:29 +00:00
SIRegisterInfo.td AMDGPU: Initial implementation of calls 2017-08-01 19:54:18 +00:00
SISchedule.td AMDGPU: Implement early ifcvt target hooks. 2017-01-25 04:25:02 +00:00
SIShrinkInstructions.cpp AMDGPU: Allow SIShrinkInstructions to fold FrameIndexes 2017-07-10 20:04:35 +00:00
SIWholeQuadMode.cpp [AMDGPU] Implement llvm.amdgcn.set.inactive intrinsic 2017-08-04 18:36:54 +00:00
SMInstructions.td AMDGPUAnnotateUniformValue should always treat volatile loads as divergent 2017-06-02 15:25:52 +00:00
SOPInstructions.td Resubmit r303859 with test fixed. 2017-05-26 20:38:26 +00:00
VIInstrFormats.td
VIInstructions.td
VOP1Instructions.td [AMDGPU][MC][GFX9] Added integer clamping support for VOP3 opcodes 2017-08-16 13:51:56 +00:00
VOP2Instructions.td [AMDGPU][MC][GFX9] Added integer clamping support for VOP3 opcodes 2017-08-16 13:51:56 +00:00
VOP3Instructions.td [AMDGPU][MC][GFX9] Added op_sel support for v_mad_*16, v_fma_f16, v_div_fixup_f16 2017-08-16 15:16:32 +00:00
VOP3PInstructions.td AMDGPU: Correct operand types for v_mad_mix* 2017-08-30 22:18:40 +00:00
VOPCInstructions.td [AMDGPU] resubmit r308179: CodeGen: check dst operand type to determine if omod is supported for VOP3 instructions 2017-07-18 14:23:26 +00:00
VOPInstructions.td AMDGPU: Fold clamp modifier for packed instructions 2017-08-31 23:53:50 +00:00