reader/spirv: Don't pass invalid programs to DecomposeStridedMatrix

This transform expects valid input.

Fixed: chromium:1233795
Change-Id: I6460bded0a7e89888a4b034e792db6dc07012127
Reviewed-on: https://dawn-review.googlesource.com/c/tint/+/60348
Auto-Submit: Ben Clayton <bclayton@google.com>
Kokoro: Kokoro <noreply+kokoro@google.com>
Reviewed-by: David Neto <dneto@google.com>
Commit-Queue: Ben Clayton <bclayton@google.com>
This commit is contained in:
Ben Clayton 2021-07-30 16:05:26 +00:00 committed by Tint LUCI CQ
parent d1a026ecd0
commit 558a3537c9

View File

@ -45,6 +45,9 @@ Program Parse(const std::vector<uint32_t>& input) {
ProgramBuilder output;
CloneContext(&output, &program_with_disjoint_ast, false).Clone();
auto program = Program(std::move(output));
if (!program.IsValid()) {
return program;
}
// If the generated program contains matrices with a custom MatrixStride
// attribute then we need to decompose these into an array of vectors