diff options
| author | Robin Voetter <robin@voetter.nl> | 2024-11-02 19:01:57 +0100 |
|---|---|---|
| committer | Robin Voetter <robin@voetter.nl> | 2024-11-09 01:53:13 +0100 |
| commit | 9cd7b8359c435a7a0c1309cbf529a100d5422b4f (patch) | |
| tree | 997a31142f67ef3200ee144ca8ff07bbce70bbfd /src | |
| parent | efb7539cb6cd4caf63e17f50c7eace198339460c (diff) | |
| download | zig-9cd7b8359c435a7a0c1309cbf529a100d5422b4f.tar.gz zig-9cd7b8359c435a7a0c1309cbf529a100d5422b4f.zip | |
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 (limited to 'src')
| -rw-r--r-- | src/link/SpirV.zig | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/link/SpirV.zig b/src/link/SpirV.zig index 106b52a72c..b1b8945963 100644 --- 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, }; |
