bumping spirv interpreter
Test / build_and_test (push) Successful in 1m30s
Build / build (push) Successful in 3m12s

This commit is contained in:
2026-07-02 02:19:53 +02:00
parent 7dc2ba7549
commit a7c1fd6ee3
2 changed files with 11 additions and 2 deletions
+2 -2
View File
@@ -32,8 +32,8 @@
// Soft dependencies // Soft dependencies
.SPIRV_Interpreter = .{ .SPIRV_Interpreter = .{
.url = "git+https://github.com/Kbz-8/SPIRV-Interpreter#6fbd386ce40286ca9dcf21c994ccc46814fb9b94", .url = "git+https://github.com/Kbz-8/SPIRV-Interpreter#445bb93296bd6da4a74aa40152aaa779170887cf",
.hash = "SPIRV_Interpreter-0.0.1-ajmpn0N2CQDo-XU_Lf_Xt140wvHyoxBnzapYANEOgjdH", .hash = "SPIRV_Interpreter-0.0.1-ajmpn113CQDBhtMXf88no5gcMJhlricW5G_rWc7AvRS5",
.lazy = true, .lazy = true,
}, },
//.SPIRV_Interpreter = .{ //.SPIRV_Interpreter = .{
+9
View File
@@ -119,6 +119,10 @@ pub fn shaderInvocation(
const entry = try rt.getEntryPointByName(shader.entry); const entry = try rt.getEntryPointByName(shader.entry);
const processed_inputs = allocator.alloc(bool, rt.results.len) catch return SpvRuntimeError.OutOfMemory;
defer allocator.free(processed_inputs);
@memset(processed_inputs, false);
for (0..spv.SPIRV_MAX_OUTPUT_LOCATIONS) |location| { for (0..spv.SPIRV_MAX_OUTPUT_LOCATIONS) |location| {
for (0..4) |component| { for (0..4) |component| {
var input = fragment_inputs[location][component]; var input = fragment_inputs[location][component];
@@ -134,6 +138,11 @@ pub fn shaderInvocation(
}, },
else => return err, else => return err,
}; };
if (result_word >= processed_inputs.len)
return SpvRuntimeError.InvalidSpirV;
if (processed_inputs[result_word])
continue;
processed_inputs[result_word] = true;
const has_result_value = rt.results[result_word].variant != null; const has_result_value = rt.results[result_word].variant != null;
const memory_size = if (has_result_value) const memory_size = if (has_result_value)