This allows for better type inference during bufferization and is in preparation of supporting memory spaces.
Depends On D128580
| Paths 
 |  Differential  D128581  
[mlir][SCF][bufferize] Bufferize scf.if/execute_region terminators separately ClosedPublic Authored by springerm on Jun 25 2022, 3:25 AM. 
Details Summary This allows for better type inference during bufferization and is in preparation of supporting memory spaces. Depends On D128580 
Diff Detail 
 Event TimelineThis revision is now accepted and ready to land.Jun 25 2022, 6:48 AM bondhugula added inline comments. This revision was landed with ongoing or failed builds.Jun 27 2022, 4:22 AM Closed by commit rG8e691e1f245a: [mlir][SCF][bufferize] Bufferize scf.if/execute_region terminators separately (authored by springerm).  ·  Explain Why This revision was automatically updated to reflect the committed changes. 
Revision Contents 
 
 
Diff 439971 mlir/lib/Dialect/SCF/Transforms/BufferizableOpInterfaceImpl.cpp
 mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-allow-return-allocs.mlir
 mlir/test/Dialect/Bufferization/Transforms/one-shot-bufferize-partial.mlir
 mlir/test/Dialect/SCF/one-shot-bufferize.mlir
 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Use llvm::hasSingleElement - it's O(1) instead of O(n) (since the blocks are a linked list).