authorgravatar for robin@voetter.nlRobin Voetter <robin@voetter.nl> 2024-11-02 19:01:57+01:00
committergravatar for robin@voetter.nlRobin Voetter <robin@voetter.nl> 2024-11-09 01:53:13+01:00
log9cd7b8359c435a7a0c1309cbf529a100d5422b4f
tree997a31142f67ef3200ee144ca8ff07bbce70bbfd
parentefb7539cb6cd4caf63e17f50c7eace198339460c
signaturebadge-check Signed by SSH key SHA256:ZS52FNyUv2WUXvO4njmVaFVO46RHojFuOrxRc4LuKzg

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

1 files changed, 1 insertions(+), 1 deletions(-)

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