SPIRV-Cross/shaders-msl/comp
Chip Davis fb5ee4cb5c MSL: Adjust BuiltInWorkgroupId for vkCmdDispatchBase().
This command allows the caller to set the base value of
`BuiltInWorkgroupId`, and thus of `BuiltInGlobalInvocationId`. Metal
provides no direct support for this... but it does provide a builtin,
`[[grid_origin]]`, normally used to pass the base values for the stage
input region, which we will now abuse to pass the dispatch base and
avoid burning a buffer binding.

`[[grid_origin]]`, as part of Metal's support for compute stage input,
requires MSL 1.2. For 1.0 and 1.1, we're forced to provide a buffer.

(Curiously, this builtin was undocumented until the MSL 2.2 release. Go
figure.)
2019-07-24 08:56:15 -05:00
..
access-private-workgroup-in-function.comp Deal with scoping for Private variables. 2018-05-16 10:49:30 +02:00
argument-buffers-discrete.msl2.argument.discrete.comp Rename "push descriptor set" to "discrete descriptor set". 2019-03-15 21:53:21 +01:00
argument-buffers-image-load-store.msl2.argument.comp MSL: Implement Metal 2.0 indirect argument buffers. 2019-03-15 11:01:27 +01:00
array-length.comp MSL: Implement OpArrayLength. 2019-05-27 16:13:09 +02:00
array-length.msl2.argument.discrete.comp OpArrayLength must trigger active variables. 2019-05-27 16:44:02 +02:00
atomic.comp Fix atomic_compare_exchange_weak_explicit. 2018-05-15 16:04:21 +02:00
barriers.comp MSL: Add support for subgroup operations. 2019-05-15 17:40:04 -05:00
basic.comp Enhancements to MSL compute and entry point naming. 2017-11-05 21:34:42 -05:00
basic.dispatchbase.comp MSL: Adjust BuiltInWorkgroupId for vkCmdDispatchBase(). 2019-07-24 08:56:15 -05:00
basic.dispatchbase.msl11.comp MSL: Adjust BuiltInWorkgroupId for vkCmdDispatchBase(). 2019-07-24 08:56:15 -05:00
bitcast-16bit-1.invalid.comp Support bitcasts of 16-bit types. 2018-11-05 14:56:36 -06:00
bitcast-16bit-2.invalid.comp Support bitcasts of 16-bit types. 2018-11-05 14:56:36 -06:00
builtins.comp Add WorkGroupID/NumWorkGroups to MSL. Fix block name alias. 2017-09-29 12:16:53 +02:00
cfg-preserve-parameter.comp Enhancements to MSL compute and entry point naming. 2017-11-05 21:34:42 -05:00
coherent-block.comp Enhancements to MSL compute and entry point naming. 2017-11-05 21:34:42 -05:00
coherent-image.comp Enhancements to MSL compute and entry point naming. 2017-11-05 21:34:42 -05:00
complex-type-alias.comp MSL: Add test case for complex type alias. 2019-05-23 15:05:30 +02:00
composite-array-initialization.comp Add test shader for composite array initialization. 2018-09-10 10:05:00 +02:00
composite-construct.comp Reduce test case ... MSL can't deal with certain unusual cases yet. 2018-05-02 10:01:08 +02:00
copy-array-of-arrays.comp MSL: Support array-of-arrays composite construction. 2018-09-12 10:25:51 +02:00
culling.comp Enhancements to MSL compute and entry point naming. 2017-11-05 21:34:42 -05:00
defer-parens.comp Enhance MSL testing and add numerous MSL test cases. 2017-01-30 22:55:21 -05:00
dowhile.comp Enhancements to MSL compute and entry point naming. 2017-11-05 21:34:42 -05:00
force-recompile-hooks.swizzle.comp MSL: Hoist fixup hooks in entry_point_args() out of the compile loop. 2019-01-17 10:18:38 -06:00
functions.comp CompilerMSL declare threadgroup variables accessed in called functions. 2018-01-24 15:38:17 -05:00
global-invocation-id-writable-ssbo-in-function.comp Add SSBO and gl_GlobalInvocationID MSL tests 2017-01-26 20:12:00 -05:00
global-invocation-id.comp Add SSBO and gl_GlobalInvocationID MSL tests 2017-01-26 20:12:00 -05:00
image-cube-array-load-store.comp Fix image load/store on cube arrays in MSL. 2018-05-25 12:43:25 +02:00
image.comp Enhancements to MSL compute and entry point naming. 2017-11-05 21:34:42 -05:00
insert.comp Enhancements to MSL compute and entry point naming. 2017-11-05 21:34:42 -05:00
int64.invalid.msl22.comp MSL: Error out on int64_t/uint64_t buffer members. 2019-06-19 10:14:46 +02:00
inverse.comp Fix multiple declaration of spvDet2x2 on MSL. 2018-02-23 16:52:11 +01:00
local-invocation-id.comp msl: Add support for gl_LocalInvocationID and gl_LocalInvocationIndex 2017-01-26 20:22:31 -05:00
local-invocation-index.comp msl: Add support for gl_LocalInvocationID and gl_LocalInvocationIndex 2017-01-26 20:22:31 -05:00
mat3.comp Enhancements to MSL compute and entry point naming. 2017-11-05 21:34:42 -05:00
mod.comp Enhancements to MSL compute and entry point naming. 2017-11-05 21:34:42 -05:00
modf.comp Enhancements to MSL compute and entry point naming. 2017-11-05 21:34:42 -05:00
outer-product.comp MSL/HLSL: Support OpOuterProduct. 2019-07-01 10:57:27 +02:00
packing-test-1.comp Add some more MSL test shaders. 2018-03-05 16:42:38 +01:00
packing-test-2.comp Add some more MSL test shaders. 2018-03-05 16:42:38 +01:00
read-write-only.comp Enhance MSL testing and add numerous MSL test cases. 2017-01-30 22:55:21 -05:00
rmw-matrix.comp Do not use RMW rewrite for matrices. 2018-05-04 10:35:56 +02:00
rmw-opt.comp Enhancements to MSL compute and entry point naming. 2017-11-05 21:34:42 -05:00
scalar-std450-distance-length-normalize.comp Deal with scalar input values for distance/length/normalize. 2019-06-28 11:20:14 +02:00
shared-array-of-arrays.comp Fix passing arrays of arrays to functions in MSL. 2018-01-29 10:57:52 +01:00
shared.comp Enhancements to MSL compute and entry point naming. 2017-11-05 21:34:42 -05:00
spec-constant-op-member-array.comp Deal with OpSpecConstantOp used as array size. 2018-11-01 14:58:02 +01:00
spec-constant-work-group-size.comp Add test case for local_size_x_id and some complex cases. 2018-11-01 11:23:48 +01:00
storage-buffer-std140-vector-array.comp Add basic test for std140 small vector arrays. 2019-01-17 11:29:09 +01:00
struct-layout.comp Enhancements to MSL compute and entry point naming. 2017-11-05 21:34:42 -05:00
struct-nested.comp CompilerMSL remove incorrect packing of non-interface type-aliased structs. 2018-02-21 17:52:03 -05:00
struct-packing.comp CompilerMSL support smaller offsets for 3-row row-major matrices. 2018-02-11 16:52:57 -05:00
torture-loop.comp Enhancements to MSL compute and entry point naming. 2017-11-05 21:34:42 -05:00
type-alias.comp Enhancements to MSL compute and entry point naming. 2017-11-05 21:34:42 -05:00
udiv.comp Use declared binding in SPIR-V as a fallback for explicit MSL binds. 2018-04-04 12:25:11 +02:00
writable-ssbo.comp Add SSBO and gl_GlobalInvocationID MSL tests 2017-01-26 20:12:00 -05:00