llvm-project/mlir/lib/Dialect
Aart Bik eca6f9160f [mlir][sparse][bufferization] refine bufferization assumption enforcement
Enforce the assumption made on tensor buffers explicitly. When in-place,
reuse the buffer, but fill with all zeroes for the non-update case, since
the kernel assumes all elements are written to. When not in-place, zero
out the new buffer when materializing or when no-updates occur. Copy the
original tensor value when updates occur. This prepares migrating to the
new bufferization strategy, where these assumptions must be made explicit.

Reviewed By: springerm

Differential Revision: https://reviews.llvm.org/D128691
2022-06-28 09:43:30 -07:00
..
AMDGPU [mlir] Update accessors to prefixed form (NFC) 2022-06-18 17:53:22 -07:00
AMX [mlir] Update accessors to prefixed form (NFC) 2022-06-18 17:53:22 -07:00
Affine Revert "Don't use Optional::hasValue (NFC)" 2022-06-25 11:56:50 -07:00
Arithmetic [mlir][bufferize] Infer memory space in all bufferization patterns 2022-06-27 16:32:52 +02:00
ArmNeon [mlir] (NFC) Clean up bazel and CMake target names 2022-06-13 16:24:15 +00:00
ArmSVE [mlir] (NFC) Clean up bazel and CMake target names 2022-06-13 16:24:15 +00:00
Async [mlir] Don't use Optional::getValue (NFC) 2022-06-20 23:20:25 -07:00
Bufferization [mlir][bufferize] Improve to_tensor/to_memref folding 2022-06-27 21:42:39 +02:00
Complex [mlir][complex] Canonicalization for consecutive complex.add and sub 2022-06-28 11:41:16 +02:00
ControlFlow [mlir] Don't use Optional::getValue (NFC) 2022-06-20 23:20:25 -07:00
DLTI Revert "Don't use Optional::hasValue (NFC)" 2022-06-25 11:56:50 -07:00
EmitC Revert "Don't use Optional::hasValue (NFC)" 2022-06-25 11:56:50 -07:00
Func [mlir] move SCF headers to SCF/{IR,Transforms} respectively 2022-06-20 10:18:01 +02:00
GPU Revert "Don't use Optional::hasValue (NFC)" 2022-06-25 11:56:50 -07:00
LLVMIR [mlir][LLVMIR] Memorize compatible LLVM types 2022-06-27 09:46:41 -07:00
Linalg [mlir][bufferization][NFC] Add error handling to getBuffer 2022-06-27 13:48:01 +02:00
MLProgram [mlir] Split MLProgram global load and store to Graph variants 2022-06-16 20:01:54 -07:00
Math [mlir] move SCF headers to SCF/{IR,Transforms} respectively 2022-06-20 10:18:01 +02:00
MemRef [mlir] Flip MemRef dialect to _Both (NFC) 2022-06-26 20:45:25 -07:00
NVGPU [mlir] Update accessors to prefixed form (NFC) 2022-06-18 17:53:22 -07:00
OpenACC Revert "Don't use Optional::hasValue (NFC)" 2022-06-25 11:56:50 -07:00
OpenMP [mlir] Don't use Optional::getValue (NFC) 2022-06-20 23:20:25 -07:00
PDL Revert "Don't use Optional::hasValue (NFC)" 2022-06-25 11:56:50 -07:00
PDLInterp [mlir] (NFC) Clean up bazel and CMake target names 2022-06-13 16:24:15 +00:00
Quant Revert "Don't use Optional::hasValue (NFC)" 2022-06-25 11:56:50 -07:00
SCF [mlir][SCF][bufferize][NFC] Implement resolveConflicts for ParallelInsertSliceOp 2022-06-28 12:18:22 +02:00
SPIRV Revert "Don't use Optional::hasValue (NFC)" 2022-06-25 11:56:50 -07:00
Shape [mlir][bufferization][NFC] Add error handling to getBuffer 2022-06-27 13:48:01 +02:00
SparseTensor [mlir][sparse][bufferization] refine bufferization assumption enforcement 2022-06-28 09:43:30 -07:00
Tensor [mlir][bufferize] Infer memory space in all bufferization patterns 2022-06-27 16:32:52 +02:00
Tosa Revert "Don't use Optional::hasValue (NFC)" 2022-06-25 11:56:50 -07:00
Transform Revert "Don't use Optional::hasValue (NFC)" 2022-06-25 11:56:50 -07:00
Utils Revert "Don't use Optional::hasValue (NFC)" 2022-06-25 11:56:50 -07:00
Vector [mlir][Vector] Fix reordering of floating point adds during lower of `vector.contract`. 2022-06-28 05:26:39 +00:00
X86Vector [mlir] Update accessors to prefixed form (NFC) 2022-06-18 17:53:22 -07:00
CMakeLists.txt [MLIR][AMDGPU] Add AMDGPU dialect, wrappers around raw buffer intrinsics 2022-05-10 14:59:58 +00:00
Traits.cpp [mlir] Fix broadcasting check with 1 values 2021-07-11 20:41:33 -07:00