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

Marcel Koester via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed May 13 04:48:21 PDT 2020


dfki-mako created this revision.
Herald added subscribers: llvm-commits, Kayjukh, frgossen, grosul1, Joonsoo, stephenneuendorffer, liufengdb, aartbik, lucyrfox, mgester, arpith-jacob, nicolasvasilache, antiagainst, shauheen, jpienaar, rriddle, mehdi_amini.
Herald added a project: LLVM.
dfki-mako retitled this revision from "Extended BufferPlacement to support more sophisticated scenarios in which allocations cannot be moved freely and can remain in divergent control flow." to "[mlir] Extended BufferPlacement to support more sophisticated scenarios in which allocations cannot be moved freely and can remain in divergent control flow.".
dfki-mako edited the summary of this revision.
dfki-mako added reviewers: herhut, nicolasvasilache, pifon2a.
dfki-mako added a project: MLIR.

The current BufferPlacement pass does not support allocation nodes that carry additional dependencies (like in the case of dynamic shaped types). These allocations can often not be moved freely and in turn might remain in divergent control-flow branches. This requires a different strategy with respect to block arguments and aliases. This CL adds additional functionality to support allocation nodes in divergent control flow while avoiding memory leaks.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D79850

Files:
  mlir/lib/Transforms/BufferPlacement.cpp
  mlir/test/Transforms/buffer-placement.mlir

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D79850.263667.patch
Type: text/x-patch
Size: 33058 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200513/17d03a81/attachment.bin>


More information about the llvm-commits mailing list