llvm-project/mlir/test/Conversion
Alex Zinenko f50cfc44d6 [mlir] Require struct indices in LLVM::GEPOp to be constant
Recent commits added a possibility for indices in LLVM dialect GEP operations
to be supplied directly as constant attributes to ensure they remain such until
translation to LLVM IR happens. Make this required for indexing into LLVM
struct types to match LLVM IR requirements, otherwise the translation would
assert on constructing such IR.

For better compatibility with MLIR-style operation construction interface,
allow GEP operations to be constructed programmatically using Values pointing
to known constant operations as struct indices.

Depends On D116758

Reviewed By: wsmoses

Differential Revision: https://reviews.llvm.org/D116759
2022-01-07 09:56:05 +01:00
..
AffineToStandard [MLIR] Replace std ops with arith dialect ops 2021-10-13 03:07:03 +00:00
ArithmeticToLLVM [mlir][Vector] Support 0-D vectors in `CmpIOp` 2021-12-12 13:28:26 +00:00
ArithmeticToSPIRV [mlir][spirv] Support size-1 vector/tensor constant during conversion 2021-12-14 15:58:08 -05:00
AsyncToLLVM [MLIR][LLVM] Permit integer types in switch other than i32 2021-11-16 12:00:37 -05:00
BufferizationToMemRef [mlir] Decompose Bufferization Clone operation into Memref Alloc and Copy. 2021-11-30 10:15:56 +01:00
ComplexToLLVM [mlir:DialectConversion] Restructure how argument/target materializations get invoked 2021-10-27 02:09:04 +00:00
ComplexToStandard [MLIR] Replace std ops with arith dialect ops 2021-10-13 03:07:03 +00:00
GPUCommon [MLIR] Replace std ops with arith dialect ops 2021-10-13 03:07:03 +00:00
GPUToCUDA [mlir] Change test-gpu-to-cubin to derive from SerializeToBlobPass 2021-03-11 10:42:20 +01:00
GPUToNVVM [mlir][gpu] Extend shuffle op modes and add nvvm lowering 2021-11-19 11:14:31 -08:00
GPUToROCDL [MLIR][GPU] Define gpu.printf op and its lowerings 2021-12-09 15:54:31 +00:00
GPUToROCm [mlir] Remove mlir-rocm-runner 2021-03-19 00:24:10 -07:00
GPUToSPIRV [MLIR] Replace std ops with arith dialect ops 2021-10-13 03:07:03 +00:00
GPUToVulkan [MLIR] Replace std ops with arith dialect ops 2021-10-13 03:07:03 +00:00
LinalgToSPIRV [MLIR] Replace std ops with arith dialect ops 2021-10-13 03:07:03 +00:00
LinalgToVector [MLIR] Replace std ops with arith dialect ops 2021-10-13 03:07:03 +00:00
MathToLLVM [mlir] Added ctlz and cttz to math dialect and LLVM dialect 2021-12-08 14:32:15 -08:00
MathToLibm [mlir] Support multi-dimensional vectors in MathToLibm conversion. 2021-11-16 11:13:52 +01:00
MathToSPIRV [mlir][spirv] math.erf OpenCL lowering 2021-12-08 21:59:46 +03:00
MemRefToLLVM [mlir] Require struct indices in LLVM::GEPOp to be constant 2022-01-07 09:56:05 +01:00
MemRefToSPIRV [mlir:DialectConversion] Restructure how argument/target materializations get invoked 2021-10-27 02:09:04 +00:00
OpenACCToLLVM [MLIR] Replace std ops with arith dialect ops 2021-10-13 03:07:03 +00:00
OpenACCToSCF [mlir][openacc] Add conversion for if operand to scf.if for standalone data operation 2021-06-07 12:10:03 -04:00
OpenMPToLLVM [mlir:DialectConversion] Restructure how argument/target materializations get invoked 2021-10-27 02:09:04 +00:00
PDLToPDLInterp [MLIR][PDL] Refactor the positions for multi-root patterns. 2022-01-04 08:03:44 +05:30
SCFToGPU [MLIR] Replace std ops with arith dialect ops 2021-10-13 03:07:03 +00:00
SCFToOpenMP [MLIR] Replace std ops with arith dialect ops 2021-10-13 03:07:03 +00:00
SCFToSPIRV [mlir] spirv: Add scf.while spirv conversion 2021-11-16 13:19:34 +03:00
SCFToStandard [MLIR] Replace std ops with arith dialect ops 2021-10-13 03:07:03 +00:00
SPIRVToLLVM [mlir] Require struct indices in LLVM::GEPOp to be constant 2022-01-07 09:56:05 +01:00
ShapeToStandard [mlir] Split std.rank into tensor.rank and memref.rank. 2021-12-14 10:15:55 +01:00
StandardToLLVM [MLIR] Move AtomicRMW into MemRef dialect and enum into Arith 2021-12-30 14:31:33 -05:00
StandardToSPIRV [mlir][spirv] Add math to OpenCL conversion 2021-11-24 02:31:21 +03:00
TosaToLinalg [mlir][tosa] Resubmit split tosa-to-linalg named ops out of pass 2021-12-28 11:22:58 -08:00
TosaToSCF [mlir] Flag near misses in file splitting 2021-12-12 08:03:30 -08:00
TosaToStandard [MLIR] Replace std ops with arith dialect ops 2021-10-13 03:07:03 +00:00
VectorToGPU [mlir][VectorToGPU] Support more cases in conversion to MMA ops 2021-11-11 13:10:38 -08:00
VectorToLLVM [mlir][Vector] Support 0-D vectors in `CreateMaskOp` 2021-12-12 13:32:29 +00:00
VectorToROCDL [MLIR] Replace std ops with arith dialect ops 2021-10-13 03:07:03 +00:00
VectorToSCF [mlir][Vector] Thread 0-d vectors through vector.transfer ops 2021-12-01 16:49:43 +00:00
VectorToSPIRV [mlir][spirv] Perform partial conversion in VectorToSPIRVPass 2021-12-16 09:35:56 -05:00