Commit Graph

5 Commits

Author SHA1 Message Date
Tim Renouf c5c3a34221 [StructurizeCFG] Enable -structurizecfg-relaxed-uniform-regions by default
D62198 introduced an option to relax the checks for
hasOnlyUniformBranches. This commit turns the option on by default, for
better code generation in some cases in AMDGPU.

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

Change-Id: I9cbff002a1e74d3b7eb96b4192dc8129936d537d

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@368042 91177308-0d34-0410-b5e6-96231b3b80d8
2019-08-06 14:30:19 +00:00
Adam Nemet 796005d4a1 Revert "StructurizeCFG: Test for branch divergence correctly"
This reverts commit r325881.

Breaks many bots

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@326037 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-24 17:29:09 +00:00
Nicolai Haehnle d9086c893c StructurizeCFG: Test for branch divergence correctly
Summary:
This fixes cases like the new test @nonuniform. In that test, %cc itself
is a uniform value; however, when reading it after the end of the loop in
basic block %if, its value is effectively non-uniform.

This problem was encountered in
https://bugs.freedesktop.org/show_bug.cgi?id=103743; however, this change
in itself is not sufficient to fix that bug, as there is another issue
in the AMDGPU backend.

Change-Id: I32bbffece4a32f686fab54964dae1a5dd72949d4

Reviewers: arsenm, rampitec, jlebar

Subscribers: wdng, tpr, llvm-commits

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

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@325881 91177308-0d34-0410-b5e6-96231b3b80d8
2018-02-23 10:45:46 +00:00
Matt Arsenault 2d1082f2c0 AMDGPU: Fix missing skipFunction calls
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@315361 91177308-0d34-0410-b5e6-96231b3b80d8
2017-10-10 20:48:36 +00:00
Matt Arsenault 16961e0820 AMDGPU: Fix failure to select branch with optnone
opt-bisect/optnone disable the AMDGPUUniformAnnotateValues pass.
The heuristic in the custom selector for brcond deferred the
branch uniformity check to the pattern, which would fail.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@315360 91177308-0d34-0410-b5e6-96231b3b80d8
2017-10-10 20:34:49 +00:00