From 431a634290d0a00f57d5ed0382aa64835d2bc4a1 Mon Sep 17 00:00:00 2001 From: Kbz-8 Date: Wed, 3 Jun 2026 19:27:21 +0200 Subject: [PATCH] fixing CI --- .gitea/workflows/build.yml | 7 +++---- ffi/SpirvInterpreter.h | 23 ++++++++++++----------- ffi/ffi.zig | 23 ++++++++++++----------- ffi/runtime.zig | 18 ++++++++++-------- 4 files changed, 37 insertions(+), 34 deletions(-) diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index 450ce7c..ef50272 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -6,10 +6,6 @@ on: pull_request: branches: [ "master" ] -permissions: - contents: read - deployments: write - jobs: build: runs-on: ubuntu-latest @@ -25,6 +21,9 @@ jobs: - name: Building run: zig build -Dno-example=true + - name: Building FFI + run: zig build ffi-c -Dno-example=true + - name: Generating docs run: zig build docs -Dno-example=true diff --git a/ffi/SpirvInterpreter.h b/ffi/SpirvInterpreter.h index 8e74a99..2833fbb 100644 --- a/ffi/SpirvInterpreter.h +++ b/ffi/SpirvInterpreter.h @@ -416,21 +416,22 @@ typedef unsigned long SpvSize; typedef enum { SPV_RESULT_SUCCESS = 0, + SPV_RESULT_BARRIER = 1, + SPV_RESULT_KILLED = 2, SPV_RESULT_DIVISION_BY_ZERO = -1, SPV_RESULT_INVALID_ENTRY_POINT = -2, SPV_RESULT_INVALID_SPIRV = -3, SPV_RESULT_INVALID_VALUE_TYPE = -4, - SPV_RESULT_KILLED = -5, - SPV_RESULT_NOT_FOUND = -6, - SPV_RESULT_OUT_OF_MEMORY = -7, - SPV_RESULT_OUT_OF_BOUNDS = -8, - SPV_RESULT_TODO = -9, - SPV_RESULT_UNREACHABLE = -10, - SPV_RESULT_UNSUPPORTED_SPIRV = -11, - SPV_RESULT_UNSUPPORTED_EXTENSION = -12, - SPV_RESULT_UNSUPPORTED_ENDIANNESS = -13, - SPV_RESULT_INVALID_MAGIC = -14, - SPV_RESULT_UNKNOWN = -15 + SPV_RESULT_NOT_FOUND = -5, + SPV_RESULT_OUT_OF_MEMORY = -6, + SPV_RESULT_OUT_OF_BOUNDS = -7, + SPV_RESULT_TODO = -8, + SPV_RESULT_UNREACHABLE = -9, + SPV_RESULT_UNSUPPORTED_SPIRV = -10, + SPV_RESULT_UNSUPPORTED_EXTENSION = -11, + SPV_RESULT_UNSUPPORTED_ENDIANNESS = -12, + SPV_RESULT_INVALID_MAGIC = -13, + SPV_RESULT_UNKNOWN = -14 } SpvResult; typedef struct diff --git a/ffi/ffi.zig b/ffi/ffi.zig index 9b6e81f..ed98775 100644 --- a/ffi/ffi.zig +++ b/ffi/ffi.zig @@ -6,21 +6,22 @@ pub const SpvCSize = c_ulong; pub const Result = enum(c_int) { Success = 0, + Barrier = 1, + Killed = 2, DivisionByZero = -1, InvalidEntryPoint = -2, InvalidSpirV = -3, InvalidValueType = -4, - Killed = -5, - NotFound = -6, - OutOfMemory = -7, - OutOfBounds = -8, - ToDo = -9, - Unreachable = -10, - UnsupportedSpirV = -11, - UnsupportedExtension = -12, - UnsupportedEndianness = -13, - InvalidMagic = -14, - Unknown = -15, + NotFound = -5, + OutOfMemory = -6, + OutOfBounds = -7, + ToDo = -8, + Unreachable = -9, + UnsupportedSpirV = -10, + UnsupportedExtension = -11, + UnsupportedEndianness = -12, + InvalidMagic = -13, + Unknown = -14, }; comptime { diff --git a/ffi/runtime.zig b/ffi/runtime.zig index fe35e73..a4e31bb 100644 --- a/ffi/runtime.zig +++ b/ffi/runtime.zig @@ -45,37 +45,39 @@ const ImageAPI = extern struct { fn toCResult(err: spv.Runtime.RuntimeError) ffi.Result { return switch (err) { + spv.Runtime.RuntimeError.Barrier => ffi.Result.Barrier, spv.Runtime.RuntimeError.DivisionByZero => ffi.Result.DivisionByZero, spv.Runtime.RuntimeError.InvalidEntryPoint => ffi.Result.InvalidEntryPoint, spv.Runtime.RuntimeError.InvalidSpirV => ffi.Result.InvalidSpirV, spv.Runtime.RuntimeError.InvalidValueType => ffi.Result.InvalidValueType, spv.Runtime.RuntimeError.Killed => ffi.Result.Killed, spv.Runtime.RuntimeError.NotFound => ffi.Result.NotFound, - spv.Runtime.RuntimeError.OutOfMemory => ffi.Result.OutOfMemory, spv.Runtime.RuntimeError.OutOfBounds => ffi.Result.OutOfBounds, + spv.Runtime.RuntimeError.OutOfMemory => ffi.Result.OutOfMemory, spv.Runtime.RuntimeError.ToDo => ffi.Result.ToDo, - spv.Runtime.RuntimeError.Unreachable => ffi.Result.Unreachable, - spv.Runtime.RuntimeError.UnsupportedSpirV => ffi.Result.UnsupportedSpirV, - spv.Runtime.RuntimeError.UnsupportedExtension => ffi.Result.UnsupportedExtension, spv.Runtime.RuntimeError.Unknown => ffi.Result.Unknown, + spv.Runtime.RuntimeError.Unreachable => ffi.Result.Unreachable, + spv.Runtime.RuntimeError.UnsupportedExtension => ffi.Result.UnsupportedExtension, + spv.Runtime.RuntimeError.UnsupportedSpirV => ffi.Result.UnsupportedSpirV, }; } fn fromCResult(res: ffi.Result) spv.Runtime.RuntimeError!void { return switch (res) { + ffi.Result.Barrier => spv.Runtime.RuntimeError.Barrier, ffi.Result.DivisionByZero => spv.Runtime.RuntimeError.DivisionByZero, ffi.Result.InvalidEntryPoint => spv.Runtime.RuntimeError.InvalidEntryPoint, ffi.Result.InvalidSpirV => spv.Runtime.RuntimeError.InvalidSpirV, ffi.Result.InvalidValueType => spv.Runtime.RuntimeError.InvalidValueType, ffi.Result.Killed => spv.Runtime.RuntimeError.Killed, ffi.Result.NotFound => spv.Runtime.RuntimeError.NotFound, - ffi.Result.OutOfMemory => spv.Runtime.RuntimeError.OutOfMemory, ffi.Result.OutOfBounds => spv.Runtime.RuntimeError.OutOfBounds, + ffi.Result.OutOfMemory => spv.Runtime.RuntimeError.OutOfMemory, ffi.Result.ToDo => spv.Runtime.RuntimeError.ToDo, - ffi.Result.Unreachable => spv.Runtime.RuntimeError.Unreachable, - ffi.Result.UnsupportedSpirV => spv.Runtime.RuntimeError.UnsupportedSpirV, - ffi.Result.UnsupportedExtension => spv.Runtime.RuntimeError.UnsupportedExtension, ffi.Result.Unknown => spv.Runtime.RuntimeError.Unknown, + ffi.Result.Unreachable => spv.Runtime.RuntimeError.Unreachable, + ffi.Result.UnsupportedExtension => spv.Runtime.RuntimeError.UnsupportedExtension, + ffi.Result.UnsupportedSpirV => spv.Runtime.RuntimeError.UnsupportedSpirV, else => {}, }; }