Commit Graph

3730 Commits

Author SHA1 Message Date
DmitryTsyganov
fd3ce6e865 Add CompilerError constructor that accepts const char* as a parameter
Fixes #2273
2024-02-01 18:08:01 +01:00
Hans-Kristian Arntzen
03b485dc47
Merge pull request #2271 from KhronosGroup/fix-2264
MSL: Handle volatile properly for emulated image atomics.
2024-01-23 14:43:04 +01:00
Hans-Kristian Arntzen
bad97c85e1
Merge pull request #2269 from jaxfrank/main
Fixed conflict with windows min() and max() macros in spirv_common.hpp
2024-01-23 14:42:56 +01:00
Hans-Kristian Arntzen
9d87a014f0 MSL: Handle volatile properly for emulated image atomics. 2024-01-23 13:09:41 +01:00
Hans-Kristian Arntzen
01c8a2a002
Merge pull request #2270 from KhronosGroup/fix-2262
Use more descriptive versioning in gitversion.h.
2024-01-23 13:07:37 +01:00
Hans-Kristian Arntzen
c3d0bd4cdb Use more descriptive versioning in gitversion.h. 2024-01-23 12:01:32 +01:00
Frank McCoy
e07956776d
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.
2024-01-22 00:49:18 -08:00
Hans-Kristian Arntzen
b82536766d
Merge pull request #2268 from KhronosGroup/fix-2260
GLSL: Improve BDA handling in esoteric situations
2024-01-18 14:28:51 +01:00
Hans-Kristian Arntzen
376a308dc7 GLSL: Handle ptr-to-array casts with unexpected array strides. 2024-01-18 14:14:10 +01:00
Hans-Kristian Arntzen
071969811b GLSL: Add basic test for chained access chains. 2024-01-18 13:35:43 +01:00
Hans-Kristian Arntzen
32ac768c15 GLSL: Handle synthesized pointer-to-pointer. 2024-01-18 13:11:04 +01:00
Hans-Kristian Arntzen
3da5bc7a57 GLSL: Forward declare non-block BDA types as well.
With non-block structs, we can have pointers in those types too.
2024-01-18 12:56:31 +01:00
Hans-Kristian Arntzen
871ac0e5b7 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.
2024-01-18 12:40:47 +01:00
Hans-Kristian Arntzen
c0f48374c7 Add reserve to object pool. 2024-01-18 11:54:24 +01:00
Hans-Kristian Arntzen
64f64c837a
Merge pull request #2266 from KhronosGroup/pr-2257
Land MSL integer dot products
2024-01-16 16:24:33 +01:00
Hans-Kristian Arntzen
e9851cc6aa MSL: Fix misc sign issues with dot product impl and add more coverage. 2024-01-16 16:17:43 +01:00
Hans-Kristian Arntzen
b9abac5024 Fix nits from review. 2024-01-16 14:46:16 +01:00
sean
6c24be197f MSL: Add support for SPV_EXT_integer_dot_product 2024-01-16 14:42:56 +01:00
Hans-Kristian Arntzen
0a5e7b0f6a
Merge pull request #2265 from KhronosGroup/fix-2263
Bump to CMake 3.6 and handle deprecated Python module check.
2024-01-16 14:35:24 +01:00
Hans-Kristian Arntzen
41197bbd30 Bump to CMake 3.6 and handle deprecated Python module check. 2024-01-16 14:30:14 +01:00
Hans-Kristian Arntzen
37a58e4c95
Merge pull request #2246 from CodeLinaro/SPV_QCOM_image_processing
Add support for the SPV_QCOM_image_processing extension
2024-01-09 16:40:01 +01:00
Wooyoung Kim
1efe04cfce Add supprot for the SPV_QCOM_image_processing extension 2024-01-08 09:58:27 -08:00
Wooyoung Kim
8028f75685
Merge branch 'KhronosGroup:main' into SPV_QCOM_image_processing 2024-01-08 09:36:01 -08:00
Hans-Kristian Arntzen
7eb09ee443
Merge pull request #2259 from KhronosGroup/fix-2249
Add i64/u64 spec constant to C API.
2024-01-08 14:47:47 +01:00
Hans-Kristian Arntzen
6b1b7c6da4 Add i64/u64 spec constant to C API. 2024-01-08 14:37:26 +01:00
Hans-Kristian Arntzen
a303839539
Merge pull request #2256 from KhronosGroup/fix-2250
MSL: Support variable sized descriptor arrays in argument buffers directly.
2024-01-08 14:29:19 +01:00
Hans-Kristian Arntzen
57e28e3f58 MSL: Implement spvDescriptorArray path for SSBO/UBO. 2024-01-08 14:15:23 +01:00
Hans-Kristian Arntzen
a8b1e07fde MSL: Add test for texture/sampler variable count. 2024-01-08 13:04:43 +01:00
Hans-Kristian Arntzen
e10bf53324 MSL: Support variable sized descriptor array in argument buffer. 2024-01-08 12:37:01 +01:00
Wooyoung Kim
a7b6f3a34a Add supprot for the SPV_QCOM_image_processing extension 2024-01-05 22:38:08 -08:00
Hans-Kristian Arntzen
ec87a03655 MSL: Plumb through member state to image/sampler types. 2024-01-05 16:08:29 +01:00
Hans-Kristian Arntzen
cffc08a542 Add missing reference file. 2024-01-05 14:54:21 +01:00
Hans-Kristian Arntzen
117161dd54
Merge pull request #2255 from KhronosGroup/pr-2247
HLSL: Fix issue with vec4 straddle rules in substructs.
2024-01-05 14:24:21 +01:00
Hans-Kristian Arntzen
bedc49b859 HLSL: Fix issue with vec4 straddle rules in substructs. 2024-01-05 14:07:05 +01:00
Hans-Kristian Arntzen
eabcc5e5b2
Merge pull request #2254 from KhronosGroup/roll-deps
Roll deps
2024-01-05 14:02:09 +01:00
Hans-Kristian Arntzen
ec42cb1c41 Roll deps. 2024-01-05 13:36:34 +01:00
Hans-Kristian Arntzen
d9f4280f45
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.
2024-01-05 12:05:37 +01:00
Bill Hollings
b093d271c5
Merge pull request #2248 from billhollings/msl-fix-discrete-runtime-arrays-of-buffers
MSL: Ensure discrete runtime arrays of buffers have known length.
2024-01-03 15:34:29 -05:00
Bill Hollings
d47183c0db 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).
2023-12-22 09:12:44 -05:00
Hans-Kristian Arntzen
f349c91274
Merge pull request #2240 from KhronosGroup/fix-2239
MSL: Remove special case for threadgroup array wrapper.
2023-12-07 14:50:19 +01:00
Hans-Kristian Arntzen
2603fbe520 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.
2023-12-07 14:41:42 +01:00
Hans-Kristian Arntzen
13aab7f07e
Merge pull request #2243 from KhronosGroup/pr-2238
Land PR 2238
2023-12-07 14:37:24 +01:00
Hans-Kristian Arntzen
833c5936b0 Various nit fixes and improvements from review. 2023-12-07 14:31:36 +01:00
Hans-Kristian Arntzen
e3d1b9afbb Merge branch 'spirtype-refactor' of https://github.com/Hugobros3/SPIRV-Cross into pr-2238 2023-12-07 12:05:48 +01:00
Hans-Kristian Arntzen
e6b013a492
Merge pull request #2214 from KhronosGroup/fix-2206
MSL: Use powr instead of pow.
2023-12-07 11:39:26 +01:00
Hugo Devillers
5065781b15 fix more spirtype::op instances 2023-12-06 18:04:59 +01:00
Hugo Devillers
d019358ce0 fix unintialised struct in SPIRType 2023-12-06 17:54:34 +01:00
Hans-Kristian Arntzen
9da5f7ce45
Merge pull request #2242 from KhronosGroup/fix-2221
MSL: Improve PtrAccessChain handling.
2023-12-06 17:17:21 +01:00
Hans-Kristian Arntzen
ffab994ab0 MSL: Wrap dereferenced ptr-chain expressions. 2023-12-06 17:09:25 +01:00
Hans-Kristian Arntzen
4e3f66b5d5 MSL: Add test for vector-to-scalar variable pointer. 2023-12-06 17:09:25 +01:00