[all-commits] [llvm/llvm-project] ce06d5: AMDGPU: Fix AMDGPUUnifyDivergentExitNodes with no ...

Connor Abbott via All-commits all-commits at lists.llvm.org
Thu Jan 30 02:06:37 PST 2020


  Branch: refs/heads/master
  Home:   https://github.com/llvm/llvm-project
  Commit: ce06d50756e9f59db50378753a42d03b9c3369c4
      https://github.com/llvm/llvm-project/commit/ce06d50756e9f59db50378753a42d03b9c3369c4
  Author: Connor Abbott <cwabbott0 at gmail.com>
  Date:   2020-01-30 (Thu, 30 Jan 2020)

  Changed paths:
    M llvm/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp
    M llvm/test/CodeGen/AMDGPU/kill-infinite-loop.ll
    M llvm/test/CodeGen/AMDGPU/update-phi.ll

  Log Message:
  -----------
  AMDGPU: Fix AMDGPUUnifyDivergentExitNodes with no normal returns

Summary:
The code was assuming in a few places that if there was only one exit
from the function that it was a normal return, which is invalid. It
could be an infinite loop, in which case we still need to insert the
usual fake edge so that the null export happens. This fixes shaders that
end with an infinite loop that discards.

Reviewers: arsenm, nhaehnle, critson

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

Tags: #llvm

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




More information about the All-commits mailing list