[Mlir-commits] [mlir] [mlir][spirv] Split conditional basic blocks during deserialization (PR #127639)
Jakub Kuderski
llvmlistbot at llvm.org
Fri Feb 21 08:33:16 PST 2025
================
@@ -2158,13 +2158,54 @@ LogicalResult spirv::Deserializer::wireUpBlockArgument() {
return success();
}
+LogicalResult spirv::Deserializer::splitConditionalBlocks() {
+ for (auto it = blockMergeInfo.begin(); it != blockMergeInfo.end(); ++it) {
+ auto &[block, mergeInfo] = *it;
+
+ // Skip processing loop regions. For loop regions continueBlock is non-null.
+ if (mergeInfo.continueBlock)
+ continue;
+
+ if (!block->mightHaveTerminator())
+ continue;
+
+ Operation *terminator = block->getTerminator();
+ assert(terminator != nullptr);
----------------
kuhar wrote:
```suggestion
assert(terminator);
```
https://github.com/llvm/llvm-project/pull/127639
More information about the Mlir-commits
mailing list