[PATCH] D78397: [mlir][Transforms] Add pass to perform sparse conditional constant propagation

River Riddle via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Apr 17 12:58:55 PDT 2020


rriddle created this revision.
rriddle added reviewers: mehdi_amini, jpienaar.
Herald added subscribers: llvm-commits, frgossen, grosul1, Joonsoo, liufengdb, aartbik, lucyrfox, mgester, arpith-jacob, nicolasvasilache, antiagainst, shauheen, burmako, mgorny.
Herald added a project: LLVM.

This revision adds the initial pass for performing SCCP generically in MLIR. SCCP is an algorithm for propagating constants across control flow, and optimistically assumes all values to be constant unless proven otherwise. It currently supports branching control, with support for regions and inter-procedural propagation being added in followups.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D78397

Files:
  mlir/include/mlir/Dialect/StandardOps/IR/Ops.td
  mlir/include/mlir/Interfaces/ControlFlowInterfaces.td
  mlir/include/mlir/Transforms/FoldUtils.h
  mlir/include/mlir/Transforms/Passes.h
  mlir/include/mlir/Transforms/Passes.td
  mlir/lib/Dialect/StandardOps/IR/Ops.cpp
  mlir/lib/Transforms/CMakeLists.txt
  mlir/lib/Transforms/SCCP.cpp
  mlir/lib/Transforms/Utils/FoldUtils.cpp
  mlir/test/Transforms/sccp.mlir

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D78397.258404.patch
Type: text/x-patch
Size: 29690 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200417/807ff13b/attachment.bin>


More information about the llvm-commits mailing list