]> granicus.if.org Git - llvm/commit
AMDGPU: Implement early ifcvt target hooks.
authorMatt Arsenault <Matthew.Arsenault@amd.com>
Wed, 25 Jan 2017 04:25:02 +0000 (04:25 +0000)
committerMatt Arsenault <Matthew.Arsenault@amd.com>
Wed, 25 Jan 2017 04:25:02 +0000 (04:25 +0000)
commit4dc43963efbeaf320e45f65b0ed7cf10b03b4b11
treee6bdd6c70bce8ecd7b33cb849d0b21d97c79af69
parent6e6c6de33b7e944c80bf72549e6fa5d085f9d285
AMDGPU: Implement early ifcvt target hooks.

Leave early ifcvt disabled for now since there are some
shader-db regressions.

This causes some immediate improvements, but could be better.
The cost checking that the pass does is based on critical path
length for out of order CPUs which we do not want so it skips out
on many cases we want.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@293016 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/AMDGPU/AMDGPUSubtarget.h
lib/Target/AMDGPU/AMDGPUTargetMachine.cpp
lib/Target/AMDGPU/SIInstrInfo.cpp
lib/Target/AMDGPU/SIInstrInfo.h
lib/Target/AMDGPU/SISchedule.td
test/CodeGen/AMDGPU/early-if-convert-cost.ll [new file with mode: 0644]
test/CodeGen/AMDGPU/early-if-convert.ll [new file with mode: 0644]
test/CodeGen/AMDGPU/uniform-branch-intrinsic-cond.ll
test/CodeGen/AMDGPU/uniform-cfg.ll