alan-baker
d35a78db57
Switch SPIRV-Tools to use spirv.hpp11 internally ( #4981 )
...
Fixes #4960
* Switches to using enum classes with an underlying type to avoid
undefined behaviour
2022-11-04 17:27:10 -04:00
Shahbaz Youssefi
3ec6b3698e
spirv-val: Consistently quote ids in messages ( #4950 )
...
Half the messages used to output 'id[%name]' and half id[%name]. With
this change, all messages consistently output 'id[%name]'. Some typos
are also fixed in the process.
2022-09-29 10:03:49 +02:00
Spencer Fricke
b53d7a8aff
spirv-val: Add initial SPV_EXT_mesh_shader validation ( #4924 )
...
* Move TaskEXT check to OpEmitMeshTasksEXT
* Add MeshNV for Execution Model alias
2022-09-23 11:06:46 -04:00
Pankaj Mistry
4c456f7da6
Implement tool changes for SPV_EXT_mesh_shader. ( #4915 )
...
- Added validation rule to support EXT_mesh_shader from SPIRV 1.4 onwards
2022-09-01 20:36:15 -04:00
Junda Liu
044ff1aabf
spirv-val: Add support for SPV_AMD_shader_early_and_late_fragment_tests ( #4812 )
...
- Update SPIR-V headers.
- Add validator support.
- Add validator tests.
2022-06-08 08:36:32 -04:00
sfricke-samsung
c194bb2a7f
spirv-val Update LocalSizeId VUID ( #4602 )
2021-10-29 11:58:02 -04:00
gnl21
ee30773650
Add a feature for allowing LocalSizeId ( #4492 )
...
Allow LocalSizeId as a way of sizing compute workgroups where the
environment allows it. A command-line switch is also added to force
acceptance even where the environment would not otherwise allow it.
2021-08-26 14:33:19 -04:00
sfricke-samsung
89ad2272ba
spirv-val: Label VUID 04683 ( #4121 )
2021-01-25 09:38:19 -05:00
sfricke-samsung
ee39b5db5f
spirv-val: Add Vulkan Addressing Model check ( #4107 )
2021-01-15 09:35:17 -05:00
Ryan Harrison
9150cd441f
Remove WebGPU support ( #4108 )
...
Leaves SPV_ENV_WEBGPU_0 enum in place, but marked deprecated, so users
of the library are not broken by an API enum being removed.
Fixes #4101
2021-01-14 16:45:18 -05:00
sfricke-samsung
ad77ed7a8d
spirv-val: Label standalone Vulkan VUID ( #4091 )
2021-01-07 09:00:05 -05:00
sfricke-samsung
17ffa89097
spirv-val: Add first StandAlone VUID 04633 ( #4077 )
2020-12-17 13:51:17 -05:00
David Neto
d5766f2801
Permit Simple and GLSL450 memory model in WEBGPU_0 ( #3463 )
...
Now that WebGPU ingests WGSL instead of SPIR-V,
there is no need to be so strict about the memory model.
Allow any memory model that is already allowed by Vulkan 1.0,
either directly or via an existing.
2020-07-17 12:23:11 -04:00
alan-baker
10951a7c9a
Refactor the InstructionPass ( #2924 )
...
* move checks to more appropriate locations
* remove some duplicated checks
* New function to check valid storage classes
* updated tests
2019-09-27 00:06:36 -04:00
Jeff Bolz
2c0111e6eb
Add validation for SPV_EXT_fragment_shader_interlock ( #2650 )
2019-06-03 10:55:07 -04:00
Ryan Harrison
c8b09744c6
Add validation specific to OpExecutionModeId ( #2536 )
...
Fixes #1565
2019-05-01 13:29:39 -04:00
Ryan Harrison
a5da68d446
Remove stale comment ( #2542 )
...
Fixes #1121
2019-05-01 10:56:39 -04:00
Ryan Harrison
b75f4362f0
Add validation for ExecutionMode in WebGPU ( #2443 )
...
Fixes #2437
2019-03-12 14:50:25 -04:00
Ryan Harrison
b1ff15f220
Add missing DepthGreater case to Fragment only check ( #2440 )
...
Fixes #2439
2019-03-12 11:27:40 -04:00
David Neto
bdecee8c86
Validator: TaskNV can use LocalSize or LocalSizeId ( #1970 )
...
Correponds to the update to Rev2 of SPV_NV_mesh_shader
Fixes #1968
2018-10-12 08:54:52 -04:00
Alan Baker
a77bb2e54b
Add validation for execution modes
...
* Check rules from Execution Mode tables, 2.16.2 and the Vulkan
environment spec
* Allows MeshNV execution model with the following execution modes
* LocalSize, LocalSizeId, OutputPoints and OutputVertices
* Done to not break their validation
2018-10-02 10:22:23 -04:00
Alan Baker
714bf84e58
Split mode setting opcode validation into new file.
...
* Moved mode setting opcode validation out of idUsage and into a new
pass
* minor style updates
2018-08-08 15:45:53 -04:00