llvm-project/mlir/test/IR
Alex Zinenko c59ce1f625 [mlir] support memref of memref in standard-to-llvm conversion
Now that memref supports arbitrary element types, add support for memref of
memref and make sure it is properly converted to the LLVM dialect. The type
support itself avoids adding the interface to the memref type itself similarly
to other built-in types. This allows the shape, and therefore byte size, of the
memref descriptor to remain a lowering aspect that is easier to customize and
evolve as opposed to sanctifying it in the data layout specification for the
memref type itself.

Factor out the code previously in a testing pass to live in a dedicated data
layout analysis and use that analysis in the conversion to compute the
allocation size for memref of memref. Other conversions will be ported
separately.

Depends On D103827

Reviewed By: rriddle

Differential Revision: https://reviews.llvm.org/D103828
2021-06-08 11:11:31 +02:00
..
affine-map.mlir [MLIR] Extend Symbol verification to reject public symbol declarations. 2020-11-16 16:05:32 -08:00
attribute.mlir [mlir] Emit errors when creating unregistered attributes/types when not allowed 2021-04-02 12:45:35 -07:00
check-help-output.mlir Add custom lilith script. 2019-03-29 13:02:57 -07:00
core-ops.mlir [MLIR] Create memref dialect and move dialect-specific ops from std. 2021-03-15 11:14:09 +01:00
dense-elements-hex.mlir [mlir] Convert raw data in dense element attributes for big-endian machines. 2020-10-28 17:06:16 -07:00
diagnostic-handler.mlir [mlir][Diagnostics] Don't print note source line if it is the same as the previous diagnostic 2020-03-29 21:43:44 -07:00
invalid-affinemap.mlir [mlir][NFC] Remove usernames and google bug numbers from TODO comments. 2020-07-07 01:40:52 -07:00
invalid-func-op.mlir [mlir] Refactor the representation of function-like argument/result attributes. 2021-05-07 19:32:31 -07:00
invalid-locations.mlir [mlir][Asm] Add support for resolving operation locations after parsing has finished 2020-11-12 23:34:36 -08:00
invalid-module-op.mlir Define a `NoTerminator` traits that allows operations with a single block region to not provide a terminator 2021-03-25 03:59:03 +00:00
invalid-ops.mlir Allow same memory space for SRC and DST of dma_start operations 2021-05-14 10:40:15 -07:00
invalid-unregistered.mlir [mlir] Emit errors when creating unregistered attributes/types when not allowed 2021-04-02 12:45:35 -07:00
invalid.mlir [mlir] introduce "encoding" attribute to tensor type 2021-04-12 10:37:15 -07:00
locations.mlir [IR] Add a Location to BlockArgument 2021-05-23 14:10:00 -07:00
memory-ops.mlir [MLIR] Create memref dialect and move dialect-specific ops from std. 2021-03-15 11:14:09 +01:00
module-op.mlir Define a `NoTerminator` traits that allows operations with a single block region to not provide a terminator 2021-03-25 03:59:03 +00:00
op-stats.mlir Add a flag on the context to protect against creation of operations in unregistered dialects 2020-03-30 19:37:31 +00:00
opaque_locations.mlir [mlir][Asm] Add support for using an alias for trailing operation locations 2020-11-09 21:54:47 -08:00
operand.mlir [MLIR] Better message for FuncOp type mismatch 2020-10-02 09:31:44 -07:00
parser.mlir [mlir] support memref of memref in standard-to-llvm conversion 2021-06-08 11:11:31 +02:00
pretty-attributes.mlir [mlir][IR] Move the remaining builtin attributes to ODS. 2021-03-16 16:31:53 -07:00
pretty-locations.mlir Add a flag on the context to protect against creation of operations in unregistered dialects 2020-03-30 19:37:31 +00:00
pretty-region-args.mlir Add a flag on the context to protect against creation of operations in unregistered dialects 2020-03-30 19:37:31 +00:00
print-attr-type-aliases.mlir Fix omitted kw in type alias printer 2021-01-31 14:06:58 -08:00
print-ir-defuse.mlir Define a `NoTerminator` traits that allows operations with a single block region to not provide a terminator 2021-03-25 03:59:03 +00:00
print-ir-nesting.mlir Define a `NoTerminator` traits that allows operations with a single block region to not provide a terminator 2021-03-25 03:59:03 +00:00
print-op-local-scope.mlir Change filecheck default to dump input on failure 2020-06-09 18:57:46 +00:00
print-op-on-diagnostic.mlir [mlir][IR] Manually register command line options for MLIRContext and AsmPrinter 2020-04-11 23:13:00 -07:00
recursive-type.mlir [mlir] Support for mutable types 2020-07-27 13:07:44 +02:00
region.mlir [mlir] Don't elide the last op if there is no terminator 2021-05-28 07:25:49 -04:00
repro_b120295301.mlir Change the attribute dictionary syntax to separate name and value with '='. 2019-06-25 19:06:34 -07:00
result.mlir Split test-specific passes out of mlir-opt 2019-06-24 17:47:12 -07:00
slice.mlir [MLIR] Create memref dialect and move dialect-specific ops from std. 2021-03-15 11:14:09 +01:00
test-func-erase-arg.mlir Add FuncOp::eraseArgument 2019-11-13 10:59:55 -08:00
test-func-erase-result.mlir [MLIR] Extend Symbol verification to reject public symbol declarations. 2020-11-16 16:05:32 -08:00
test-func-set-type.mlir [mlir] Refactor the representation of function-like argument/result attributes. 2021-05-07 19:32:31 -07:00
test-matchers.mlir [mlir] Add a new context flag for disabling/enabling multi-threading 2020-05-02 12:32:25 -07:00
test-side-effects.mlir Add a mechanism for Dialects to provide a fallback for OpInterface 2021-03-24 08:41:40 +00:00
test-symbol-rauw.mlir [MLIR] Extend Symbol verification to reject public symbol declarations. 2020-11-16 16:05:32 -08:00
test-symbol-uses.mlir [MLIR] Extend Symbol verification to reject public symbol declarations. 2020-11-16 16:05:32 -08:00
traits.mlir [mlir] verify that operand/result_segment_sizes attributes have i32 element 2021-03-23 18:26:31 +01:00
visitors.mlir [mlir] Add 'Skip' result to Operation visitor 2021-03-06 00:02:20 +02:00
wrapping_op.mlir [mlir][Asm] Add support for using an alias for trailing operation locations 2020-11-09 21:54:47 -08:00
zero_whitespace.mlir Isolate zero_whitespace parser test into its own file. 2020-04-22 19:58:40 -07:00