- Oct 27, 2020
-
-
River Riddle authored
There are several pieces of pattern rewriting infra in IR/ that really shouldn't be there. This revision moves those pieces to a better location such that they are easier to evolve in the future(e.g. with PDL). More concretely this revision does the following: * Create a Transforms/GreedyPatternRewriteDriver.h and move the apply*andFold methods there. The definitions for these methods are already in Transforms/ so it doesn't make sense for the declarations to be in IR. * Create a new lib/Rewrite library and move PatternApplicator there. This new library will be focused on applying rewrites, and will also include compiling rewrites with PDL. Differential Revision: https://reviews.llvm.org/D89103
-
- Jul 09, 2020
-
-
Stella Laurenzo authored
Summary: * Native '_mlir' extension module. * Python mlir/__init__.py trampoline module. * Lit test that checks a message. * Uses some cmake configurations that have worked for me in the past but likely needs further elaboration. Subscribers: mgorny, mehdi_amini, rriddle, jpienaar, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, aartbik, liufengdb, stephenneuendorffer, Joonsoo, grosul1, Kayjukh, jurahul, msifontes Tags: #mlir Differential Revision: https://reviews.llvm.org/D83279
-
- Jul 08, 2020
-
-
Mauricio Sifontes authored
Create the framework and testing environment for MLIR Reduce - a tool with the objective to reduce large test cases into smaller ones while preserving their interesting behavior. Implement the functionality to parse command line arguments, parse the MLIR test cases into modules and run the interestingness tests on the modules. Reviewed By: jpienaar Differential Revision: https://reviews.llvm.org/D82803
-
- Jul 07, 2020
-
-
Mehdi Amini authored
This reverts commit 28a45d54. Windows bot is broken with: LLVM ERROR: Error running interestingness test: posix_spawn failed: Permission denied
-
Mauricio Sifontes authored
with the objective to reduce large test cases into smaller ones while preserving their interesting behavior. Implement the framework to parse the command line arguments, parse the input MLIR test case into a module and call reduction passes on the MLIR module. Implement the Tester class which allows the different reduction passes to test the interesting behavior of the generated reduced variants of the test case and keep track of the most reduced generated variant.
-
- Apr 10, 2020
-
-
River Riddle authored
Summary: This avoids adding any additional global constructors, like cl::opt. There is a temporary exception on IR/, which has a few cl::opts that require a bit of plumbing to remove. Differential Revision: https://reviews.llvm.org/D77824
-
- Apr 07, 2020
-
-
Stella Laurenzo authored
Summary: * Removal of FxpMathOps was discussed on the mailing list. * Will send a courtesy note about also removing the Quantizer (which had some dependencies on FxpMathOps). * These were only ever used for experimental purposes and we know how to get them back from history as needed. * There is a new proposal for more generalized quantization tooling, so moving these older experiments out of the way helps clean things up. Subscribers: mgorny, mehdi_amini, rriddle, jpienaar, burmako, shauheen, antiagainst, nicolasvasilache, arpith-jacob, mgester, lucyrfox, liufengdb, Joonsoo, grosul1, llvm-commits Tags: #llvm Differential Revision: https://reviews.llvm.org/D77479
-
- Mar 10, 2020
-
-
River Riddle authored
The interfaces themselves aren't really analyses, they may be used by analyses though. Having them in Analysis can also create cyclic dependencies if an analysis depends on a specific dialect, that also provides one of the interfaces. Differential Revision: https://reviews.llvm.org/D75867
-
- Aug 21, 2019
-
-
River Riddle authored
PiperOrigin-RevId: 264482571
-
- Aug 20, 2019
-
-
Nicolas Vasilache authored
PiperOrigin-RevId: 264277760
-
- Aug 19, 2019
-
-
River Riddle authored
PiperOrigin-RevId: 264193915
-
- Jul 25, 2019
-
-
Alex Zinenko authored
Per tacit agreement, individual dialects should now live in lib/Dialect/Name with headers in include/mlir/Dialect/Name and tests in test/Dialect/Name. PiperOrigin-RevId: 259896851
-
- Jul 16, 2019
-
-
Lei Zhang authored
PiperOrigin-RevId: 258345603
-
- Jun 20, 2019
-
-
Alex Zinenko authored
This converts entire loops into threads/blocks. No check on the size of the block or grid, or on the validity of parallelization is performed, it is under the responsibility of the caller to strip-mine the loops and to perform the dependence analysis before calling the conversion. PiperOrigin-RevId: 253189268
-
- Jun 02, 2019
-
-
Lei Zhang authored
This CL sets up the basic structure for a SPIR-V dialect: operation definition specification, dialect registration, testing, etc. A single op, FMul, is defined and tested to showcase. The SPIR-V dialect aims to be a simple proxy for the SPIR-V binary format to enable straightforward and lightweight conversion from/to the binary format. Ops in this dialect should stay as the same semantic level and try to be a mechanical mapping to the corresponding SPIR-V instructions; but they can deviate representationally to allow using MLIR mechanisms. -- PiperOrigin-RevId: 250040830
-
Alex Zinenko authored
We now have sufficient extensibility in dialects to move attribute components such as SDBM out of the core IR into a dedicated dialect and make them optional. Introduce an SDBM dialect and move the code. This is a mostly non-functional change. -- PiperOrigin-RevId: 249244802
-
Stella Laurenzo authored
This adds the basic passes needed and ties them into mlir-opt. Also adds two specific unit tests that exercise them. Next step is a standalone quantizer tool and additional cleanup. Tested: ninja check-mlir -- PiperOrigin-RevId: 249167690
-
- May 20, 2019
-
-
Stella Laurenzo authored
Adding the additional layer of directory was discussed offline and matches the Target/ tree. The names match the defacto convention we seem to be following where the C++ namespace is ^(.+)Ops/$ matched against the directory name. This is in preparation for patching the Quantizer into this tree, which would have been confusing without moving the Quantization dialect to its more proper home. It is left to others to move other dialects if desired. Tested: ninja check-mlir -- PiperOrigin-RevId: 248171982
-
- May 06, 2019
-
-
Alex Zinenko authored
Define a new dialect related to GPU kernels. Currently, it only contains a single operation for launching a kernel on a three-dimensional grid of thread blocks, following a model similar to that of CUDA. In particular, the body of the kernel contains operations executed by each thread and uses region arguments to accept thread and block identifiers (similar to how the loop body region accepts the induction value). -- PiperOrigin-RevId: 245713728
-
- Apr 18, 2019
-
-
Nicolas Vasilache authored
This CL starts implementing a Linalg dialect with the objective of supporting optimizing compilation of loops and library calls for a subset of common linear algebra operations. This CL starts by simply adding a linalg.range type and an operation with the proper roundtripping test. -- PiperOrigin-RevId: 244189468
-
- Apr 04, 2019
-
-
Stella Laurenzo authored
Add CMakeLists.txt for Quantization and FxpMathOps dialects (and misc fixes to build with OSS setup). Tested: cmake -G Ninja ../llvm/ -DLLVM_BUILD_EXAMPLES=ON ninja check-mlir -- PiperOrigin-RevId: 241841296
-
- Mar 30, 2019
-
-
Jacques Pienaar authored
* Add initial version of build files; * Update README with instructions to download and build MLIR from github; -- PiperOrigin-RevId: 241102092
-