tint: Remove constant::Value::AllEqual()
The only uses of this method were to check for splats when emitting
vector constants in some backends, and they can just check for
constant::Splat instead.
Change-Id: I12f5ecdd4a7c1191a3a516d4fd3f349230e42631
Reviewed-on: https://dawn-review.googlesource.com/c/dawn/+/122803
Commit-Queue: James Price <jrprice@google.com>
Reviewed-by: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
diff --git a/src/tint/writer/hlsl/generator_impl.cc b/src/tint/writer/hlsl/generator_impl.cc
index 74b9972..84543ab 100644
--- a/src/tint/writer/hlsl/generator_impl.cc
+++ b/src/tint/writer/hlsl/generator_impl.cc
@@ -3323,10 +3323,10 @@
return true;
},
[&](const type::Vector* v) {
- if (constant->AllEqual()) {
+ if (auto* splat = constant->As<constant::Splat>()) {
{
ScopedParen sp(out);
- if (!EmitConstant(out, constant->Index(0), is_variable_initializer)) {
+ if (!EmitConstant(out, splat->el, is_variable_initializer)) {
return false;
}
}