[llvm-branch-commits] [llvm] [AMDGPU][UnifyDivergentExitNodes][StructurizeCFG] Add support for callbr instruction with inline-asm (PR #152161)

Sameer Sahasrabuddhe via llvm-branch-commits llvm-branch-commits at lists.llvm.org
Thu Aug 14 01:19:25 PDT 2025


================
@@ -1284,13 +1283,13 @@ bool StructurizeCFG::makeUniformRegion(Region *R, UniformityInfo &UA) {
 
 /// Run the transformation for each region found
 bool StructurizeCFG::run(Region *R, DominatorTree *DT) {
-  if (R->isTopLevelRegion())
+  // CallBr and its corresponding blocks must not be modified by this pass.
----------------
ssahasra wrote:

My question was for this comment as well as the actual code change on the following line. When we see a CallBrInst, we don't structurize that region. What does that mean? Is it because there is nothing to structurize there? Is it because all child regions are arranged in this region in a way that does not require structurizing?

https://github.com/llvm/llvm-project/pull/152161


More information about the llvm-branch-commits mailing list