[PATCH] D78802: [MLIR] Propagate input side effect information

Theodore Popp via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 24 03:13:09 PDT 2020


tpopp created this revision.
Herald added subscribers: llvm-commits, Kayjukh, frgossen, grosul1, bader, Joonsoo, liufengdb, lucyrfox, mgester, arpith-jacob, csigg, nicolasvasilache, antiagainst, shauheen, jpienaar, rriddle, mehdi_amini.
Herald added a reviewer: mravishankar.
Herald added a reviewer: antiagainst.
Herald added a reviewer: nicolasvasilache.
Herald added a reviewer: herhut.
Herald added a reviewer: antiagainst.
Herald added a reviewer: aartbik.
Herald added a reviewer: ftynse.
Herald added a project: LLVM.
tpopp added a reviewer: rriddle.

Previously operations like std.load created methods for obtaining their
effects but did not inherit from the SideEffect interfaces when their
parameters were decorated with the information. The resulting situation
was that passes had no information on the SideEffects of std.load/store
and had to treat them more cautiously. This adds the inheritance
information when creating the methods.

As a side effect, many tests are modified, as they were using std.load
for testing and this oepration would be folded away as part of pattern
rewriting. Tests are modified to use store or to reutn the result of the
std.load.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D78802

Files:
  mlir/include/mlir/Interfaces/SideEffects.td
  mlir/include/mlir/Support/LLVM.h
  mlir/include/mlir/TableGen/OpClass.h
  mlir/include/mlir/TableGen/SideEffects.h
  mlir/lib/TableGen/OpClass.cpp
  mlir/lib/TableGen/SideEffects.cpp
  mlir/test/Conversion/StandardToSPIRV/legalization.mlir
  mlir/test/Conversion/VectorToLoops/vector-to-loops.mlir
  mlir/test/Dialect/Affine/canonicalize.mlir
  mlir/test/Dialect/GPU/all-reduce-max.mlir
  mlir/test/Dialect/GPU/all-reduce.mlir
  mlir/test/Dialect/Linalg/loops.mlir
  mlir/test/Dialect/Linalg/parallel_loops.mlir
  mlir/test/Transforms/canonicalize.mlir
  mlir/tools/mlir-tblgen/OpDefinitionsGen.cpp

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D78802.259841.patch
Type: text/x-patch
Size: 28749 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200424/61dc4a26/attachment.bin>


More information about the llvm-commits mailing list