Fixes #179847 math.ctlz expansion called getIntOrFloatBitWidth() on the operand type without checking. Index type has no fixed bitwidth and is not int/float, so the assertion in Type::getIntOrFloatBitWidth() could fire. - In convertCtlzOp, bail out with notifyMatchFailure when the element type is not integer or float, so expansion is only applied to types with a defined bitwidth. - Add a test in expand-math.mlir that math.ctlz on index is left unchanged by the pass (no crash, op preserved).
33 KiB
33 KiB