[PATCH] D105610: [AMDGPU] Don't handle export done when unify exit nodes

Ruiling, Song via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jul 7 23:36:16 PDT 2021


ruiling created this revision.
ruiling added reviewers: arsenm, critson, foad, mareko, cwabbott.
Herald added subscribers: kerbowa, JDevlieghere, hiraditya, t-tye, tpr, dstuttard, yaxunl, nhaehnle, jvesely, kzhuravl.
ruiling requested review of this revision.
Herald added subscribers: llvm-commits, wdng.
Herald added a project: LLVM.

This patch aims to revert the changes introduced by D70781 <https://reviews.llvm.org/D70781> D71192 <https://reviews.llvm.org/D71192> D76364 <https://reviews.llvm.org/D76364>

D70781 <https://reviews.llvm.org/D70781> was introduced to fix hardware hang where we do not insert exp-
null-done for a kill inside infinit loop. At that time we have not added
exp-null-done for kill early termination, but I believe as for now, we will
always add the exp-null-done for early termination case in LaterBranchLowering.

D71192 <https://reviews.llvm.org/D71192> was introduced to handle the only_kill case, which is also been
handled by the kill early termination work.

D76364 <https://reviews.llvm.org/D76364> was used to fix a regression by D71192 <https://reviews.llvm.org/D71192>, where we cleared the done
bit of the export in the existing program and not let the normal return
block branching to the new unified return block.

With this change, we just trust frontends have setup exp-done correctly
which is true for all existing frontends. The backend only inserts
exp-null-done for the kill cases which is handled in SILateBranchLowering.cpp.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D105610

Files:
  llvm/lib/Target/AMDGPU/AMDGPUUnifyDivergentExitNodes.cpp
  llvm/test/CodeGen/AMDGPU/kill-infinite-loop.ll
  llvm/test/CodeGen/AMDGPU/multi-divergent-exit-region.ll
  llvm/test/CodeGen/AMDGPU/update-phi.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D105610.357144.patch
Type: text/x-patch
Size: 11864 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210708/7d18701b/attachment.bin>


More information about the llvm-commits mailing list