llvm-project/mlir/test
Nicolas Vasilache c0f41e5bb3 Fix Linalg lowering to loops
This CL makes lowering to loops always be a:
    ```
    %D = linalg.dim %view, constant : !linalg.view<...>
    affine.for %ix = %c0 to %D {
      ...
    }
    ```

    This form composes correctly with tiling and is also the proper way to emit loops from views that across function boundaries.
    The previous version that would extract the range_min/max/step was composing incorrectly with tiling (i.e. would shift by range_min both in the loop bounds and in the slice) and would not work across function boundaries.

    The relevant tests are updated and a new test `dot_view`---which lowers to loops from views passed as function parameters---is added.

    When additional context is available, the linalg.dim operations should be folded away but this is left for a future CL.

--

PiperOrigin-RevId: 249634712
2019-06-01 19:57:54 -07:00
..
AffineOps Change syntax of regions in the generic form of operations 2019-05-06 08:29:48 -07:00
Dialect Move Quantization -> Dialect/QuantOps, FxpMathOps -> Dialect/FxpMathOps. 2019-05-20 13:41:55 -07:00
EDSC Make EDSC builder test more robust to the order of evaluation 2019-06-01 19:56:34 -07:00
Examples Parsing support for Range, View and Slice operations 2019-05-06 08:20:55 -07:00
GPU Automated rollback of changelist 247713812. 2019-06-01 19:57:44 -07:00
IR Refactor FunctionAttr to hold the internal function reference by name instead of pointer. The one downside to this is that the function reference held by a FunctionAttr needs to be explicitly looked up from the parent module. This provides several benefits though: 2019-06-01 19:56:54 -07:00
LLVMIR Add LLVM::IntToPtrOp and LLVM::PtrToIntOp to LLVM dialect. 2019-06-01 19:57:34 -07:00
Linalg Fix Linalg lowering to loops 2019-06-01 19:57:54 -07:00
Pass Enable multi-threading in the pass manager by default. 2019-05-06 08:17:58 -07:00
Quantizer Upstream the Quantizer tool (part 4). 2019-06-01 19:53:12 -07:00
SDBM Move SDBM uniquer into the SDBM dialect 2019-06-01 19:54:43 -07:00
Target Add LLVM::IntToPtrOp and LLVM::PtrToIntOp to LLVM dialect. 2019-06-01 19:57:34 -07:00
Transforms Add support for saving and restoring the insertion point of a FuncBuilder. This also updates the edsc::ScopedContext to use a single builder that saves/restores insertion points. This is necessary for using edscs within RewritePatterns. 2019-05-20 13:46:35 -07:00
Unit Add build files and update README. 2019-03-30 11:23:22 -07:00
mlir-cpu-runner Fix MacOS test: use %shlibext in lit command line to expand to .dylib on MacOS and .so on Linux 2019-05-20 13:50:19 -07:00
mlir-tblgen Refactor FunctionAttr to hold the internal function reference by name instead of pointer. The one downside to this is that the function reference held by a FunctionAttr needs to be explicitly looked up from the parent module. This provides several benefits though: 2019-06-01 19:56:54 -07:00
APITest.h Use FileCheck to test SDBM 2019-05-20 13:48:53 -07:00
CMakeLists.txt Make EDSC builder test more robust to the order of evaluation 2019-06-01 19:56:34 -07:00
lit.cfg.py Fix MacOS test: use %shlibext in lit command line to expand to .dylib on MacOS and .so on Linux 2019-05-20 13:50:19 -07:00
lit.site.cfg.py.in Cleanup linalg integration test 2019-05-20 13:43:13 -07:00