llvm-project/mlir/lib/Conversion/GPUCommon
Uday Bondhugula 5ceaeed659 Improve type conversion error propagation/failure during LLVM lowering
Improve type conversion error propagation/failure during LLVM lowering.

BEFORE

```
llvm-mlir/mlir/lib/Conversion/LLVMCommon/TypeConverter.cpp:304: SmallVector<mlir::Type, 5> mlir::LLVMTypeConverter::getMemRefDescriptorFields(mlir::MemRefType, bool): Assertion `isStrided(type) && "Non-strided layout maps must have been normalized away"' failed.
PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash backtrace.
Stack dump:
...
```

AFTER
```
<unknown>:0: error: integer overflow during size computation
<unknown>:0: error: Conversion to strided form failed either due to non-strided layout maps (which should have been normalized away) or other reasons
<unknown>:0: error: failed to legalize operation 'gpu.func' that was explicitly marked illegal
<unknown>:0: note: see current operation:
"gpu.func"() ( {
...
```

Reviewed By: ftynse

Differential Revision: https://reviews.llvm.org/D139072
2022-12-03 16:30:44 +05:30
..
CMakeLists.txt [mlir][arith] Change dialect name from Arithmetic to Arith 2022-09-29 11:23:28 -04:00
GPUOpsLowering.cpp Improve type conversion error propagation/failure during LLVM lowering 2022-12-03 16:30:44 +05:30
GPUOpsLowering.h [mlir][gpu] Unroll ops on vectors which map to intrinsic calls 2022-10-28 10:33:38 +02:00
GPUToLLVMConversion.cpp [mlir] Remove support for non-prefixed accessors 2022-12-02 13:32:36 -08:00
IndexIntrinsicsOpLowering.h [mlir:GPU][NFC] Update GPU API to use prefixed accessors 2022-09-30 15:27:10 -07:00
OpToFuncCallLowering.h [mlir][LLVMIR] Clean up the definitions of ReturnOp/CallOp 2022-08-11 00:35:02 -04:00