Simplify InterfaceBlock by removing multi-dimensional array support.
Maintaining an array of Expression-based sizes is not necessary as GLSL
only supports a single dimension, and doesn't allow any expression other
than a constant integer or nothing (meaning "unsized").
Change-Id: Id58404c5c8d48786e02585d2a6391b2f3e5393e8
Bug: skia:11026
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/340456
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: John Stiles <johnstiles@google.com>
Auto-Submit: John Stiles <johnstiles@google.com>
diff --git a/src/sksl/SkSLSPIRVCodeGenerator.cpp b/src/sksl/SkSLSPIRVCodeGenerator.cpp
index 8786d90..bcf45f8 100644
--- a/src/sksl/SkSLSPIRVCodeGenerator.cpp
+++ b/src/sksl/SkSLSPIRVCodeGenerator.cpp
@@ -1907,8 +1907,8 @@
&intfStruct,
/*builtin=*/false,
Variable::Storage::kGlobal));
- InterfaceBlock intf(/*offset=*/-1, intfVar, name, /*instanceName=*/"",
- /*sizes=*/ExpressionArray(),
+ InterfaceBlock intf(/*offset=*/-1, intfVar, name,
+ /*instanceName=*/"", /*arraySize=*/0,
std::make_shared<SymbolTable>(&fErrors, /*builtin=*/false));
fRTHeightStructId = this->writeInterfaceBlock(intf, false);