[Mlir-commits] [mlir] [mlir][spirv-to-llvm] Add conversion for spirv.Switch (PR #232941)
Arseniy Obolenskiy
llvmlistbot at llvm.org
Mon Oct 19 22:13:40 PDT 2026
================
@@ -612,6 +612,35 @@ class BranchConditionalConversionPattern
}
};
+class SwitchConversionPattern : public SPIRVToLLVMConversion<spirv::SwitchOp> {
+public:
+ using SPIRVToLLVMConversion<spirv::SwitchOp>::SPIRVToLLVMConversion;
+
+ LogicalResult
+ matchAndRewrite(spirv::SwitchOp op, OpAdaptor adaptor,
+ ConversionPatternRewriter &rewriter) const override {
+ Value selector = adaptor.getSelector();
+ auto selectorType = dyn_cast<IntegerType>(selector.getType());
+ if (!selectorType)
+ return rewriter.notifyMatchFailure(op, "selector is not an integer");
+
----------------
aobolensk wrote:
same remark regarding dyn_cast (it is checked by verifier)
https://github.com/llvm/llvm-project/pull/232941
More information about the Mlir-commits
mailing list