llvm-project
225b56e7 - [mlir][VectorToLLVM] Fix crash in VectorInsertOpConversion with dynamic index (#183783)

Commit
59 days ago
[mlir][VectorToLLVM] Fix crash in VectorInsertOpConversion with dynamic index (#183783) VectorInsertOpConversion crashes with an assertion failure when inserting a sub-vector at a dynamic position into a multi-dimensional vector. The pattern calls getAsIntegers() on the position, which asserts that all fold results are compile-time constant attributes. The existing guard (checking llvm::IsaPred<Attribute>) only covered the case where a scalar is inserted into the innermost dimension (the extractvalue path). The guard was missing for the insertvalue path when inserting a sub-vector at a dynamic position into a nested aggregate. Fix: add the same guard before the llvm.insertvalue creation to return failure() gracefully when any position index is dynamic, matching the behavior of VectorExtractOpConversion. Fixes #177829
Author
Parents
Loading