[PATCH] D79850: [mlir] Extended BufferPlacement to support more sophisticated scenarios in which allocations cannot be moved freely and can remain in divergent control flow.

Stephan Herhut via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Mon Jun 8 07:38:25 PDT 2020


herhut accepted this revision.
herhut added a comment.
This revision is now accepted and ready to land.
Herald added a subscriber: msifontes.

Thanks. This looks correct to me now.

You mentioned offline that you added a test for the case that was not covered before. I did not find it in this CL though.



================
Comment at: mlir/lib/Transforms/BufferPlacement.cpp:305
+    // Detect possibly unsafe aliases starting from all allocations.
+    for (auto &entry : allocs)
+      findUnsafeValues(entry.allocValue, entry.placementBlock);
----------------
You could also populate `toProcess` here and then just have the loop below. This works for me too, though.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D79850/new/

https://reviews.llvm.org/D79850





More information about the llvm-commits mailing list