[PATCH] D90809: [amdgpu] Add `llvm.amdgcn.endpgm` support.

Michael Liao via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Nov 5 13:13:55 PST 2020


hliao marked an inline comment as done.
hliao added a comment.

In D90809#2377083 <https://reviews.llvm.org/D90809#2377083>, @rampitec wrote:

> In D90809#2376994 <https://reviews.llvm.org/D90809#2376994>, @b-sumner wrote:
>
>> Should this also be IntrConvergent?
>
> Probably yes... This is control flow after all.

The real effect of this intrinsic seems not changed if it's moved somewhere. For example,

convert this

  if (a || b)
    endpgm();

to

  if (a)
    endpgm();
  else if (b)
    endpgm();

no matter a or b are divergent or not, it works the same as the original one as `s_endpgm` is a scalar instruction. Ofc, if we really doubt bad things may happen, I could add that for safety as we definitely will revise this later.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D90809/new/

https://reviews.llvm.org/D90809



More information about the llvm-commits mailing list