[all-commits] [llvm/llvm-project] 08da34: [Convergence] allow non-convergent ops before entr...
Sameer Sahasrabuddhe via All-commits
all-commits at lists.llvm.org
Mon Sep 11 05:56:20 PDT 2023
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 08da343750be3ff6940ebca35be6a3bfd38cc5de
https://github.com/llvm/llvm-project/commit/08da343750be3ff6940ebca35be6a3bfd38cc5de
Author: Sameer Sahasrabuddhe <41661541+ssahasra at users.noreply.github.com>
Date: 2023-09-11 (Mon, 11 Sep 2023)
Changed paths:
M llvm/docs/ConvergentOperations.rst
M llvm/include/llvm/ADT/GenericConvergenceVerifier.h
M llvm/include/llvm/IR/GenericConvergenceVerifierImpl.h
M llvm/test/Verifier/convergencectrl-invalid.ll
Log Message:
-----------
[Convergence] allow non-convergent ops before entry and loop intrinsics (#65939)
The only real requirement is that entry and loop intrinsics should not
be preceded by convergent operations in the same basic block. They do
not need to be the first in the block.
Relaxing the constraint on the entry and loop intrinsics avoids having
to make changes in the construction of LLVM IR, such as
getFirstInsertionPt(). It also avoids added complexity in the lowering
to Machine IR, where COPY instructions may be added to the start of the
basic block.
More information about the All-commits
mailing list