[spirv-reader] Detect constant vector splats
When all operands to an OpConstantComposite for a vector type are the
same, use a vector splat.
Change-Id: I53680e1c8a1589ab0b2047fb6cfdaaae2ba5b654
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/137882
Auto-Submit: James Price <jrprice@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: David Neto <dneto@google.com>
Commit-Queue: James Price <jrprice@google.com>
diff --git a/test/tint/ptr_ref/access/matrix.spvasm.expected.wgsl b/test/tint/ptr_ref/access/matrix.spvasm.expected.wgsl
index c5a058a..e80cd30 100644
--- a/test/tint/ptr_ref/access/matrix.spvasm.expected.wgsl
+++ b/test/tint/ptr_ref/access/matrix.spvasm.expected.wgsl
@@ -1,7 +1,7 @@
fn main_1() {
var m = mat3x3f();
m = mat3x3f(vec3f(1.0f, 2.0f, 3.0f), vec3f(4.0f, 5.0f, 6.0f), vec3f(7.0f, 8.0f, 9.0f));
- m[1i] = vec3f(5.0f, 5.0f, 5.0f);
+ m[1i] = vec3f(5.0f);
return;
}