SPIRV-Cross-Vulnerable/shaders-msl/frag
Aitor Camacho a43fabbe2a MSL: Add option to force depth write in fragment shaders
Metal writes to the depth/stencil attachment before fragment
shader execution if the execution does not modify the depth
value. However, Vulkan expects the write to happen after
fragment shader execution. To circumvent the issue we add
a simple depth passthrough if the user opts in. Only
required when the depth/stencil attachment is used as
input attachment at the same time. It seems Metal does not
correctly detect the dependency.
2024-05-24 12:13:17 +02:00
..
argument-buffers.msl2.argument.frag MSL: Need to emit two layers of address space. 2019-03-15 11:29:17 +01:00
array-component-io.frag MSL: Handle array with component when we cannot rely on user() attrib. 2021-05-21 13:46:33 +02:00
array-lut-no-loop-variable.frag Disallow arrays and structs from becoming loop variables. 2018-03-07 14:54:11 +01:00
array-of-array-lut.frag MSL: Fix array of array declaration. 2019-10-26 16:10:12 +02:00
array-of-texture-swizzle-nonconstant-uniform.msl2.argument.discrete.swizzle.frag MSL: Don't remove periods from swizzle buffer index exprs. 2020-10-20 17:47:40 -05:00
array-of-texture-swizzle-nonconstant-uniform.msl2.swizzle.frag MSL: Don't remove periods from swizzle buffer index exprs. 2020-10-20 17:47:40 -05:00
array-of-texture-swizzle.msl2.argument.discrete.swizzle.frag MSL: Support argument buffers and image swizzling. 2019-05-18 10:30:06 +02:00
array-of-texture-swizzle.msl2.swizzle.frag MSL: Add test for passing single swizzled texture arg from array. 2019-05-09 14:19:40 +02:00
barycentric-nv-nopersp.msl22.frag MSL: Support PrimitiveID in fragment and barycentrics. 2019-06-19 09:52:35 +02:00
barycentric-nv.msl22.frag MSL: Support PrimitiveID in fragment and barycentrics. 2019-06-19 09:52:35 +02:00
basic.force-sample.frag MSL: Adjust FragCoord for sample-rate shading. 2020-11-23 10:30:24 -06:00
basic.frag Add explicit in/out locations everywhere. 2017-06-21 09:39:08 +02:00
binary-func-unpack-pack-arguments.frag Unpack expressions when used in functions on MSL. 2018-06-11 10:56:45 +02:00
binary-unpack-pack-arguments.frag Also unpack regular unary/binary operations on MSL. 2018-06-11 16:23:09 +02:00
bitcasting.1d-as-2d.frag MSL: Handle Offset and Grad operands for 1D-as-2D textures. 2020-10-15 12:51:00 -05:00
bitcasting.frag CompilerMSL map many GLSL functions to MSL functions. 2017-05-19 18:14:08 -04:00
block-io-inherited-interpolation-qualifiers.frag MSL: Inherit interpolation qualifiers through recursive composites. 2024-04-15 15:44:21 +02:00
buffer-read-write.frag MSL: Support native texture_buffer type, throw error on atomics. 2019-04-23 12:21:43 +02:00
buffer-read-write.texture-buffer-native.msl21.frag MSL: Support native texture_buffer type, throw error on atomics. 2019-04-23 12:21:43 +02:00
builtins.frag CompilerMSL enhancements. 2017-06-30 19:10:46 -04:00
clip-distance-varying.frag MSL: Support ClipDistance as an input stage variable. 2019-12-02 13:19:42 +01:00
complex-expression-in-access-chain.frag Register implied expression reads in OpLoad/OpAccessChain. 2019-01-04 14:56:12 +01:00
composite-extract-forced-temporary.frag Enhance MSL testing and add numerous MSL test cases. 2017-01-30 22:55:21 -05:00
constant-array.frag Enhance MSL testing and add numerous MSL test cases. 2017-01-30 22:55:21 -05:00
constant-composites.frag Do not declare constant composites inline in HLSL. 2018-02-02 10:12:26 +01:00
control-dependent-in-branch.desktop.frag Handle control-dependent temporaries. 2018-03-12 17:34:54 +01:00
cull-distance-varying.frag MSL: Handle CullDistance better. 2021-04-19 12:10:49 +02:00
depth-array-texture-lod.lod-as-grad.1d-as-2d.msl23.frag MSL: Add a workaround for broken level() arguments. 2023-02-02 22:01:46 -08:00
depth-greater-than.frag MSL: Split out early_fragment_tests. 2018-11-12 16:20:49 +01:00
depth-less-than.frag MSL: Split out early_fragment_tests. 2018-11-12 16:20:49 +01:00
depth-out-early-frag-tests.frag MSL: Don't output depth and stencil values with explicit early fragment tests. 2021-11-12 14:17:00 -05:00
depth-out-no-early-frag-tests.frag MSL: Don't output depth and stencil values with explicit early fragment tests. 2021-11-12 14:17:00 -05:00
disable-frag-output.frag-output.frag MSL: Add options to control emission of fragment outputs. 2020-04-13 15:29:11 -05:00
dual-source-blending.frag Support dual-source blending on GLSL and MSL. 2018-04-03 16:04:49 +02:00
early-fragment-tests.frag MSL: Split out early_fragment_tests. 2018-11-12 16:20:49 +01:00
false-loop-init.frag Add test for false loop init. 2018-01-23 21:15:09 +01:00
flush_params.frag Enhance MSL testing and add numerous MSL test cases. 2017-01-30 22:55:21 -05:00
for-loop-continue-control-flow.frag Fall back to complex loop if non-trivial continue block is found. 2019-07-08 11:54:29 +02:00
for-loop-init.frag Fix execution order for for-loop emission. 2017-02-04 10:07:20 +01:00
force-depth-write-early-tests.input-attachment-is-ds-attachment.frag MSL: Add option to force depth write in fragment shaders 2024-05-24 12:13:17 +02:00
force-depth-write-false.input-attachment-is-ds-attachment.frag MSL: Add option to force depth write in fragment shaders 2024-05-24 12:13:17 +02:00
force-depth-write.input-attachment-is-ds-attachment.frag MSL: Add option to force depth write in fragment shaders 2024-05-24 12:13:17 +02:00
fp16-packing.frag Implement packHalf2x16/unpackHalf2x16 on MSL. 2018-03-12 17:51:14 +01:00
fp16-trancendentals.frag MSL: Handle missing FP16 trancendental overloads. 2024-04-29 11:49:28 +02:00
frag-demote-checks.discard-checks.msl23.frag MSL: Prevent stores to storage resources in discarded fragments. 2022-11-20 01:29:41 -08:00
frag-demote-checks.discard-checks.msl31.frag MSL: Add some image atomic tests for 3.1. 2023-11-29 13:53:23 +01:00
frag-discard-checks-continue-block.discard-checks.msl23.frag MSL: Prevent stores to storage resources in discarded fragments. 2022-11-20 01:29:41 -08:00
frag-discard-checks-continue-block.discard-checks.msl31.frag MSL: Add some image atomic tests for 3.1. 2023-11-29 13:53:23 +01:00
frag-discard-checks.discard-checks.msl23.frag MSL: Prevent stores to storage resources in discarded fragments. 2022-11-20 01:29:41 -08:00
frag-discard-checks.discard-checks.msl31.frag MSL: Add some image atomic tests for 3.1. 2023-11-29 13:53:23 +01:00
frag-early-discard.discard-checks.force-frag-with-side-effects-execution.msl23.frag Add option to enforce fragment execution with side effects in MSL 2024-05-21 11:24:56 +02:00
frag-early-discard.discard-checks.msl23.frag Add option to enforce fragment execution with side effects in MSL 2024-05-21 11:24:56 +02:00
frag-early-discard.force-frag-with-side-effects-execution.msl23.frag Add option to enforce fragment execution with side effects in MSL 2024-05-21 11:24:56 +02:00
fragment-component-padding.pad-fragment.frag MSL: Add option to pad fragment outputs. 2019-01-14 15:11:52 +01:00
front-facing.frag Add IsFrontFace support to HLSL. 2018-02-15 12:42:56 +01:00
gather-compare-const-offsets.frag MSL: Support ConstOffsets on image gather. 2024-05-20 12:10:35 -04:00
gather-const-offsets.frag MSL: Support ConstOffsets on image gather. 2024-05-20 12:10:35 -04:00
gather-dref.frag Fix GatherDref on GLSL. 2018-04-30 12:45:23 +02:00
gather-offset.frag Compiler MSL default gather offset when component specified. 2018-04-30 16:30:29 -04:00
helper-invocation.msl21.frag Support gl_HelperInvocation on GLSL and MSL. 2018-11-28 15:18:43 +01:00
huge-argument-buffer.device-argument-buffer.argument.msl2.frag MSL: Add opt-in support for huge IABs. 2019-10-14 16:20:34 +02:00
illegal-name-test-0.frag Add more illegal name replacement in MSL. 2018-04-03 15:36:35 +02:00
image-query-lod.msl22.frag MSL: Support OpImageQueryLod. 2019-06-19 09:51:56 +02:00
in_block_with_multiple_structs_of_same_type.frag MSL: Use var name instead of var-type name for flattened interface members. 2022-03-04 11:38:53 -05:00
in_block.frag Assign block locations to members in MSL. 2017-06-21 09:55:46 +02:00
in_mat.frag CompilerMSL support matrices & arrays in stage-in & stage-out. 2018-06-12 11:41:35 -04:00
input-attachment-ms.arrayed-subpass.msl21.frag MSL: Support layered input attachments. 2020-09-02 09:18:25 -05:00
input-attachment-ms.frag Support passing implicit frag_coord arguments down to functions. 2018-02-10 10:55:09 +01:00
input-attachment-ms.multiview.msl21.frag MSL: Support layered input attachments. 2020-09-02 09:18:25 -05:00
input-attachment.arrayed-subpass.frag MSL: Support layered input attachments. 2020-09-02 09:18:25 -05:00
input-attachment.frag Support passing implicit frag_coord arguments down to functions. 2018-02-10 10:55:09 +01:00
input-attachment.multiview.frag MSL: Support layered input attachments. 2020-09-02 09:18:25 -05:00
interpolation-qualifiers-block.frag Handle interpolation qualifiers on the entire struct, too. 2018-09-06 12:29:42 -05:00
interpolation-qualifiers.frag MSL: Handle interpolation qualifiers. 2018-09-05 12:02:07 -05:00
lut-promotion.frag Add some tests for LUT promotion. 2018-07-05 14:14:18 +02:00
mix.frag Enhance MSL testing and add numerous MSL test cases. 2017-01-30 22:55:21 -05:00
modf-access-tracking-function.frag Handle Modf/Frexp in more cases. 2021-11-07 11:36:44 +01:00
mrt-array.frag Properly flatten MRT outputs in MSL. 2018-03-13 14:03:35 +01:00
nonuniform-qualifier.msl2.frag Fix nonuniform test for MSL. 2019-05-13 15:14:18 +02:00
packed-expression-vector-shuffle.frag Deal with packed expressions in more scenarios. 2018-05-25 10:57:02 +02:00
packing-test-3.frag Add some more MSL test shaders. 2018-03-05 16:42:38 +01:00
pixel-interlock-ordered.msl2.argument.frag MSL: Add missing interlock handling to atomic image buffers. 2020-10-13 11:44:17 -05:00
pixel-interlock-ordered.msl2.frag MSL: Add missing interlock handling to atomic image buffers. 2020-10-13 11:44:17 -05:00
pixel-interlock-ordered.msl31.argument.frag MSL: Add some image atomic tests for 3.1. 2023-11-29 13:53:23 +01:00
pixel-interlock-ordered.msl31.frag MSL: Add some image atomic tests for 3.1. 2023-11-29 13:53:23 +01:00
pls.frag Add explicit in/out locations everywhere. 2017-06-21 09:39:08 +02:00
post-depth-coverage.ios.msl2.frag Support the SPV_KHR_post_depth_coverage extension. 2019-07-11 10:28:43 -05:00
post-depth-coverage.msl23.frag MSL: Allow post-depth coverage on Mac in MSL 2.3. 2020-10-27 22:07:01 -05:00
private-variable-prototype-declaration.frag MSL: Fix regression with Private parameter declaration. 2019-06-13 10:36:21 +02:00
ray-query-object-in-function.spv14.vk.msl24.frag MSL: Pass down global RayQuery object to leaf functions. 2022-04-19 11:49:22 +02:00
read-cull-clip-distance-in-function.frag MSL: Make builtin argument type declaration context sensitive. 2021-04-19 12:10:49 +02:00
readonly-ssbo.frag Add test for reading SSBO from fragment shader on MSL. 2018-05-25 10:20:17 +02:00
return-value-after-discard-terminator.frag MSL: Return fragment function value even when last SPIR-V Op is discard (OpKill). 2021-09-12 16:28:21 -04:00
runtime_array_as_argument_buffer_buf.msl3.argument-tier-1.rich-descriptor.frag fix codegen for shader with only bindless ssbo 2024-02-04 23:28:58 +01:00
runtime_array_as_argument_buffer.msl3.argument-tier-1.rich-descriptor.frag MSL: runtime array over argument buffers 2023-08-17 11:37:29 +02:00
sample-depth-propagate-state-from-resource.frag MSL: Rewrite propagated depth comparison state handling. 2019-10-26 16:10:11 +02:00
sample-depth-separate-image-sampler.frag Fix depth image usage in MSL for separate image/samplers. 2018-02-10 10:55:10 +01:00
sample-mask-in-and-out.fixed-sample-mask.force-sample.frag MSL: Adjust gl_SampleMaskIn for sample-shading and/or fixed sample mask. 2021-07-13 21:22:13 -04:00
sample-mask-in-and-out.fixed-sample-mask.frag Enabling setting a fixed sampleMask in Metal fragment shaders. 2020-07-24 11:19:46 +02:00
sample-mask-not-used.fixed-sample-mask.frag Enabling setting a fixed sampleMask in Metal fragment shaders. 2020-07-24 11:19:46 +02:00
sample-mask.fixed-sample-mask.frag Enabling setting a fixed sampleMask in Metal fragment shaders. 2020-07-24 11:19:46 +02:00
sample-mask.frag CompilerMSL support gl_SampleMask and convert it to scalar uint from array. 2018-02-13 14:44:40 -05:00
sample-position-func.frag MSL: Handle the SamplePosition builtin. 2018-09-13 09:34:28 -05:00
sample-position.frag MSL: Handle the SamplePosition builtin. 2018-09-13 09:34:28 -05:00
sample-rate-frag-coord-sample-id.frag MSL: Adjust FragCoord for sample-rate shading. 2020-11-23 10:30:24 -06:00
sample-rate-frag-coord-sample-input.frag MSL: Adjust FragCoord for sample-rate shading. 2020-11-23 10:30:24 -06:00
sample-rate-frag-coord-sample-pos.frag MSL: Adjust FragCoord for sample-rate shading. 2020-11-23 10:30:24 -06:00
sample-rate-frag-coord.force-sample.frag MSL: Adjust FragCoord for sample-rate shading. 2020-11-23 10:30:24 -06:00
sampler-1d-lod.1d-as-2d.frag MSL: Handle Offset and Grad operands for 1D-as-2D textures. 2020-10-15 12:51:00 -05:00
sampler-1d-lod.frag Ignore LOD when sampling 1D textures in MSL. 2018-04-04 09:26:53 +02:00
sampler-compare-bias.msl23.1d-as-2d.frag MSL: Allow Bias and Grad arguments with comparison on Mac in MSL 2.3. 2020-10-30 11:14:59 -05:00
sampler-compare-cascade-gradient.frag MSL: Workaround missing gradient2d() for sampler_compare. 2019-01-07 10:01:00 +01:00
sampler-compare-cascade-gradient.ios.frag MSL: Workaround missing gradient2d() for sampler_compare. 2019-01-07 10:01:00 +01:00
sampler-compare-cascade-gradient.msl23.frag MSL: Allow Bias and Grad arguments with comparison on Mac in MSL 2.3. 2020-10-30 11:14:59 -05:00
sampler-cube-grad.agx-cube-grad.frag MSL: Work around broken cube texture gradients on Apple Silicon. 2023-11-27 15:03:26 -08:00
sampler-image-arrays.msl2.frag Add test for sampler image arrays. 2018-04-04 09:41:20 +02:00
sampler-ms.frag Enhance MSL testing and add numerous MSL test cases. 2017-01-30 22:55:21 -05:00
sampler.frag Add explicit in/out locations everywhere. 2017-06-21 09:39:08 +02:00
scalar-refract-reflect.frag MSL/HLSL: Support scalar reflect and refract. 2019-07-03 12:31:52 +02:00
separate-image-sampler-argument.frag Fix separate sampler images in MSL. 2017-05-07 12:36:14 +02:00
shader-arithmetic-8bit.frag MSL: Fix another test incompatibility. 2019-01-30 17:22:38 +01:00
spec-constant-block-size.frag Support spec constant array size in blocks. 2018-02-23 15:11:45 +01:00
spec-constant-ternary.frag Support ternary expressions in OpSpecConstantOp. 2018-06-25 09:49:13 +02:00
stencil-export.msl21.frag MSL: Support stencil export. 2019-06-12 10:21:20 +02:00
subgroup-builtins.msl22.frag MSL: Add support for SubgroupSize / SubgroupInvocationID in fragment. 2019-06-24 12:31:54 +02:00
subgroup-globals-extract.msl22.frag MSL: extract global variables from subgroup ballot operations 2020-11-09 11:23:01 +01:00
switch-unreachable-break.frag Promote Unreachable cases into break to avoid fallthrough. 2022-05-18 18:36:32 +02:00
switch-unsigned-case.frag Fix unsigned switch case selectors. 2018-11-26 10:36:50 +01:00
swizzle.frag Update tests for latest SPIRV-Tools and glslang. 2018-03-12 15:11:55 +01:00
texel-fetch-offset.1d-as-2d.frag MSL: Handle Offset and Grad operands for 1D-as-2D textures. 2020-10-15 12:51:00 -05:00
texel-fetch-offset.frag MSL: Fix support for texelFetchOffset. 2018-08-07 15:28:04 +02:00
texture-cube-array.frag Further updates for pull request #1162; also added two test cases for spvCubemapTo2DArrayFace function and added '--msl-framebuffer-fetch'/ '--msl-emulate-cube-array' compiler options. 2019-09-27 15:49:54 -04:00
texture-cube-array.ios.emulate-cube-array.frag Further updates for pull request #1162; also added two test cases for spvCubemapTo2DArrayFace function and added '--msl-framebuffer-fetch'/ '--msl-emulate-cube-array' compiler options. 2019-09-27 15:49:54 -04:00
texture-multisample-array.msl21.frag MSL: Support texture2d_ms_array. 2018-09-03 11:02:31 +02:00
texture-proj-shadow.frag Fix issue #239: compilation of shaders-msl/frag/texture-proj-shadow.frag. 2017-08-11 14:54:58 -04:00
ubo_layout.frag Enhance MSL testing and add numerous MSL test cases. 2017-01-30 22:55:21 -05:00
unary-enclose.frag Fix unary enclosures. 2017-07-24 10:17:19 +02:00
vecsize-mismatch.shader-inputs.frag MSL: Fix up input variables' vector lengths in all stages. 2020-06-16 14:50:30 -05:00
write-depth-in-function.frag MSL: Add test case for gl_FragDepth when used in function. 2018-08-29 09:21:48 +02:00