- Added support for return values in affine.for yield along the same lines as scf.for and affine.parallel.
Signed-off-by: Abhishek Varma <abhishek.varma@polymagelabs.com>
| Paths 
 |  Differential  D87437  
[MLIR] Support for return values in Affine.For yield ClosedPublic Authored by avarmapml on Sep 10 2020, 12:22 AM. 
Details Summary 
 Signed-off-by: Abhishek Varma <abhishek.varma@polymagelabs.com> 
Diff Detail 
 Event Timelinebondhugula added inline comments. bondhugula added inline comments. This revision now requires changes to proceed.Sep 10 2020, 9:02 AM Comment Actions LGTM! Just some nit comments! Thanks for contributing this feature! 
 What do you mean exactly? The example in the doc is a reduction. Do you mean that this patch doesn't include the analysis to deal with reductions described using iter_args? 
 Comment Actions I think we definitely need a test for the builder API here to make sure it's working as intended. Please see the other builder API tests for reference in test/EDSC/builder-api-test.cpp. This revision now requires changes to proceed.Sep 14 2020, 4:10 AM Comment Actions Added test case for build method and bug fix 
 
 This revision now requires changes to proceed.Sep 14 2020, 11:28 PM 
 avarmapml marked 8 inline comments as done.Comment Actions Handled review comments and updated test case bondhugula added inline comments. 
 This revision now requires changes to proceed.Sep 15 2020, 9:22 PM 
 This revision is now accepted and ready to land.Sep 17 2020, 1:46 AM Closed by commit rG296e97ae8f71: [MLIR] Support for return values in Affine.For yield (authored by avarmapml, committed by bondhugula).  ·  Explain WhySep 17 2020, 11:05 AM This revision was automatically updated to reflect the committed changes. 
Revision Contents 
 
 
Diff 291138 mlir/include/mlir/Dialect/Affine/IR/AffineOps.td
 mlir/lib/Dialect/Affine/EDSC/Builders.cpp
 mlir/lib/Dialect/Affine/IR/AffineOps.cpp
 mlir/test/Dialect/Affine/invalid.mlir
 mlir/test/Dialect/Affine/ops.mlir
 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
3 loop control values ... <-- this would be inaccurate (copy/paste error).