SPIRV-Cross/reference/shaders-msl-no-opt/frag
Hans-Kristian Arntzen 5b952d2cbf MSL: Rethink how opaque descriptors are passed to leaf functions.
We were passing arrays by value which the compiler fails to optimize,
causing abyssal performance. To fix this, we need to consider that
descriptors can be in constant or const device address spaces.

Also, lone descriptors are passed by value, so we explicitly remove address
space qualifiers.

One failure case is when shader passes a texture/sampler array as an
argument. It's all UniformConstant in SPIR-V, but in MSL it might be
thread, const device or constant, so that won't work ...
Global variable use works fine though, and that should cover 99.9999999%
of use cases.
2022-01-18 14:40:52 +01:00
..
16bit-constants.invalid.frag Move .invalid. test shaders to the more appropriate subfolders. 2019-11-06 10:40:37 +01:00
demote-to-helper.vk.nocompat.msl21.invalid.frag Move .invalid. test shaders to the more appropriate subfolders. 2019-11-06 10:40:37 +01:00
depth-image-gather.asm.frag MSL: Do not use component::x gather for depth2d textures. 2020-10-26 10:18:17 +01:00
force-active-resources.msl2.argument..force-active.discrete.frag MSL: Add support for force-activating IAB resources. 2020-01-16 11:12:06 +01:00
fp16.desktop.invalid.frag MSL: Support synthetic functions in function constants. 2021-09-28 19:10:16 -04:00
image-gather.frag MSL: Fix regression in image gather handling. 2020-11-06 16:21:30 +01:00
in_block_assign.frag Updates for pull request #1162 2019-09-24 14:35:25 -04:00
min-max-clamp.invalid.asm.frag Move .invalid. test shaders to the more appropriate subfolders. 2019-11-06 10:40:37 +01:00
nonuniform-constructor.msl2.frag GLSL: Emit nonuniformEXT in correct place for late-combined samplers. 2020-12-07 13:00:15 +01:00
pixel-interlock-simple-callstack.msl2.frag MSL: Do not generate UnsafeArray<> for any array inside buffer objects. 2019-10-24 12:22:30 +02:00
pull-interpolant-access-chain.msl23.frag MSL: Add test for scalar access chain pull interpolant. 2021-07-13 12:25:18 +02:00
scalar-block-layout-ubo-std430.vk.nocompat.invalid.frag Move .invalid. test shaders to the more appropriate subfolders. 2019-11-06 10:40:37 +01:00
shadow-compare-global-alias.invalid.frag MSL: Rethink how opaque descriptors are passed to leaf functions. 2022-01-18 14:40:52 +01:00
subgroups.nocompat.invalid.vk.msl22.frag MSL: Support synthetic functions in function constants. 2021-09-28 19:10:16 -04:00
subpass-input-attachment-index-fallback.msl20.ios.framebuffer-fetch.frag MSL: Use input attachment index directly for resource index fallback. 2020-07-06 09:49:46 +02:00
subpass-input-attachment-index-fallback.msl23.framebuffer-fetch.frag MSL: Allow framebuffer fetch on Mac in MSL 2.3. 2020-10-29 10:50:59 -05:00
subpass-input-function-argument.framebuffer-fetch.ios.frag MSL: Fix case where subpassInput is passed to leaf functions. 2020-04-27 11:29:21 +02:00
subpass-input-function-argument.framebuffer-fetch.msl23.frag MSL: Allow framebuffer fetch on Mac in MSL 2.3. 2020-10-29 10:50:59 -05:00
subpass-input.decoration-binding.framebuffer-fetch.msl23.argument.frag MSL: Fix various bugs with framebuffer fetch on macOS and argument buffers. 2021-01-08 10:19:18 +01:00
subpass-input.decoration-binding.framebuffer-fetch.msl23.frag MSL: Fix various bugs with framebuffer fetch on macOS and argument buffers. 2021-01-08 10:19:18 +01:00
subpass-input.decoration-binding.ios.framebuffer-fetch.msl2.argument.frag MSL: Always use input_attachment_index for framebuffer fetch binding. 2021-01-08 10:17:42 +01:00
subpass-input.decoration-binding.ios.framebuffer-fetch.msl2.frag MSL: Fix various bugs with framebuffer fetch on macOS and argument buffers. 2021-01-08 10:19:18 +01:00
texture-access-int.swizzle.frag Update for pull request #1162 rev. 1 2019-09-24 18:13:04 -04:00
texture-access-leaf.swizzle.frag MSL: Rethink how opaque descriptors are passed to leaf functions. 2022-01-18 14:40:52 +01:00
texture-access-uint.swizzle.frag Update for pull request #1162 rev. 1 2019-09-24 18:13:04 -04:00
texture-access.swizzle.frag Deal better with CompositeExtract from constant composite. 2021-01-22 12:30:16 +01:00
texture-gather-uint-component.asm.frag Handle odd type for textureGather component. 2021-06-03 11:37:45 +02:00
ubo-array-multiple-structs-access-chain.argument.msl2.frag MSL: Fix access chain for deep struct hierarchy on array of buffers. 2020-03-31 14:17:29 +02:00
ubo-array-multiple-structs-access-chain.frag MSL: Fix access chain for deep struct hierarchy on array of buffers. 2020-03-31 14:17:29 +02:00
ubo-offset-out-of-order.frag MSL: Redirect member indices when buffer has been sorted by Offset. 2020-04-30 11:48:53 +02:00
variables.zero-initialize.frag Add support for forcefully zero-initialized variables. 2020-03-26 13:38:27 +01:00