KhronosGroup / MoltenVK

MoltenVK is a Vulkan Portability implementation. It layers a subset of the high-performance, industry-standard Vulkan graphics and compute API over Apple's Metal graphics framework, enabling Vulkan applications to run on macOS, iOS and tvOS.
Apache License 2.0
4.63k stars 402 forks source link

Fix shader argument buffer padding and atomics. #2231

Closed billhollings closed 1 month ago

billhollings commented 2 months ago

Fixes issues #2216 and #2180.

cdavis5e commented 2 months ago

For the record, the SPIRV-Cross change looks good, too.

billhollings commented 1 month ago

Dunno why you asked for my review here, and not on the SPIRV-Cross change, since all this does is pull in an updated version of SPIRV-Cross... but, whatever.

Normally I would.

With the SDK release coming up, it was a bit of a rush to get everything sorted out. So to expedite, I thought I'd get the SPRIV-Cross MoltenVK branch set up, and populated here, so they could be reviewed together. If it didn't work out, I could then just delete the SPIRV-Cross branch.

All part of my master plan! 😂

billhollings commented 1 month ago

I've updated this to include the fix for the atomic issue in #2216, and to use the new commit hash from the main branch in SPIRV-Cross.