-
26da9c58
by rdb at 2023-01-17T23:42:04+01:00
HLSL: Support PointSize output in vertex shader in SM 3.0
-
c9f2186e
by warmenhoven at 2023-01-17T23:17:22-05:00
Win10 doesn't like std::max
-
c1023854
by Hans-Kristian Arntzen at 2023-01-18T11:56:23+01:00
Merge pull request #2088 from rdb/hlsl-legacy-point-size
HLSL: Support PointSize output in vertex shader in SM 3.0
-
4be568c0
by Hans-Kristian Arntzen at 2023-01-18T12:06:28+01:00
Merge pull request #2089 from warmenhoven/patch-1
Win10 doesn't like std::max
-
2a9091ce
by Chip Davis at 2023-01-18T19:34:29-08:00
MSL: Use `rint()` instead of `round()` to round array coordinates.
Vulkan specifies round-to-nearest-even mode to round array coordinates.
But we were using `round()`, which is round-to-nearest-away-from-zero.
Instead, use `rint()`, which is specified to perform nearest-even
rounding in MSL.
-
3335835f
by Lachlan Deakin at 2023-01-19T22:28:38+11:00
GLSL: Support OpReadClockKHR
-
e6d1c76e
by rdb at 2023-01-19T14:18:01+01:00
Add early exit for test_shaders if compilation fails
-
85a78324
by Hans-Kristian Arntzen at 2023-01-20T16:51:16+01:00
MSL: Fix potentially uninitialized warning.
-
f3a75d1d
by Hans-Kristian Arntzen at 2023-01-20T16:56:11+01:00
MSL: Fix another warning on potentially uninitialized.
-
5029e30f
by libretroadmin at 2023-01-20T18:36:11+01:00
(spirv_glsl.cpp) Fix error: no matching function for call to 'max(uint32_t&, unsigned int)'
-
eb9b2732
by Hans-Kristian Arntzen at 2023-01-20T18:39:38+01:00
Merge pull request #2094 from LibretroAdmin/main
(spirv_glsl.cpp) Fix error: no matching function for call to 'max(uint32_t&, unsigned int)'
-
dff27698
by rdb at 2023-01-21T11:42:55+01:00
GLSL: Multiplying matrix with scalar shouldn't force transpose
-
2202c2a7
by rdb at 2023-01-23T11:55:53+01:00
GLSL: Add various additional extension checks.
-
d70bfa5f
by rdb at 2023-01-23T14:51:26+01:00
GLSL: Allow sample inputs in desktop < 400 with GL_ARB_sample_shading
Neither legacy ES nor legacy desktop support these extensions
-
c98ebc03
by Hans-Kristian Arntzen at 2023-01-26T15:14:08+01:00
Merge pull request #2092 from rdb/patch-1
Add early exit for test_shaders if compilation fails
-
45824ea1
by Hans-Kristian Arntzen at 2023-01-26T15:38:05+01:00
Merge pull request #2095 from rdb/glsl-matrix-times-scalar-no-transpose
GLSL: Multiplying matrix with scalar shouldn't force transpose
-
9da448c9
by Hans-Kristian Arntzen at 2023-01-26T15:41:15+01:00
Merge pull request #2096 from rdb/glsl-extension-checks
GLSL: Add various missing extension checks
-
f575b894
by Hans-Kristian Arntzen at 2023-01-26T15:41:40+01:00
Merge pull request #2091 from LDeakin/shader-clock
GLSL: Support OpReadClockKHR
-
9de5abaf
by Hans-Kristian Arntzen at 2023-01-26T15:41:51+01:00
GLSL: Minor fixes for shader clock implementation.
-
ff7a11db
by Hans-Kristian Arntzen at 2023-01-26T17:14:38+01:00
Merge pull request #2097 from KhronosGroup/shader-clock-tweaks
GLSL: Minor fixes for shader clock implementation.
-
d10044b2
by rdb at 2023-01-26T19:14:25+01:00
GLSL: Add support for modf, isnan and isinf in legacy GLSL
-
53974b4f
by rdb at 2023-01-26T19:40:42+01:00
GLSL/HLSL: Add emulated fallbacks for sinh/cosh/tanh/asinh/acosh/atanh
The inverse hyperbolic functions are not supported in HLSL, and none of them are supported in legacy GLSL.
-
f8cc03fd
by rdb at 2023-01-27T11:10:47+01:00
GLSL: Drop invariant keyword in GLSL 110
-
99f130bb
by Hans-Kristian Arntzen at 2023-01-27T12:10:02+01:00
Merge pull request #2099 from rdb/patch-1
GLSL: Drop invariant keyword in GLSL 110
-
cd612e7d
by Hans-Kristian Arntzen at 2023-01-27T12:13:14+01:00
Merge pull request #2090 from rdb/glsl-legacy-math-funcs
GLSL: Add support for trunc, modf, isnan and isinf in legacy GLSL
-
86a985f2
by Hans-Kristian Arntzen at 2023-01-27T12:15:28+01:00
Merge pull request #2093 from rdb/emulate-unsupported-hyperbolic-funcs
GLSL/HLSL: Add emulated fallbacks for hyperbolic math functions
-
20981666
by rdb at 2023-01-27T13:51:47+01:00
GLSL: Legacy matrix inverse/determinant polyfills, outerProduct()
Also refactors polyfill mechanism in GLSL and fixes transpose() lowering precision.
-
199d0cb8
by Hans-Kristian Arntzen at 2023-01-27T14:37:45+01:00
Merge pull request #2100 from rdb/glsl-matrix-polyfills
GLSL: Add matrix inverse/determinant polyfills, outerProduct()
-
c356dd62
by rdb at 2023-01-27T21:44:47+01:00
GLSL: Fix missing precision qualifier in spvDeterminant return value
Follow-up to #2100
-
459fa679
by Hans-Kristian Arntzen at 2023-02-02T11:26:06+01:00
Merge pull request #2101 from rdb/glsl-fix-missing-qualifier
GLSL: Fix missing precision qualifier in spvDeterminant return value
-
36691f90
by Ravbug at 2023-02-02T12:42:17-05:00
Check for SM < 6.7
-
e8d41985
by Chip Davis at 2023-02-02T22:01:46-08:00
MSL: Add a workaround for broken `level()` arguments.
Some Metal devices have a bug with depth array textures using comparison
with explicit LoD, where the LoD given will be biased by some amount.
For these devices, we can use a gradient instead, which does not exhibit
this problem. As with the fragment demote workaround, this is only
expected to be needed until the bug is fixed in Metal.
-
38843160
by Hans-Kristian Arntzen at 2023-02-03T16:36:44+01:00
Merge pull request #2103 from cdavis5e/msl-sample-dref-lod-array-workaround
MSL: Add a workaround for broken `level()` arguments.
-
4e2fdb25
by Hans-Kristian Arntzen at 2023-02-03T17:05:31+01:00
Merge pull request #2104 from Ravbug/fix-int-sm6.7
Support integer samplers in Shader Model 6.7
-
a57dba53
by Randall C. O'Reilly at 2023-02-04T21:47:08-08:00
add support for OpAtomicFAddEXT atomic add on float types, now avail in metal 3.0
-
c4b7ec10
by Randall C. O'Reilly at 2023-02-04T21:52:07-08:00
add OpAtomicFMinEXT and Max as well, while we're at it -- I didn't test those but presumably work the same.
-
bff7680c
by Randall C. O'Reilly at 2023-02-14T16:43:50-08:00
revert FMinEXT, FMaxExt
-
8e20860b
by Randall C. O'Reilly at 2023-02-15T00:04:44-08:00
added tests and added msl3 to test_shaders.py
-
41007cdc
by Chip Davis at 2023-02-17T10:43:50-08:00
MSL: Deduplicate function constants.
It is possible in SPIR-V to declare multiple specialization constants
with the same constant ID. The most common cause of this in GLSL is
defining a spec constant, then declaring the workgroup size to use that
spec constant by its ID. But, MSL forbids defining multiple function
constants with the same function constant ID. So, we must only emit one
definition of the actual function constant (with the
`[[function_constant(id)]]` attribute); but we can point the other
variables at this one definition.
Fixes three tests in the Vulkan CTS under
`dEQP-VK.compute.basic.max_local_size_*`.
-
29f959db
by Randall C. O'Reilly at 2023-02-18T03:10:58-08:00
update msl_compiler_supports_version to work with metal 3.0
-
5e512971
by Hans-Kristian Arntzen at 2023-02-20T12:56:25+01:00
Merge pull request #2108 from cdavis5e/msl-duplicate-spec-id
MSL: Deduplicate function constants.
-
c76111f2
by Randall C. O'Reilly at 2023-02-20T04:41:28-08:00
cleaner version check
-
3550a54a
by Hans-Kristian Arntzen at 2023-02-21T13:05:31+01:00
Merge pull request #2105 from goki/main
add support for OpAtomicFAddEXT atomic add, and also Min, Max
-
f086cd02
by skkkksdkfak at 2023-02-24T11:00:41+01:00
Fix argument for CommitProceduralPrimitiveHit.
-
83650af3
by Laura Hermanns at 2023-02-27T11:51:49-05:00
GLSL: Don't create temporaries for sampled image types in GLSL.
This fixes a bug that was exposed when targeting GLSL with
Vulkan semantics while 'force_temporary' is enabled.
-
7512345f
by Hans-Kristian Arntzen at 2023-02-27T20:36:36+01:00
Merge pull request #2110 from EpicGames/fixes_glsl
GLSL: Don't create temporaries for sampled image types in GLSL.
-
46a7ce8d
by Nathan Gauër at 2023-03-09T17:03:53+01:00
adds Khronos license to LICENSES folder.
This license is in spirv.h, but absent from the LICENSES file.
-
2d598f29
by Nathan Gauër at 2023-03-09T18:23:49+01:00
try adding SPDX notice
-
ada70640
by Nathan Gauër at 2023-03-13T14:01:13+01:00
applying pr feedback
-
0d8cfdb4
by Nathan Gauër at 2023-03-13T15:41:15+01:00
revert trailing space fix
-
d26c233e
by Hans-Kristian Arntzen at 2023-03-13T17:22:12+01:00
Merge pull request #2121 from Keenuts/licenses
adds Khronos license to LICENSES folder.
-
5ca8266e
by Skye at 2023-03-16T19:09:55+00:00
Implement setscalar fns for all getscalar fns
-
0c1302bb
by Skye at 2023-03-17T17:49:08+00:00
bumped version, corrected function signatures
-
dd8839c6
by Try at 2023-03-18T17:20:16+01:00
task shader initial
-
7ac2c84f
by Try at 2023-03-18T19:50:28+01:00
code-style
-
a25d0aca
by Gulfem Savrun Yeniceri at 2023-03-20T20:50:03+00:00
Add missing <exception> include
https://reviews.llvm.org/D146097 removed the transitive include for
<exception>, which caused the following issue:
In file included from ../../third_party/spirv-cross/spirv_common.hpp:28:
../../third_party/spirv-cross/spirv_cross_containers.hpp:334:9: error:
no member named 'terminate' in namespace 'std
This patch adds the missing include to fix the issue.
-
202bf053
by Hans-Kristian Arntzen at 2023-03-21T12:21:47+01:00
Merge branch 'hlsl_fix_hit_t_arg' of https://github.com/skkkksdkfak/SPIRV-Cross
-
8c509fec
by Hans-Kristian Arntzen at 2023-03-21T12:23:40+01:00
HLSL: Update rayquery reference.
-
763dbe14
by Hans-Kristian Arntzen at 2023-03-21T12:56:03+01:00
Merge pull request #2125 from gulfemsavrun/main
Add missing <exception> include
-
4a5d21bf
by Try at 2023-03-21T21:08:59+01:00
virtual emit_mesh_tasks
-
cb45e4be
by Try at 2023-03-21T21:11:07+01:00
cleanup
-
09e60d74
by Hans-Kristian Arntzen at 2023-03-22T12:36:47+01:00
Merge pull request #2124 from Try/hlsl-task-shader
HLSL: Add task(amplification) shader support
-
4a4ac7f9
by John Wells at 2023-03-23T19:04:50-04:00
Fix for argument buffer index compare when invalid
-
e31deb83
by John Wells at 2023-03-23T19:05:12-04:00
Fix for typo in help
-
f3d05a5a
by Skye at 2023-03-28T16:46:03+01:00
Merge branch 'KhronosGroup:main' into main
-
a3b5cdc5
by Skye at 2023-03-28T16:47:43+01:00
update f32 to u32
-
42a89a58
by John Wells at 2023-03-29T13:52:42-04:00
Add code braces
-
8e64f8ee
by Hans-Kristian Arntzen at 2023-03-29T20:36:10+02:00
Merge pull request #2123 from piegfx/main
Implement set_scalar functions in the specialization constants C API
-
275e4d7e
by John Wells at 2023-03-29T21:55:32-04:00
Make argument buffer padding testable
-
4c622ce0
by John Wells at 2023-03-30T11:13:39-04:00
Revert "Make argument buffer padding testable"
This reverts commit 275e4d7e88bf5495c8fd69a0bde814ec82338b2e.
-
50623e13
by Hans-Kristian Arntzen at 2023-03-30T17:24:11+02:00
GLSL: Fix _expression_ reorder bug with legacy FMA fallback.
-
abd23cc2
by Hans-Kristian Arntzen at 2023-03-30T18:01:09+02:00
Merge pull request #2127 from attackgoat/aliased-descriptor-fix
Aliased descriptor fix
-
3327924a
by Hans-Kristian Arntzen at 2023-03-30T18:25:35+02:00
Merge pull request #2130 from KhronosGroup/fix-2129
GLSL: Fix _expression_ reorder bug with legacy FMA fallback.
-
1f6653ec
by Hans-Kristian Arntzen at 2023-03-30T18:30:44+02:00
MSL: Do not override variable name late.
If we have emitted block IO lowering at the end of vertex shader, we
will end up using the wrong name. Forcing a v_ prefix does not solve any
actual problems since the intentifier already has to be valid.
-
1d4e0637
by Hans-Kristian Arntzen at 2023-03-30T18:30:44+02:00
HLSL: Add missing test reference.
-
884e5c0e
by Hans-Kristian Arntzen at 2023-03-30T18:30:44+02:00
MSL: Add test for block IO output with function use.
-
b693d8fa
by georgeouzou at 2023-04-02T01:25:15+03:00
GLSL: Support KHR_subgroup_arithmetic IAdd
Support NV workarounds for IAdd Reduce/InclusiveScan/ExclusiveScan
-
dbf62188
by georgeouzou at 2023-04-02T10:45:25+03:00
GLSL: Support KHR_subgroup_arithmetic FAdd
Support NV workarounds for FAdd Reduce/InclusiveScan/ExclusiveScan
-
ab3a6212
by georgeouzou at 2023-04-03T18:42:08+03:00
GLSL: Checking for inactive threads in non uniform arithmetic ops
The last argument of shuffle*NV functions does not return if the
current thread is inactive, but only if it is out of range.
-
168e9f2c
by georgeouzou at 2023-04-03T19:13:30+03:00
GLSL: Support KHR_subgroup_arithmetic IMul/FMul
Support NV workarounds for IMul/FMul Reduce/InclusiveScan/ExclusiveScan
-
d1ac6524
by 手机用户Xh2vb13n at 2023-04-10T16:55:38+08:00
HLSL: support Texture2D::GatherCmp function
refer to https://learn.microsoft.com/en-us/windows/win32/direct3dhlsl/sm5-object-texture2d-gathercmp
-
e57b901d
by Hans-Kristian Arntzen at 2023-04-11T17:06:56+02:00
MSL: Use name_id consistently in argument declaration.
-
3fa767db
by Hans-Kristian Arntzen at 2023-04-11T19:01:51+02:00
Merge pull request #2135 from d34d633f/patch-1
HLSL: support Texture2D::GatherCmp function
-
fc9bee27
by Hans-Kristian Arntzen at 2023-04-11T23:17:51+02:00
Merge pull request #2131 from KhronosGroup/fix-2128
MSL: Don't append v_ identifier
-
16b5ce09
by Laura Hermanns at 2023-04-24T20:36:44-04:00
GLSL: Use actual field offset to validate vec4 boundary alignment.
-
b19aa51e
by Laura Hermanns at 2023-04-25T09:33:40-04:00
HLSL: Don't restrict SV_RenderTargetArrayIndex to GS and MS.
-
0f48b39b
by Hans-Kristian Arntzen at 2023-04-27T16:58:27+02:00
Merge pull request #2138 from EpicGames/fixes_hlsl
HLSL: Don't restrict SV_RenderTargetArrayIndex to GS and MS.
-
da12e7ad
by Hans-Kristian Arntzen at 2023-04-27T17:03:47+02:00
Merge pull request #2139 from EpicGames/fixes_glsl
GLSL: Use actual field offset to validate vec4 boundary alignment.
-
6eec0afb
by Hans-Kristian Arntzen at 2023-04-27T17:05:06+02:00
Update Ubuntu CI versions.
-
a5ec818d
by Hans-Kristian Arntzen at 2023-04-27T17:40:02+02:00
HLSL: Add test for straddling + holes in struct.
-
4faeb81f
by Hans-Kristian Arntzen at 2023-04-27T17:40:47+02:00
Merge pull request #2141 from KhronosGroup/ci-update
Update Ubuntu version in CI.
-
813cfdce
by George Ouzounoudis at 2023-05-01T14:24:33+03:00
GLSL: Address review comments
Fix a warning and some format issues
-
ff962261
by George Ouzounoudis at 2023-05-01T15:51:54+03:00
GLSL: Add tests for subgroup iadd, fadd, imul, fmul
-
54b48a2f
by Hans-Kristian Arntzen at 2023-05-10T11:32:00+02:00
Merge pull request #2133 from georgeouzou/main
GLSL: Support GL_KHR_shader_subgroup_arithmetic (WIP)
-
88790d31
by Hans-Kristian Arntzen at 2023-05-10T12:35:47+02:00
GLSL: Disambiguate pointer vs array properly in packed_size/alignment.
-
193ca867
by Hans-Kristian Arntzen at 2023-05-10T12:46:35+02:00
MSL: Don't hit array copy path for pointer to array.
Pointee type of load and store pointers must be a top-level array type.
-
cfd1618e
by Hans-Kristian Arntzen at 2023-05-10T13:33:54+02:00
MSL: Use templated array type when emitting BDA to arrays.
Handling native array types is not really feasible since we need to fuse
the variable declaration with the type declaration.
This is feasible in something like variable_decl, but for plain SSA
pointers, this breaks down.
-
71fe651e
by Hans-Kristian Arntzen at 2023-05-11T11:42:32+02:00
Be more precise in usage of pointer/array mixing.
-
34cd230e
by Evan Tang at 2023-05-11T19:39:38-05:00
MSL: Fix dref lod workaround on combined texture/samplers
-
c26a2e8e
by Trass3r at 2023-05-12T12:27:40+02:00
upload binaries as artifacts (#2144)
Upload artifacts to CI as well.
-
7cb2f62e
by Hans-Kristian Arntzen at 2023-05-12T12:28:52+02:00
Merge pull request #2147 from KhronosGroup/fix-2145
Fix misc bugs with mixed pointer/array types in buffers
-
bcb62437
by Laura Hermanns at 2023-05-12T14:41:00-04:00
HLSL: Add support to preserve (RW)StructuredBuffer resources.
-
28b11e01
by Hans-Kristian Arntzen at 2023-05-16T17:05:19+02:00
Merge pull request #2148 from etang-cw/FixDref
MSL: Fix dref lod workaround on combined texture/samplers
-
578bdf41
by Laura Hermanns at 2023-05-17T13:52:24-04:00
Added tests for HLSL structured buffers.
-
6df60be6
by Hans-Kristian Arntzen at 2023-05-19T11:10:24+02:00
Merge remote-tracking branch 'epic/fixes_hlsl'
-
63ea1a52
by Hans-Kristian Arntzen at 2023-05-19T11:38:09+02:00
HLSL: Add CLI option for --hlsl-preserve-structured-buffers.
-
bf752eda
by Hans-Kristian Arntzen at 2023-05-19T11:38:12+02:00
Update test output for preserve structured.
-
12542fc6
by Hans-Kristian Arntzen at 2023-05-19T12:44:33+02:00
Merge pull request #2152 from KhronosGroup/fix-2143
Land PR 2143
-
c4fdb3f3
by Tibor Klajnscek at 2023-05-26T15:43:43+02:00
added get_required_extensions() API to GLSL compiler
-
17ddd591
by rcombs at 2023-05-27T22:25:02-05:00
MSL: fix function constant deduplication misfire
Previously, if a constant without DecorationSpecId occurred before the constant with DecorationSpecId 0, it would be inserted into the unique_func_constants map with key 0 (the default return value from get_decoration). This prevented us from ever emitting the declaration with [[function_constant(0)]], which produced some bizarre MSL compilation errors.
Instead, we now only insert into unique_func_constants when we know we're going to emit a [[function_constant(…)]] line.
This regressed in 41007cdc7d9c3a1f9b61e307d149f94a68fa3c9c.
-
bb0c17f8
by Stephen Hutchinson at 2023-05-30T00:56:01-04:00
Add pkg-config file for static builds
Addresses issue #2117
-
0bef74c0
by Stephen Hutchinson at 2023-05-30T00:56:01-04:00
CMakeLists/pkgconfig: use a single version definition
Avoids having duplicate copies in both SPIRV_CROSS_STATIC and
SPIRV_CROSS_SHARED if blocks
-
d01006ec
by Hans-Kristian Arntzen at 2023-06-06T12:34:23+02:00
Merge pull request #2157 from rcombs/patch-1
MSL: fix function constant deduplication misfire
-
2ace2714
by Hans-Kristian Arntzen at 2023-06-06T12:41:59+02:00
Apply suggestions from code review
-
bf3f651f
by Hans-Kristian Arntzen at 2023-06-06T12:58:22+02:00
Workaround MSVC jank
-
c4eb2317
by Hans-Kristian Arntzen at 2023-06-06T13:19:21+02:00
MSL: Consider bool/short remapping when dealing with composites.
-
01b98264
by Hans-Kristian Arntzen at 2023-06-06T13:55:29+02:00
MSL: Handle stores to struct bool[].
-
bbcd8de9
by Hans-Kristian Arntzen at 2023-06-06T15:05:56+02:00
MSL: Handle more complex array copy scenarios with bool <-> short.
-
b0b2fd8d
by Hans-Kristian Arntzen at 2023-06-06T15:17:23+02:00
MSL: Add test for bool-in-struct edge cases.
-
2d4587cd
by Hans-Kristian Arntzen at 2023-06-06T15:21:42+02:00
Merge pull request #2155 from tklajnscek/tk_glsl_get_extensions_api
Added get_required_extensions() API to GLSL compiler
-
a20fc9ac
by Hans-Kristian Arntzen at 2023-06-06T15:21:55+02:00
Merge pull request #2159 from qyot27/static_pc
Static pkg-config support
-
28762d76
by Hans-Kristian Arntzen at 2023-06-06T15:22:27+02:00
spirv-cross-c: Bump minor version.
-
55750be7
by Hans-Kristian Arntzen at 2023-06-06T15:25:22+02:00
Small cleanup after merge.
-
74bae9a0
by Hans-Kristian Arntzen at 2023-06-07T12:30:57+02:00
Minor cleanup in constant_expression().
-
87351086
by Hans-Kristian Arntzen at 2023-06-07T12:33:37+02:00
MSL: Consider bool-short remapping for constant expressions as well.
-
13e6981c
by Hans-Kristian Arntzen at 2023-06-07T13:54:50+02:00
MSL: Consider changed array types for array-of-constant-bool in struct.
-
17d00edd
by Hans-Kristian Arntzen at 2023-06-07T13:58:54+02:00
C-api: Fix warning.
-
74702f50
by Hans-Kristian Arntzen at 2023-06-07T15:30:10+02:00
Merge pull request #2161 from KhronosGroup/fix-2151
Fix more edge cases in bool <-> short remapping
-
5b322555
by Hans-Kristian Arntzen at 2023-06-07T15:31:29+02:00
GLSL: Fix bug with mixed precision on PHI variables.
-
030d0be2
by Hans-Kristian Arntzen at 2023-06-07T16:27:50+02:00
Merge pull request #2163 from KhronosGroup/fix-2162
GLSL: Fix bug with mixed precision on PHI variables.
-
0e1ce21d
by Hans-Kristian Arntzen at 2023-06-12T12:33:58+02:00
Skip line directives when emitting loop condition blocks.
Avoids problem where enabling line directives breaks loop optimizations
since it thinks there are legitimate statements in the block.
-
2d3a1520
by Hans-Kristian Arntzen at 2023-06-12T15:07:41+02:00
Merge pull request #2167 from KhronosGroup/fix-2154
Skip line directives when emitting loop condition blocks.
-
85a56420
by Try at 2023-06-18T16:06:31+02:00
meshlet flip-y support
-
34f7bd00
by Try at 2023-06-18T16:19:49+02:00
flip-y-test
-
68f0257f
by Chip Davis at 2023-06-23T14:54:16-07:00
Use --preserve-numeric-ids when assembling test shaders.
This makes it easier to debug codegen for these shaders.
-
00f14ce7
by Chip Davis at 2023-06-24T15:53:04-07:00
MSL: Support `SPV_KHR_shader_ballot` and `SPV_KHR_subgroup_vote`.
Normally, I wouldn't have bothered with this, given that we already
support the Vulkan 1.1 subgroup functionality, but a client asked for
the legacy extensions.
-
4f7e62d1
by Hans-Kristian Arntzen at 2023-06-26T12:19:25+02:00
Merge pull request #2170 from cdavis5e/preserve-numeric-ids
Use --preserve-numeric-ids when assembling test shaders.
-
61d5ae9c
by Hans-Kristian Arntzen at 2023-06-26T12:23:34+02:00
Apply suggestions from code review
-
9f463569
by Hans-Kristian Arntzen at 2023-06-26T12:27:06+02:00
Merge pull request #2172 from cdavis5e/msl-legacy-subgroup
MSL: Support `SPV_KHR_shader_ballot` and `SPV_KHR_subgroup_vote`.
-
aafcc207
by Hans-Kristian Arntzen at 2023-06-26T12:41:36+02:00
HLSL: Add explicit error for floating point atomics.
-
68376504
by Try at 2023-07-01T15:49:35+02:00
track access to meshlet position.y, via SPIRExpression
-
a065c3b4
by Hans-Kristian Arntzen at 2023-07-03T13:55:02+02:00
Merge branch 'dx12-mesh-flip-y' of https://github.com/Try/SPIRV-Cross into pr-2168
-
a3d711cb
by Hans-Kristian Arntzen at 2023-07-03T14:03:04+02:00
HLSL: Move new mesh shader around to more suitable location.
-
601b60c5
by Hans-Kristian Arntzen at 2023-07-03T14:15:26+02:00
Consider plain Position builtin variable as well.
-
8ec95fbe
by Hans-Kristian Arntzen at 2023-07-03T14:20:27+02:00
Consider dynamically indexed gl_Position in mesh.
-
87e1ca42
by Hans-Kristian Arntzen at 2023-07-03T14:25:22+02:00
Add test for plain variable mesh position.
-
b8e742c9
by Hans-Kristian Arntzen at 2023-07-03T15:52:20+02:00
Merge pull request #2174 from KhronosGroup/pr-2168
Land PR 2168
-
62331b6a
by Try at 2023-07-03T19:57:46+02:00
+ spvMakeIntersectionParams
#2115
-
35b23ef4
by Try at 2023-07-03T20:04:23+02:00
update rq unit tests
-
6b2ae118
by Try at 2023-07-03T21:45:34+02:00
update rq unit tests
-
b43c1a1e
by Hans-Kristian Arntzen at 2023-07-14T16:02:40+02:00
Merge pull request #2176 from Try/msl-intersection-params
MSL: ray-query intersection params
-
05524e7f
by Bill Hollings at 2023-07-14T18:57:34-04:00
Fix argument buffer padding when content includes arrays.
- When determining need for arg buffer padding, use the descriptor count provided
by the app, rather than the shader, to determine the number of slots consumed,
as the shader may only be accessing part, or even one element, of the array.
-
bccaa94d
by Hans-Kristian Arntzen at 2023-07-26T10:52:38+02:00
Merge pull request #2178 from billhollings/arg-buff-fixes
Fix argument buffer padding when content includes arrays.
-
4405dd6b
by Evan Tang at 2023-08-15T11:32:33-05:00
MSL: Prevent RAW hazards on read_write textures
-
894113f5
by Evan Tang at 2023-08-15T11:32:33-05:00
MSL: Make rw texture fences optional
-
637c211c
by Hans-Kristian Arntzen at 2023-08-17T11:05:55+02:00
Merge pull request #2153 from etang-cw/TexFence
[WIP] MSL: Prevent RAW hazards on read_write textures
-
844cb59c
by Try at 2023-08-17T11:37:29+02:00
MSL: runtime array over argument buffers
-
44966e50
by Hans-Kristian Arntzen at 2023-08-17T12:01:26+02:00
MSL: Fixup nits from review.
-
5ffc813d
by Hans-Kristian Arntzen at 2023-08-17T12:07:11+02:00
GLSL: Require mesh shader when using perprimitiveEXT in frag shader.
-
5e3ea648
by Hans-Kristian Arntzen at 2023-08-17T12:17:55+02:00
GLSL: Implement 64-bit image support.
-
79d63934
by Hans-Kristian Arntzen at 2023-08-17T12:45:54+02:00
GLSL: Emit inline invariant position for mesh shaders.
Work around missing feature from GLSL. Normally we can emit a global
invariant gl_Position; and call it a day, but it does not work for mesh
shaders it seems. Declaring invariance inside an explicit IO block works
fine on the other hand ...
-
62664e42
by Hans-Kristian Arntzen at 2023-08-17T13:50:13+02:00
Merge pull request #2184 from KhronosGroup/msl-runtime-array-to-argument-buffer
Land PR 2179
-
e7e2e8ce
by Hans-Kristian Arntzen at 2023-08-17T13:50:22+02:00
Merge pull request #2185 from KhronosGroup/perprimitive-fix
GLSL: Require mesh shader when using perprimitiveEXT in frag shader.
-
a3f02681
by Hans-Kristian Arntzen at 2023-08-17T13:50:29+02:00
Merge pull request #2186 from KhronosGroup/64bit-images
GLSL: Implement 64-bit image support.
-
633dc301
by Hans-Kristian Arntzen at 2023-08-17T13:51:54+02:00
Merge pull request #2187 from KhronosGroup/mesh-invariant-position
GLSL: Emit inline invariant position for mesh shaders.
-
b76394e6
by Hans-Kristian Arntzen at 2023-08-25T11:59:21+02:00
GLSL: Fix Clip/Cull in mesh shaders.
-
acf51c1b
by Hans-Kristian Arntzen at 2023-08-25T12:55:00+02:00
Merge pull request #2191 from KhronosGroup/mesh-clip-cull-fix
GLSL: Fix Clip/Cull in mesh shaders.
-
df7fa1b9
by Hitesh A. Bosamiya at 2023-08-26T11:35:16+05:30
[SC-2189] Compiler::get_shader_resources() does not return all uniforms
-
7ba6f5ce
by Hans-Kristian Arntzen at 2023-08-28T11:33:00+02:00
Merge pull request #2190 from hiteshbosamiya/SC-2189
[SC-2189] Compiler::get_shader_resources() does not return all uniforms
-
b17dd589
by Hans-Kristian Arntzen at 2023-08-28T11:54:58+02:00
MSL: Workaround bizarre crash on macOS.
-
54997fb4
by Hans-Kristian Arntzen at 2023-08-28T21:53:24+02:00
Merge pull request #2193 from KhronosGroup/fix-2192
MSL: Workaround bizarre crash on macOS.
-
8af391ec
by Try at 2023-09-06T22:32:42+02:00
check for SPVFuncImplVariableSizedDescriptor
-
5e963d62
by Hans-Kristian Arntzen at 2023-09-12T11:42:26+02:00
Merge pull request #2197 from Try/rich-descriptor-fixup
Fixup check for SPVFuncImplVariableSizedDescriptor
-
da9c861e
by Try at 2023-09-16T19:33:27+02:00
MSL: fix mutability for rayQueryEXT parameters
-
43a59b7c
by Try at 2023-09-19T21:44:57+02:00
fix extraction of global variables, in case of atomics
-
1870ec75
by Hans-Kristian Arntzen at 2023-09-25T10:36:21+02:00
Merge pull request #2201 from Try/msl-rayquery-mutability-fix
MSL: fix mutability for rayQueryEXT parameters
-
6e1fb9b0
by Hans-Kristian Arntzen at 2023-09-25T10:39:13+02:00
Merge pull request #2203 from Try/msl-atomics-fix
MSL: fix extraction of global variables, in case of atomics
-
967ad0bb
by Try at 2023-09-28T23:58:51+02:00
Fix unroll, when storing to pointer to array
#fixed #2196
-
37fee00a
by Hans-Kristian Arntzen at 2023-10-02T12:33:46+02:00
Merge pull request #2205 from Try/hlsl-ssbo-array-store-fix
Fix unroll, when storing to pointer to array
-
5de6ae9d
by Evan Tang at 2023-10-03T15:29:02-05:00
Cache externals in GitHub Actions
-
f9dd8099
by Evan Tang at 2023-10-03T15:29:02-05:00
Parallelize Github Actions builds
-
5071f6c3
by Laura Hermanns at 2023-10-09T14:01:53-04:00
Add Natvis file with debug information for VectorView and SmallVector.
-
1f289d38
by Hans-Kristian Arntzen at 2023-10-10T12:03:36+02:00
Merge pull request #2211 from EpicGames/main
Add Natvis file with debug information for VectorView and SmallVector.
-
79401259
by Hans-Kristian Arntzen at 2023-10-10T12:14:39+02:00
Merge pull request #2207 from etang-cw/CacheSpirvTools
Improve CI build times
-
09ba7658
by Hans-Kristian Arntzen at 2023-10-11T12:55:12+02:00
MSL: Use powr instead of pow.
powr's additional UB rules match SPIR-V.
-
73726f37
by Hans-Kristian Arntzen at 2023-10-11T13:03:08+02:00
HLSL: Add missing reference output file.
-
75620181
by Hans-Kristian Arntzen at 2023-10-11T13:09:55+02:00
GLSL: Handle empty block declarations.
Similar fix as for structs.
-
be944258
by Hans-Kristian Arntzen at 2023-10-11T13:48:25+02:00
GLSL: Ignore bogus constant/undefs which use block types.
This is banned in more recent SPIR-V.
We cannot implement this in any reasonable way since block types don't
participate as normal types in GLSL.
-
255ff2b1
by Hans-Kristian Arntzen at 2023-10-11T14:18:36+02:00
GLSL: Use buffer_reference2 instead of 1.
Supports more syntax.
-
082b1df2
by Hans-Kristian Arntzen at 2023-10-11T14:20:11+02:00
Merge pull request #2215 from KhronosGroup/fix-2210
GLSL: Fix and workaround some awkward code patterns
-
724433d7
by Hans-Kristian Arntzen at 2023-10-11T14:20:36+02:00
Merge pull request #2216 from KhronosGroup/buffer-reference-2
GLSL: Use buffer_reference2 instead of 1.
-
105d5a8a
by Hans-Kristian Arntzen at 2023-10-14T12:36:49+02:00
Fix stray namespace issue.
-
16fbf887
by Bill Hollings at 2023-10-14T14:46:47-04:00
MSL: Workaround Metal 3.1 regression bug on recursive input structs.
Metal 3.1 introduced a Metal regression bug which causes an infinite recursion
crash during Metal's analysis of an entry point input structure that itself
contains internal recursion. This patch works around this by replacing the
recursive input declaration with a alternate variable of type void*, and
then casting to the correct type at the top of the entry point function.
- Add CompilerMSL::Options::replace_recursive_inputs to enable
replacing recursive input.
- Add Compiler::type_contains_recursion() to determine if a struct
contains internal recursion, and add custom Decorations to mark
such structs, to short-cut future similar checks.
- Replace recursive input struct declarations with void*,
and emit a recast to correct type at top of entry function.
- Add unit test.
- Compiler::type_is_top_level_block() remove hardcode reference to spirv_cross
namespace, as it interferes with configurable namespaces (unrelated).
-
2d072c68
by Hans-Kristian Arntzen at 2023-10-16T11:52:11+02:00
Merge branch 'metal-3-1-regression-fix' of https://github.com/billhollings/SPIRV-Cross
-
f30d280e
by Hans-Kristian Arntzen at 2023-10-16T11:52:21+02:00
Fixup stray comments in test_shaders.sh.
-
a4b85539
by Hans-Kristian Arntzen at 2023-10-16T11:55:41+02:00
Style fixups.
-
2de1265f
by Hans-Kristian Arntzen at 2023-10-16T12:19:24+02:00
Merge pull request #2218 from KhronosGroup/pr-2217
Merge PR 2217
-
5d7ee6ad
by Laura Hermanns at 2023-10-17T09:11:09-04:00
Fix declaration of gl_SampleMaskIn[1] in HLSL backend.
-
f12ee5e0
by Hans-Kristian Arntzen at 2023-10-23T11:54:49+02:00
Merge remote-tracking branch 'epic/fixes_hlsl'
-
0bedb69b
by Hans-Kristian Arntzen at 2023-10-23T12:29:25+02:00
HLSL: Declare sample mask array with proper module type.
GLSL uses int[] and HLSL emits uint[], and to deal properly
with array copies where we lose ability to rewrite arithmetic types,
we need to declare with proper type.
-
56bdcfaf
by Hans-Kristian Arntzen at 2023-10-23T12:45:08+02:00
Add test for sample mask bulk load/store.
-
2fba284b
by Hans-Kristian Arntzen at 2023-10-23T14:40:28+02:00
MSL: Improve handling of sample masks.
-
637cff3d
by Hans-Kristian Arntzen at 2023-10-23T15:21:23+02:00
Merge pull request #2220 from KhronosGroup/pr-2208
Land PR 2208 and fix more issues with sample mask
-
4a421912
by Bill Hollings at 2023-11-02T23:53:59-04:00
MSL: Fix regression error in argument buffer runtime arrays.
Argument buffers can contain multiple runtime arrays if they have fixed
lengths as specified by the binding API. Regression error had assumed each
runtime array is in separate argument buffer with undefined array length.
- Add CompilerMSL::is_var_runtime_size_array() to include test for
setting of array length via CompilerMSL::add_msl_resource_binding().
- Fixed unrelated test case MSL compile syntax failure when acceleration
structure is the first entry point function argument (unrelated).
-
4818f7e7
by Hans-Kristian Arntzen at 2023-11-03T11:18:21+01:00
Merge pull request #2222 from billhollings/fix-runtime-array-regression
MSL: Fix regression error in argument buffer runtime arrays.
-
93150ed7
by Eliza Velasquez at 2023-11-13T15:23:36-08:00
Workaround for generating bool uniforms in ESSL1
Fixes #2223.
-
0e9bc691
by Hans-Kristian Arntzen at 2023-11-16T14:00:00+01:00
Review nit, update brace placement
-
bf059200
by Hans-Kristian Arntzen at 2023-11-16T14:00:48+01:00
Only use lowp path for legacy ES
-
42aac916
by Hans-Kristian Arntzen at 2023-11-16T15:47:51+01:00
Merge pull request #2227 from elizagamedev/exv/essl1-uint-bool-hack
Workaround for generating bool uniforms in ESSL1
-
ec7a23c8
by chirsz-ever at 2023-11-22T20:05:42+08:00
Add "build" to .gitignore
-
20dd53b3
by chirsz-ever at 2023-11-22T22:17:24+08:00
Allow to customize float literals in output
-
94f4c48f
by Hans-Kristian Arntzen at 2023-11-24T12:46:28+01:00
Apply suggestions from code review
-
3e8e761e
by Hans-Kristian Arntzen at 2023-11-24T12:46:50+01:00
Apply suggestions from code review
-
42299f92
by Hans-Kristian Arntzen at 2023-11-24T12:47:51+01:00
Merge pull request #2230 from chirsz-ever/chirsz/custom-float-formater
Allow to customize float literals in output
-
dddabb9c
by Hans-Kristian Arntzen at 2023-11-27T12:14:30+01:00
MSL: Add divide to reserved function names.
-
57dbfa04
by Hans-Kristian Arntzen at 2023-11-27T15:28:20+01:00
MSL: Support std140 half matrices and arrays.
Super awkward since there is no clean way to express this.
-
81c047c3
by Hans-Kristian Arntzen at 2023-11-27T16:30:24+01:00
MSL: Use more appropriate padded types.
-
61bbcb27
by Hans-Kristian Arntzen at 2023-11-27T16:31:01+01:00
Merge pull request #2232 from KhronosGroup/fix-2228
MSL: Add divide to reserved function names.
-
3872dcd6
by Hans-Kristian Arntzen at 2023-11-27T16:52:32+01:00
MSL: Don't use swizzle if we have wrapper.
-
2e022dbf
by Hans-Kristian Arntzen at 2023-11-27T16:54:27+01:00
MSL: Move test files to packing/.
-
3717660e
by Hans-Kristian Arntzen at 2023-11-27T17:17:13+01:00
Merge pull request #2234 from KhronosGroup/fix-2226
MSL: Support std140 half matrices and arrays.
-
7ef52b04
by Chip Davis at 2023-11-27T15:03:26-08:00
MSL: Work around broken cube texture gradients on Apple Silicon.
To date, all released Apple Silicon GPUs incorrectly interpret the
gradient vectors when sampling a cube texture. Specifically, they ignore
one of the three partial derivatives in each gradient depending on the
selected major axis, and they expect the remaining derivatives to be
partially transformed.
h/t @lexaknyazev for the code used in the `spvGradientCube()` function.
Fixes 8 tests under `dEQP-VK.glsl.texture_functions.texturegrad.*`.
-
18976c43
by Chip Davis at 2023-11-27T15:03:58-08:00
Add missing new MSL options to the C API and the CLI.
-
50e90dd7
by Hans-Kristian Arntzen at 2023-11-28T12:05:55+01:00
Merge pull request #2233 from cdavis5e/agx-cube-grad-fixup
MSL: Work around broken cube texture gradients on Apple Silicon.
-
9c054b1f
by Hans-Kristian Arntzen at 2023-11-29T13:53:23+01:00
MSL: Implement Metal 3.1 image atomics natively.
The check_discard code was too annoying to deal with,
and there is no requirement to return anything meaningful.
Vulkan specs state that values returned by atomic instructions are undefined.
-
2ff08b31
by Hans-Kristian Arntzen at 2023-11-29T13:53:23+01:00
MSL: Update test scripts for MSL 3.1 testing.
-
e33670e7
by Hans-Kristian Arntzen at 2023-11-29T13:53:23+01:00
MSL: Add some image atomic tests for 3.1.
-
a326b3ea
by Hans-Kristian Arntzen at 2023-11-29T13:53:23+01:00
MSL: Support using the offline Metal Windows toolchain for validation.
-
f3573b9f
by Hans-Kristian Arntzen at 2023-11-29T14:17:57+01:00
MSL: Throw on emulated image array atomics.
-
a3da0e87
by Hans-Kristian Arntzen at 2023-11-29T14:48:20+01:00
Merge pull request #2235 from KhronosGroup/fix-2212
MSL: Implement MSL 3.1 image atomics natively
-
950cad59
by Hugo Devillers at 2023-11-30T12:28:50+01:00
Added an Op field to SPIRType
This field allows telling what the 'head' of the type is, without having to look at parent types.
-
af92037a
by Hugo Devillers at 2023-11-30T15:42:46+01:00
fix a bunch of case where SPIRType::op is wrong/corrupted
-
738bfd49
by Hugo Devillers at 2023-12-04T12:47:15+01:00
msl: fix test regressions with samplemask
-
ee7aaaf6
by Hugo Devillers at 2023-12-04T18:32:56+01:00
msl: fix two more instances of the wrong op in SPIRType
-
2c3734df
by Hugo Devillers at 2023-12-04T18:33:27+01:00
msl: fix many instances of SPIRType.self being incorrectly set
-
5b188104
by Hugo Devillers at 2023-12-04T18:33:53+01:00
msl: make build_extended_vector_type deal with compound types better
-
8632f671
by Hugo Devillers at 2023-12-04T18:36:39+01:00
msl: look at the actual variable element type in to_member_reference
-
7c7b6e60
by Hugo Devillers at 2023-12-04T18:49:22+01:00
msl: look at the pointee type in emit_tessellation_access_chain
-
55e08aff
by Hugo Devillers at 2023-12-04T18:49:46+01:00
use 'op' as the ground truth in is_array and is_pointer
-
c0760eb9
by Chip Davis at 2023-12-04T14:24:16-08:00
MSL: Fix patch vertex count with raw buffer tese input.
We can no longer rely on the `patch_control_point<>` array being
present, so the best we can do is use the value given us at compile
time.
This was an oversight on my part when I initially implemented the
raw-buffer tessellation evaluation input mode. The lack of tests for the
`PatchVertices` built-in almost certainly contributed, so I fixed that
in this patch.
Fixes the test
`dEQP-VK.tessellation.shader_input_output.patch_vertices_in_tes`. This
is the last failing test under `dEQP-VK.tessellation`.
-
7c335edc
by Hans-Kristian Arntzen at 2023-12-05T14:03:29+01:00
Merge pull request #2237 from cdavis5e/raw-tese-input-patch-vertices
MSL: Fix patch vertex count with raw buffer tese input.
-
8f58b847
by Try at 2023-12-05T20:56:48+01:00
MSL: add ray-cull mask
-
22d6e2e6
by Try at 2023-12-05T21:35:26+01:00
+ missing tests
-
766a74db
by Hans-Kristian Arntzen at 2023-12-06T14:26:25+01:00
Merge pull request #2241 from Try/msl-ray-cullmask
MSL: add ray-cull mask
-
e2886f09
by Hans-Kristian Arntzen at 2023-12-06T16:18:58+01:00
MSL: Consider PtrAccessChain on array types.
-
ed7ba430
by Hans-Kristian Arntzen at 2023-12-06T16:18:58+01:00
MSL: Use LHS _expression_ to determine whether or not to do array copy.
Makes a difference when using variable pointers.
-
0836c81e
by Hans-Kristian Arntzen at 2023-12-06T16:18:58+01:00
MSL: Only do address-of _expression_ when needed.
-
6dbec321
by Hans-Kristian Arntzen at 2023-12-06T17:09:25+01:00
MSL: Defererence pointer expressions before traversing access chain.
Exception is struct which does -> for us.
-
4e3f66b5
by Hans-Kristian Arntzen at 2023-12-06T17:09:25+01:00
MSL: Add test for vector-to-scalar variable pointer.
-
ffab994a
by Hans-Kristian Arntzen at 2023-12-06T17:09:25+01:00
MSL: Wrap dereferenced ptr-chain expressions.
-
9da5f7ce
by Hans-Kristian Arntzen at 2023-12-06T17:17:21+01:00
Merge pull request #2242 from KhronosGroup/fix-2221
MSL: Improve PtrAccessChain handling.
-
d019358c
by Hugo Devillers at 2023-12-06T17:54:34+01:00
fix unintialised struct in SPIRType
-
5065781b
by Hugo Devillers at 2023-12-06T18:04:59+01:00
fix more spirtype::op instances
-
e6b013a4
by Hans-Kristian Arntzen at 2023-12-07T11:39:26+01:00
Merge pull request #2214 from KhronosGroup/fix-2206
MSL: Use powr instead of pow.
-
e3d1b9af
by Hans-Kristian Arntzen at 2023-12-07T12:05:48+01:00
Merge branch 'spirtype-refactor' of https://github.com/Hugobros3/SPIRV-Cross into pr-2238
-
833c5936
by Hans-Kristian Arntzen at 2023-12-07T14:31:36+01:00
Various nit fixes and improvements from review.
-
13aab7f0
by Hans-Kristian Arntzen at 2023-12-07T14:37:24+01:00
Merge pull request #2243 from KhronosGroup/pr-2238
Land PR 2238
-
2603fbe5
by Hans-Kristian Arntzen at 2023-12-07T14:41:42+01:00
MSL: Remove special case for threadgroup array wrapper.
I cannot find any evidence that this does not actually work.
The original case here was from Epic's PR series in 2019, but I cannot see why it doesn't work.
It might have been a bug in a very old compiler at some point.
-
f349c912
by Hans-Kristian Arntzen at 2023-12-07T14:50:19+01:00
Merge pull request #2240 from KhronosGroup/fix-2239
MSL: Remove special case for threadgroup array wrapper.
-
d47183c0
by Bill Hollings at 2023-12-22T09:12:44-05:00
MSL: Ensure discrete runtime arrays of buffers have known length.
An entry-point array of buffers, that is not part of a Metal argument
buffer, requires a known length, so it can be emitted as discrete buffers.
For runtime arrays of resources, this can be retrieved from the resource
binding information added via add_msl_resource_binding().
- Redefine get_resource_array_size() to consolidate array sizing using both var
type, and runtime array sizing from resource bindings, if not found in type.
- Use get_resource_array_size() to fix issue for runtime arrays of buffers.
- Update runtime arrays of images and samplers to use get_resource_array_size().
- Add .DS_Store to .gitignore (unrelated).
-
b093d271
by Bill Hollings at 2024-01-03T15:34:29-05:00
Merge pull request #2248 from billhollings/msl-fix-discrete-runtime-arrays-of-buffers
MSL: Ensure discrete runtime arrays of buffers have known length.
-
d9f4280f
by Hans-Kristian Arntzen at 2024-01-05T12:05:37+01:00
Merge pull request #2252 from KhronosGroup/MoltenVK-1.2.7-for-vulkan-sdk-1.3.273
MSL: Ensure discrete runtime arrays of buffers have known length.
-
ec42cb1c
by Hans-Kristian Arntzen at 2024-01-05T13:36:34+01:00
Roll deps.
-
eabcc5e5
by Hans-Kristian Arntzen at 2024-01-05T14:02:09+01:00
Merge pull request #2254 from KhronosGroup/roll-deps
Roll deps
-
bedc49b8
by Hans-Kristian Arntzen at 2024-01-05T14:07:05+01:00
HLSL: Fix issue with vec4 straddle rules in substructs.
-
117161dd
by Hans-Kristian Arntzen at 2024-01-05T14:24:21+01:00
Merge pull request #2255 from KhronosGroup/pr-2247
HLSL: Fix issue with vec4 straddle rules in substructs.
-
cffc08a5
by Hans-Kristian Arntzen at 2024-01-05T14:54:21+01:00
Add missing reference file.
-
ec87a036
by Hans-Kristian Arntzen at 2024-01-05T16:08:29+01:00
MSL: Plumb through member state to image/sampler types.
-
a7b6f3a3
by Wooyoung Kim at 2024-01-05T22:38:08-08:00
Add supprot for the SPV_QCOM_image_processing extension
-
e10bf533
by Hans-Kristian Arntzen at 2024-01-08T12:37:01+01:00
MSL: Support variable sized descriptor array in argument buffer.
-
a8b1e07f
by Hans-Kristian Arntzen at 2024-01-08T13:04:43+01:00
MSL: Add test for texture/sampler variable count.
-
57e28e3f
by Hans-Kristian Arntzen at 2024-01-08T14:15:23+01:00
MSL: Implement spvDescriptorArray path for SSBO/UBO.
-
a3038395
by Hans-Kristian Arntzen at 2024-01-08T14:29:19+01:00
Merge pull request #2256 from KhronosGroup/fix-2250
MSL: Support variable sized descriptor arrays in argument buffers directly.
-
6b1b7c6d
by Hans-Kristian Arntzen at 2024-01-08T14:37:26+01:00
Add i64/u64 spec constant to C API.
-
7eb09ee4
by Hans-Kristian Arntzen at 2024-01-08T14:47:47+01:00
Merge pull request #2259 from KhronosGroup/fix-2249
Add i64/u64 spec constant to C API.
-
8028f756
by Wooyoung Kim at 2024-01-08T09:36:01-08:00
Merge branch 'KhronosGroup:main' into SPV_QCOM_image_processing
-
1efe04cf
by Wooyoung Kim at 2024-01-08T09:58:27-08:00
Add supprot for the SPV_QCOM_image_processing extension
-
37a58e4c
by Hans-Kristian Arntzen at 2024-01-09T16:40:01+01:00
Merge pull request #2246 from CodeLinaro/SPV_QCOM_image_processing
Add support for the SPV_QCOM_image_processing extension
-
41197bbd
by Hans-Kristian Arntzen at 2024-01-16T14:30:14+01:00
Bump to CMake 3.6 and handle deprecated Python module check.
-
0a5e7b0f
by Hans-Kristian Arntzen at 2024-01-16T14:35:24+01:00
Merge pull request #2265 from KhronosGroup/fix-2263
Bump to CMake 3.6 and handle deprecated Python module check.
-
6c24be19
by sean at 2024-01-16T14:42:56+01:00
MSL: Add support for SPV_EXT_integer_dot_product
-
b9abac50
by Hans-Kristian Arntzen at 2024-01-16T14:46:16+01:00
Fix nits from review.
-
e9851cc6
by Hans-Kristian Arntzen at 2024-01-16T16:17:43+01:00
MSL: Fix misc sign issues with dot product impl and add more coverage.
-
64f64c83
by Hans-Kristian Arntzen at 2024-01-16T16:24:33+01:00
Merge pull request #2266 from KhronosGroup/pr-2257
Land MSL integer dot products
-
c0f48374
by Hans-Kristian Arntzen at 2024-01-18T11:54:24+01:00
Add reserve to object pool.
-
871ac0e5
by Hans-Kristian Arntzen at 2024-01-18T12:40:47+01:00
GLSL: Handle BDA to plain non-block struct.
The implementation assumed that BDA to struct would always result in a
Block-like type, but that is not necessarily the case. Treat non-Block
structs as POD types as well.
-
3da5bc7a
by Hans-Kristian Arntzen at 2024-01-18T12:56:31+01:00
GLSL: Forward declare non-block BDA types as well.
With non-block structs, we can have pointers in those types too.
-
32ac768c
by Hans-Kristian Arntzen at 2024-01-18T13:11:04+01:00
GLSL: Handle synthesized pointer-to-pointer.
-
07196981
by Hans-Kristian Arntzen at 2024-01-18T13:35:43+01:00
GLSL: Add basic test for chained access chains.
-
376a308d
by Hans-Kristian Arntzen at 2024-01-18T14:14:10+01:00
GLSL: Handle ptr-to-array casts with unexpected array strides.
-
b8253676
by Hans-Kristian Arntzen at 2024-01-18T14:28:51+01:00
Merge pull request #2268 from KhronosGroup/fix-2260
GLSL: Improve BDA handling in esoteric situations
-
e0795677
by Frank McCoy at 2024-01-22T00:49:18-08:00
Fixed conflict with windows min and max
If windows.h is included before spirv_common.hpp without NOMINMAX being defined the windows min and max macros will conflict with the STL numeric limits functions.
-
c3d0bd4c
by Hans-Kristian Arntzen at 2024-01-23T12:01:32+01:00
Use more descriptive versioning in gitversion.h.
-
01c8a2a0
by Hans-Kristian Arntzen at 2024-01-23T13:07:37+01:00
Merge pull request #2270 from KhronosGroup/fix-2262
Use more descriptive versioning in gitversion.h.
-
9d87a014
by Hans-Kristian Arntzen at 2024-01-23T13:09:41+01:00
MSL: Handle volatile properly for emulated image atomics.
-
bad97c85
by Hans-Kristian Arntzen at 2024-01-23T14:42:56+01:00
Merge pull request #2269 from jaxfrank/main
Fixed conflict with windows min() and max() macros in spirv_common.hpp
-
03b485dc
by Hans-Kristian Arntzen at 2024-01-23T14:43:04+01:00
Merge pull request #2271 from KhronosGroup/fix-2264
MSL: Handle volatile properly for emulated image atomics.
-
fd3ce6e8
by DmitryTsyganov at 2024-02-01T18:08:01+01:00
Add CompilerError constructor that accepts const char* as a parameter
Fixes #2273
-
ed7a3e3e
by Try at 2024-02-04T23:28:58+01:00
fix codegen for shader with only bindless ssbo
-
3198ac2f
by Hans-Kristian Arntzen at 2024-02-05T10:28:16+01:00
Merge pull request #2276 from Try/msl-descriptor-array-fixup
Fix codegen for shader with only bindless ssbo
-
b8fcf307
by Hans-Kristian Arntzen at 2024-02-05T12:54:10+01:00
Merge pull request #2274 from DmitryTsyganov/error_message_fix
Add CompilerError constructor that accepts const char* as a parameter (Fixes #2273)
-
fa0d4b90
by Bill Hollings at 2024-02-15T19:34:30-05:00
OpCopyObject declare a temp var of base type, not pointer type.
Fixes MSL issue where temp variable was declared as pointer var, and
OpCopyObject attempted to copy a base type var into the pointer var.
-
18cb2ce9
by penghaiyi at 2024-02-23T09:33:08+08:00
GLSL: Fix atomic_uint being incorrectly generated as uint
-
08391d91
by Hans-Kristian Arntzen at 2024-02-26T15:35:01+01:00
Merge pull request #2278 from billhollings/fix-opcopyobject-temp-var
OpCopyObject declare a temp var of base type, not pointer type.
-
052c57e2
by Jan Sikorski at 2024-02-26T15:51:32+01:00
MSL: Pass texture array index separately to atomic texture operations.
-
7e0c9ab9
by Hans-Kristian Arntzen at 2024-02-26T15:51:32+01:00
MSL: Nit from review.
-
855a5c36
by Hans-Kristian Arntzen at 2024-02-26T15:51:32+01:00
MSL: Also test image atomic for image2DArray.
-
346c7349
by Hans-Kristian Arntzen at 2024-02-26T16:31:07+01:00
Merge pull request #2283 from KhronosGroup/pr-2281
Land PR 2281
-
5f7a6de5
by Hans-Kristian Arntzen at 2024-02-26T16:31:26+01:00
Merge pull request #2282 from hypengw/main
GLSL: Fix atomic_uint being incorrectly generated as uint
-
c524e339
by Hans-Kristian Arntzen at 2024-03-05T14:30:46+01:00
MSL: Improve handling of BDA + atomics.
-
4db95b76
by Hans-Kristian Arntzen at 2024-03-05T15:03:56+01:00
Merge pull request #2288 from KhronosGroup/fix-2272
MSL: Improve handling of BDA + atomics.
-
572c4131
by Hans-Kristian Arntzen at 2024-03-06T13:14:54+01:00
Fix crash when traversing PtrAccessChain to OpTypeStruct.
-
c2eb27c1
by Hans-Kristian Arntzen at 2024-03-06T14:32:27+01:00
Merge pull request #2289 from KhronosGroup/fix-2279
Fix crash when traversing PtrAccessChain to OpTypeStruct.
-
261589a5
by Hans-Kristian Arntzen at 2024-03-06T14:33:02+01:00
MSL: Fix type hierarchy for extended vectors.
-
2a7c8184
by Hans-Kristian Arntzen at 2024-03-06T15:26:57+01:00
Merge pull request #2290 from KhronosGroup/fix-2287
MSL: Fix type hierarchy for extended vectors.
-
5e650046
by Bill Hollings at 2024-03-11T22:42:43-04:00
MSL: atomic_compare_exchange_weak() support CompilerMSL:msl_options.texture_1D_as_2D.
CompilerMSL:msl_options.texture_1D_as_2D emulates a Metal 1D texture
as a 2D texture in order to expand features available for 1D textures.
Support accessing such textures as 2D for atomic_compare_exchange_weak().
-
de0e72a0
by Bill Hollings at 2024-03-11T23:27:25-04:00
Merge pull request #2293 from billhollings/atomic_compare_exchange_weak-texture_1D_as_2D
MSL: atomic_compare_exchange_weak() support CompilerMSL:msl_options.texture_1D_as_2D.
-
8465ec81
by Jan Sikorski at 2024-03-15T17:19:49+01:00
Support cases of LUTs which are not function local.
Prevent cases where arrays that are globally defined constants are redeclared
on stack. On Intel macs, declaring a large, statically initialized
spvUnsafeArray on stack may cause an internal compiler error.
-
32619964
by Hans-Kristian Arntzen at 2024-03-18T10:50:37+01:00
Merge pull request #2296 from KhronosGroup/vulkan-sdk-1.3.280-moltenvk
MSL: Merge `vulkan-sdk-1.3.280-moltenvk` branch into `main` branch.
-
6ee80151
by Hans-Kristian Arntzen at 2024-03-18T11:04:53+01:00
Merge branch 'global-luts' of https://github.com/js6i/SPIRV-Cross into pr-2297
-
48bede6a
by Hans-Kristian Arntzen at 2024-03-18T11:25:38+01:00
Smaller cleanups on multi-function Private LUTs.
-
48aba6ab
by Hans-Kristian Arntzen at 2024-03-18T11:25:59+01:00
Add test for multi-function Private LUT.
-
1e3f31e6
by Hans-Kristian Arntzen at 2024-03-18T11:56:15+01:00
Merge pull request #2298 from KhronosGroup/pr-2297
Land PR 2297
-
b4c84bb1
by Hans-Kristian Arntzen at 2024-03-18T12:09:38+01:00
Block loop optimization if Phi is used.
Somehow this hasn't been caught until now. Impressive.
We'll have to emit side effects in condition block to make this work,
which breaks loop conditionals.
-
7d92d7d8
by Hans-Kristian Arntzen at 2024-03-18T12:31:21+01:00
Merge pull request #2299 from KhronosGroup/fix-2285
Block loop optimization if Phi is used.
-
cc542f81
by Evan Tang at 2024-04-01T17:11:31-05:00
Use recursive template for spvArrayCopy
Comment claims we can't, but I tested a number of older Metal compilers (Xcode 8 targeting macOS 10.11, macOS 10.13 online compiler, Xcode 14 targeting iOS 8) and none of them had any issues with it
-
f9393f44
by Hans-Kristian Arntzen at 2024-04-02T11:47:54+02:00
MSL: Get rid of obsolete "is pointer" methods.
Just use the common ones.
-
44a5f1fc
by Jan Sikorski at 2024-04-02T12:01:07+02:00
MSL: Add support for overlapping bindings.
This adds support for bindings which share the same DescriptorSet/Binding pair.
The motivating example is vkd3d, which uses overlapping arrays of resources to
emulate D3D12 descriptor tables. The generated MSL argument buffer only
includes the first resource (in this example 't0'):
struct spvDescriptorSetBuffer2
{
array<texture2d<float>, 499968> t0 [[id(0)]];
// Overlapping binding: array<texture3d<float>, 499968> t2 [[id(0)]];
};
When t2 is referenced, we cast the instantiated member:
float4 r1 = spvDescriptorSet2.t0[_79].sample(...);
float4 r2 = (*(constant array<texture3d<float>, 499968>*)&spvDescriptorSet2.t0)[_97].sample(...);
-
760a659f
by Jan Sikorski at 2024-04-02T12:01:07+02:00
MSL: Avoid emitting multiple declaration of the same variable.
-
064186e4
by Jan Sikorski at 2024-04-02T12:01:07+02:00
MSL: Check for device argument buffers for overlapping bindings.
-
221a517b
by Jan Sikorski at 2024-04-02T12:01:07+02:00
MSL: Pass variable id when emitting image entry point declarations.
-
ffb2c9bb
by Jan Sikorski at 2024-04-02T12:01:07+02:00
MSL: Added tests for overlapping bindings.
-
32e33e40
by Hans-Kristian Arntzen at 2024-04-02T12:42:12+02:00
Cleanup overlap tag from review.
-
218a8bfd
by Hans-Kristian Arntzen at 2024-04-03T13:15:51+02:00
MSL: Improve argument buffer descriptor aliasing implementation.
-
ee77265a
by Hans-Kristian Arntzen at 2024-04-03T13:28:12+02:00
MSL: Workaround compiler issue with image fence when used as reference.
-
8219ccf7
by Hans-Kristian Arntzen at 2024-04-03T13:45:18+02:00
MSL: Reassign bindings so they work with decoration binding in test.
-
061bf6b4
by Hans-Kristian Arntzen at 2024-04-03T13:49:41+02:00
Fix tabbing nits.
-
06407561
by Hans-Kristian Arntzen at 2024-04-03T15:16:49+02:00
Merge pull request #2306 from KhronosGroup/pr-2292
MSL: Implement support for EXT_mutable_descriptor_type and general aliasing with argument buffers
-
56f24d86
by Hans-Kristian Arntzen at 2024-04-15T11:47:10+02:00
Merge pull request #2304 from etang-cw/ArrayCleanup
Use recursive template for spvArrayCopy
-
eef4c2af
by Hans-Kristian Arntzen at 2024-04-15T13:37:00+02:00
MSL: Fix SUMulExtended for 64-bit inputs.
-
25b77721
by Hans-Kristian Arntzen at 2024-04-15T13:55:25+02:00
Merge pull request #2310 from KhronosGroup/fix-2300
MSL: Fix SUMulExtended for 64-bit inputs.
-
4f17bf76
by Hans-Kristian Arntzen at 2024-04-15T14:29:01+02:00
MSL: Handle Atomic{S,U}{Min,Max} with mismatched image sign.
Gross reinterpret_cast, but gotta do what you gotta do.
-
8edbda42
by Hans-Kristian Arntzen at 2024-04-15T14:47:18+02:00
Merge pull request #2311 from KhronosGroup/fix-2303
MSL: Handle Atomic{S,U}{Min,Max} with mismatched image sign.
-
dc6db523
by Hans-Kristian Arntzen at 2024-04-15T15:44:21+02:00
MSL: Inherit interpolation qualifiers through recursive composites.
-
cb956675
by Hans-Kristian Arntzen at 2024-04-15T16:40:47+02:00
Merge pull request #2312 from KhronosGroup/fix-2305
MSL: Inherit interpolation qualifiers through recursive composites.
-
298c2315
by Jan Sikorski at 2024-04-18T09:13:29+02:00
MSL: Remove pointer wrapper stored in spvDescriptorArray.
This works around what looks like a compiler bug which can cause GPU crashes.
-
84b4a54b
by Jan Sikorski at 2024-04-18T09:19:01+02:00
Updated tests.
-
71fe131e
by Hans-Kristian Arntzen at 2024-04-29T10:17:43+02:00
Merge pull request #2314 from js6i/gpu-crash
Remove spvDescriptor wrapper in spvDescriptorArray
-
cbaa8698
by Hans-Kristian Arntzen at 2024-04-29T11:49:28+02:00
MSL: Handle missing FP16 trancendental overloads.
-
2ccc81fd
by Hans-Kristian Arntzen at 2024-04-29T12:02:51+02:00
Merge pull request #2317 from KhronosGroup/fix-2309
MSL: Handle missing FP16 trancendental overloads.
-
84cdc3b6
by Bill Hollings at 2024-05-06T09:57:31+02:00
MSL: Fix argument buffer padding.
- After padding a resource, retrieve either the next padded slot,
or the next resource, in order to correctly offset the slot index.
-
476f384e
by Hans-Kristian Arntzen at 2024-05-09T12:26:58+02:00
Fix unused variable warning on GCC 14.
-
04ddb9a8
by Hans-Kristian Arntzen at 2024-05-10T14:52:24+02:00
Mark function call results as control dependent as necessary.
Inner function calls can contain flow-control sensitive code.
In this case, the function call itself must inherit the
control-dependence.
Rarely happens in practice since optimized code with SSA tends to
inline.
-
1ddd8b62
by Hans-Kristian Arntzen at 2024-05-10T15:21:42+02:00
Merge pull request #2321 from KhronosGroup/control-dependent-function
Mark function call results as control dependent as necessary.
-
ab1f9f4d
by Bill Hollings at 2024-05-20T12:10:35-04:00
MSL: Support ConstOffsets on image gather.
- Add TextureFunctionArguments::has_array_offsets.
- Add support functions spvGatherConstOffsets() &
spvGatherCompareConstOffsets().
- Add SPVFuncImpl::SPVFuncImplGatherConstOffsets &
SPVFuncImplGatherCompareConstOffsets.
- Add unit tests.
-
641b92fa
by Hans-Kristian Arntzen at 2024-05-21T11:10:55+02:00
MSL: Clean up some nits for review.
-
e2204e3f
by Hans-Kristian Arntzen at 2024-05-21T11:23:42+02:00
Merge pull request #2326 from KhronosGroup/pr-2325
Land PR 2325.
-
cd8865de
by Aitor Camacho at 2024-05-21T11:24:56+02:00
Add option to enforce fragment execution with side effects in MSL
Metal will incorrectly discard fragments with side effects under
certain circumstances prematurely. The conditions are the following:
- Fragment will always be discarded after side effect operation
- Pre fragment depth fails
- Modifies depth value for a constant value in the fragment shader.
This constant value will also fail the depth test.
However, Metal will also discard the fragment even if it has
operations with side effects inside the fragment shader before the
discard operation.
Vulkan states the graphics pipeline to execute in the following
order:
- Pre fragment depth test (cannot discard here due to modifying
depth value in fragment shader)
- Fragment shader (where the depth is modified and fragment
discarded)
- Post fragment depth test
Therefore, we need to enforce fragment shader execution and not
let Metal discard the fragment before that for such cases. This
change adds an option to provide such utility.
-
485b4c6e
by Hans-Kristian Arntzen at 2024-05-21T11:26:18+02:00
Update C API minor version.
-
1f68d0f4
by Hans-Kristian Arntzen at 2024-05-21T11:36:55+02:00
Merge pull request #2327 from KhronosGroup/pr-2324
Land PR 2324
-
e406fb21
by Hans-Kristian Arntzen at 2024-05-21T14:04:20+02:00
Fixup invalid shader that should not pass.
-
e680b724
by Hans-Kristian Arntzen at 2024-05-21T14:05:33+02:00
MSL: Don't bother supporting invalid multi-dimensional dynamic buffers.
This was never legal in any API and I'm not sure why I ever bothered.
-
d8eece47
by Hans-Kristian Arntzen at 2024-05-21T15:41:41+02:00
Merge pull request #2328 from KhronosGroup/dynamic-buffer-cleanup
Dynamic buffer cleanup
-
854759fd
by Hans-Kristian Arntzen at 2024-05-21T15:41:56+02:00
MSL: Do not overwrite rez_bind when padding.
-
ffdcefe2
by Hans-Kristian Arntzen at 2024-05-21T15:41:56+02:00
MSL: Only consider padding for non-aliased resources.
-
b236352f
by Hans-Kristian Arntzen at 2024-05-21T15:41:56+02:00
MSL: Always use layout-declared array size for argument buffers.
-
8b3aa219
by Hans-Kristian Arntzen at 2024-05-21T15:43:04+02:00
Pass down orig_id to type_to_array_glsl as well.
Allows UBO/SSBO resources in MSL to get the layout-derived size as well.
-
5934c8fc
by Hans-Kristian Arntzen at 2024-05-21T17:56:32+02:00
Merge pull request #2329 from KhronosGroup/fix-2318
MSL: Improve handling of padded descriptors with argument buffers
-
d1285ec0
by Hans-Kristian Arntzen at 2024-05-21T17:56:42+02:00
GLSL: Use SPIR-V intrinsics for N{Min,Max,Clamp}.
When targeting Vulkan semantics, we should emit code that is actually
readable.
Also, make sure to use plain F{Min,Max,Clamp} on HLSL. HLSL has
NaN-aware semantics by default.
-
ce22ebb8
by Hans-Kristian Arntzen at 2024-05-21T18:51:12+02:00
Merge pull request #2330 from KhronosGroup/spirv-intrinsics
GLSL: Use SPIR-V intrinsics for N{Min,Max,Clamp}.
-
a43fabbe
by Aitor Camacho at 2024-05-24T12:13:17+02:00
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.
-
d47a1407
by Hans-Kristian Arntzen at 2024-05-24T17:11:06+02:00
Merge pull request #2331 from aitor-lunarg/force-depth-passthrough
MSL: Add option to force depth write in fragment shaders
-
2d990d35
by Hans-Kristian Arntzen at 2024-06-03T16:47:44+02:00
MSL: Add median3 to list of banned func names.
-
495e5b09
by Bill Hollings at 2024-06-11T16:52:07-04:00
MSL: Fixes for constexpr sampler use with argument buffers.
Constexpr samplers are defined as local variables,
but were treated as held within an argument buffer.
- CompilerMSL::to_sampler_expression() support constexpr samplers
when using argument buffers, plus refactor to minimize generating
_expression_ text that may not be used.
- Handle padding around multi-plane images that require multiple textures.
Only check for padding on the first plane, but include plane count in
total argument buffer slots consumed.
-
488559ff
by Bill Hollings at 2024-06-14T13:35:11-04:00
MSL: Support descriptor sets with recursive content when using argument buffers.
When using argument buffers, handle descriptor set entry points with
recursive content, similar to discrete entry points with recursive content.
- For descriptor sets entry points with recursive content, add
descriptor set to recursive_inputs, and create a local var for it.
- For recursive entry points that are contained in a descriptor set
argument buffer, don't add entry point to recursive_inputs, or create
a local var for that content entry point.
- Add test shader.
-
e818cfd0
by Hans-Kristian Arntzen at 2024-06-17T12:34:00+02:00
Merge pull request #2339 from billhollings/constexp-samp-arg-buff
MSL: Fixes for constexpr sampler use with argument buffers.
-
d7ad3d72
by Hans-Kristian Arntzen at 2024-06-17T12:44:22+02:00
Apply suggestions from code review
Fix nits
-
ab608ac8
by Hans-Kristian Arntzen at 2024-06-17T12:45:23+02:00
Merge pull request #2343 from billhollings/recurs-desc-set-arg-buff
MSL: Support descriptor sets with recursive content when using argument buffers.
-
11be429e
by Hans-Kristian Arntzen at 2024-06-17T13:19:53+02:00
MSL/C: Add _2 variant for the resource binding API.
Adds missing count variable for bindless.
-
98d9e42e
by Hans-Kristian Arntzen at 2024-06-17T13:59:15+02:00
Merge pull request #2345 from KhronosGroup/fix-2337
MSL/C: Add _2 variant for the resource binding API.
-
b5ccb0cf
by Bill Hollings at 2024-06-18T10:55:43-04:00
MSL: Image gather ConstOffsets supports multiple address spaces.
Required when using descriptor set argument buffers.
- Output overloaded functions for each address space.
- Update test shaders.
-
5d127b91
by Hans-Kristian Arntzen at 2024-06-18T17:12:18+02:00
Merge pull request #2344 from billhollings/gather-constoffsts-arg-buffs
MSL: Image gather ConstOffsets supports multiple address spaces.