[PATCH] D85603: IR: Add convergence control operand bundle and intrinsics

Eli Friedman via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Aug 10 12:09:35 PDT 2020


efriedma added inline comments.


================
Comment at: llvm/docs/ConvergentOperations.rst:365
+   due to a call from IR, then the thread cannot "spontaneously converge" with
+   threads that execute the function for some other reason.)
+
----------------
nhaehnle wrote:
> efriedma wrote:
> > I'd prefer to define the "call stack" abstraction in a way that doesn't assume the whole world is LLVM IR.
> @efriedma
> > I'd prefer to define the "call stack" abstraction in a way that doesn't assume the whole world is LLVM IR.
> 
> It's already **explicitly** written in a way that doesn't assume the whole world is LLVM IR. The rule **only** makes a statement about what happens when the function is called from LLVM IR, and leaves open what happens if the function is called through some other mechanism. I don't see what else we can do here.
The part that's sort of unclear is that calls coming from outside of LLVM IR may or may not be part of the same dynamic instance.  Obviously we can't define that here, but I think we should explicitly note it as something that's implementation-defined.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D85603



More information about the llvm-commits mailing list