llvm-project
ee92ac23 - [mlir][nvgpu] Fix crash in optimize-shared-memory pass with vector element types (#179111)

Commit
1 day ago
[mlir][nvgpu] Fix crash in optimize-shared-memory pass with vector element types (#179111) The `--nvgpu-optimize-shared-memory` pass crashed when processing memrefs with vector element types (e.g., `memref<16x1xvector<16xf16>, 3>`). This occurred because getElementTypeBitWidth() calls getIntOrFloatBitWidth(), which asserts the element type must be an integer or float. Thus, this PR adds an early-exit guard to return failure() when the memref's element type is not a scalar int or float. I wasn't sure if we should support vector types (by multiplying element bit width by vector length) or just reject them. For now, I've implemented it to return failure on non-scalar types. Fixes #177823 Co-authored-by: rebel-jueonpark <jueonpark@rebellions.ai>
Author
Parents
Loading