zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit 9cd7b8359c435a7a0c1309cbf529a100d5422b4f (tree)
parent efb7539cb6cd4caf63e17f50c7eace198339460c
Author: Robin Voetter <robin@voetter.nl>
Date:   Sat,  2 Nov 2024 19:01:57 +0100

spirv: enable variable pointers for now

This seems to be required for ptr_elem_ptr with storage buffers. Note that
this does not imply that the pointer can be regarded as physical too.

Some variants of ptr_elem_ptr will need to be forbidden

Diffstat:
Msrc/link/SpirV.zig | 2+-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/link/SpirV.zig b/src/link/SpirV.zig @@ -296,7 +296,7 @@ fn writeCapabilities(spv: *SpvModule, target: std.Target) !void { // TODO: Integrate with a hypothetical feature system const caps: []const spec.Capability = switch (target.os.tag) { .opencl => &.{ .Kernel, .Addresses, .Int8, .Int16, .Int64, .Float64, .Float16, .Vector16, .GenericPointer }, - .vulkan => &.{ .Shader, .PhysicalStorageBufferAddresses, .Int8, .Int16, .Int64, .Float64, .Float16 }, + .vulkan => &.{ .Shader, .PhysicalStorageBufferAddresses, .Int8, .Int16, .Int64, .Float64, .Float16, .VariablePointers, .VariablePointersStorageBuffer }, else => unreachable, };