spirv-reader: spec constant op Sconvert, UConvert not supported SConvert and UConvert convert between integer types of different widths. WGSL only has 32-bit (concrete) integer types, so make the reader ICE. Fixed: crbug.com/402726347 crbug.com/402726598 Change-Id: I47b1461bcde80c51f26585a33438877867d8aaa9 Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/249534 Reviewed-by: James Price <jrprice@google.com> Auto-Submit: David Neto <dneto@google.com> Commit-Queue: David Neto <dneto@google.com>
diff --git a/src/tint/lang/spirv/reader/parser/parser.cc b/src/tint/lang/spirv/reader/parser/parser.cc index ffcfde6..6cd964b 100644 --- a/src/tint/lang/spirv/reader/parser/parser.cc +++ b/src/tint/lang/spirv/reader/parser/parser.cc
@@ -364,6 +364,12 @@ case spv::Op::OpNot: EmitSpirvExplicitBuiltinCall(inst, spirv::BuiltinFn::kNot, 3); break; + case spv::Op::OpSConvert: + TINT_ICE() << "can't translate SConvert: WGSL does not have concrete " + "integer types of different widths"; + case spv::Op::OpUConvert: + TINT_ICE() << "can't translate UConvert: WGSL does not have concrete " + "integer types of different widths"; default: TINT_ICE() << "Unknown spec constant operation: " << op; }