SPIRV-Cross/reference/shaders
Chip Davis 6a58554568 Support the SPV_KHR_device_group extension.
The only piece added by this extension is the `DeviceIndex` builtin,
which tells the shader which device in a grouped logical device it is
running on.

Metal's pipeline state objects are owned by the `MTLDevice` that created
them. Since Metal doesn't support logical grouping of devices the way
Vulkan does, we'll thus have to create a pipeline state for each device
in a grouped logical device. The upcoming peer group support in Metal 3
will not change this. For this reason, for Metal, the device index is
supplied as a constant at pipeline compile time.

There's an interaction between `VK_KHR_device_group` and
`VK_KHR_multiview` in the
`VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT`, which defines the
view index to be the same as the device index. The new
`view_index_from_device_index` MSL option supports this functionality.
2019-07-13 16:45:54 -05:00
..
amd Remove some stale test files. 2018-04-27 10:33:27 +02:00
asm Add simple test for extended debug operations. 2019-07-05 10:44:30 +02:00
comp MSL/HLSL: Support OpOuterProduct. 2019-07-01 10:57:27 +02:00
desktop-only GLSL: Support GL_ARB_shader_stencil_export. 2019-06-12 10:06:54 +02:00
flatten Deal with case where a variable is dominated by inner part of a loop. 2019-06-06 11:11:44 +02:00
frag Support the SPV_KHR_post_depth_coverage extension. 2019-07-11 10:28:43 -05:00
geom Add explicit in/out locations everywhere. 2017-06-21 09:39:08 +02:00
legacy Support fma() in older GLSL targets. 2019-04-08 10:38:32 +02:00
tesc Update to latest glslang/SPIRV-Tools. 2019-01-30 13:41:57 +01:00
tese Fix input array size in tessellation evaluation shaders. 2019-01-09 10:47:16 +01:00
vert Update to latest glslang/SPIRV-Tools. 2019-01-30 13:41:57 +01:00
vulkan Support the SPV_KHR_device_group extension. 2019-07-13 16:45:54 -05:00