glslang-zig/glslang/MachineIndependent
Pankaj Mistry 228c67228a GL_EXT_mesh_shader/SPV_EXT_mesh_shader implementation
Added following updates to GL_EXT_mesh_shader implementation:

1. Added SPIRV and GLSL test cases
2. Added checks to ensure NV and EXT mesh shader builtins cannot be used interchangeably.
3. Updated the language name by removing the postfix "NV" to MeshShader and TaskShader.
4. Added checks for grammar checking to comply with the spec.

5. Added gl_NumWorkGroups builtin to Mesh shader
6. Fixed data type of gl_PrimitiveLineIndicesEXT and gl_PrimitiveTriangleIndicesEXT
7. Added new constants to the resources table
8. Updates to handle new storage qualifier "taskPayloadSharedEXT"
9. Updated test cases by replacing "taskEXT" with storage qualifier "taskPayloadSharedEXT"

Addressed  Review comments
1. Fixed instruction description used by glslang disassembly.
2. Updated OpEmitMeshTasksEXT as per spec update
3. Fixed implementation that errors out if there are more then one taskPayloadSharedEXT varjables.
4. Fixed miscellaneous error logs and removed unwanted code.

SPIRV 1.6 related build failure fixes
- Update SPIRV header to 1.6
- Fix conflict wiht SPIRV 1.6 change, where localSizeId is used for execution mode for mesh/task shaders

Enable SPIRV generated for EXT_mesh_shader to be version 1.4

GL_EXT_mesh_shader: Add checks for atomic support and corresponding test cases
2022-09-01 18:02:21 -07:00
..
preprocessor Remove unused variable Num_string_literal_EXTs 2021-06-17 11:10:10 -07:00
attribute.cpp Fix GCC warnings 2021-08-31 16:40:35 -06:00
attribute.h Implement GL_EXT_subgroup_uniform_control_flow. 2021-06-07 10:21:05 -04:00
Constant.cpp Use intermOut.cpp's IsNan and IsInfinity for parse-time constant folding (updated) 2021-11-11 16:49:40 +01:00
gl_types.h 1. fix macro definition value for unsinged-int64-vector, according to kronos spec at https://www.khronos.org/registry/OpenGL/extensions/ARB/ARB_gpu_shader_int64.txt; 2. fix typo in reflection 2021-03-15 16:54:31 +08:00
glslang.m4 GL_EXT_mesh_shader/SPV_EXT_mesh_shader implementation 2022-09-01 18:02:21 -07:00
glslang.y GL_EXT_mesh_shader/SPV_EXT_mesh_shader implementation 2022-09-01 18:02:21 -07:00
glslang_tab.cpp GL_EXT_mesh_shader/SPV_EXT_mesh_shader implementation 2022-09-01 18:02:21 -07:00
glslang_tab.cpp.h GL_EXT_mesh_shader/SPV_EXT_mesh_shader implementation 2022-09-01 18:02:21 -07:00
InfoSink.cpp Non-functional: White space after "//", mostly for copyrights. 2017-01-06 12:34:14 -07:00
Initialize.cpp GL_EXT_mesh_shader/SPV_EXT_mesh_shader implementation 2022-09-01 18:02:21 -07:00
Initialize.h Comment out params instead of removing 2019-09-11 08:59:47 -04:00
Intermediate.cpp Don't do updatePrecision on float16_t operations 2022-02-24 15:03:13 -07:00
intermOut.cpp GL_EXT_mesh_shader/SPV_EXT_mesh_shader implementation 2022-09-01 18:02:21 -07:00
IntermTraverse.cpp 8. io mapping refine & qualifier member check & resolver expand (#2396) 2020-11-03 13:34:19 -07:00
iomapper.cpp avoid leaving decorations on auto-push-constants 2022-02-09 18:44:22 -05:00
iomapper.h avoid leaving decorations on auto-push-constants 2022-02-09 18:44:22 -05:00
limits.cpp Fix issue for new unique id system. Add level bits to help verifying symbols and split symbol tables. 2021-02-15 20:35:20 +08:00
linkValidate.cpp GL_EXT_mesh_shader/SPV_EXT_mesh_shader implementation 2022-09-01 18:02:21 -07:00
LiveTraverser.h also search global variables assignment for live variables 2020-07-20 18:43:00 -04:00
localintermediate.h GL_EXT_mesh_shader/SPV_EXT_mesh_shader implementation 2022-09-01 18:02:21 -07:00
parseConst.cpp Fix mat4x2(scalar) constructor. 2021-05-18 12:13:41 -04:00
ParseContextBase.cpp Enhance readability of error messages for GLSL 2022-02-01 12:10:08 -07:00
ParseHelper.cpp GL_EXT_mesh_shader/SPV_EXT_mesh_shader implementation 2022-09-01 18:02:21 -07:00
ParseHelper.h Make modifications of GL_EXT_spirv_intrinsics 2021-10-15 20:22:36 +08:00
parseVersions.h Fix #2366, fix #2358, correctly separate out numerical feature checking 2020-08-14 08:40:06 -06:00
pch.h Use precompiled headers for some glslang projects 2018-10-31 15:38:08 -05:00
PoolAlloc.cpp Revert changes that migrate to thread_local. 2020-07-31 07:13:24 +01:00
propagateNoContraction.cpp Make file formatting comply with POSIX and Unix standards 2020-03-21 03:20:25 -04:00
propagateNoContraction.h [lumped builds] Add include guards (#pragma once) to header files that did not have any. 2017-05-10 16:58:38 +03:00
reflection.cpp 1. fix macro definition value for unsinged-int64-vector, according to kronos spec at https://www.khronos.org/registry/OpenGL/extensions/ARB/ARB_gpu_shader_int64.txt; 2. fix typo in reflection 2021-03-15 16:54:31 +08:00
reflection.h Use GLSLANG_ANGLE to strip features to what ANGLE requires 2020-07-31 12:44:49 -04:00
RemoveTree.cpp Non-functional: White space after "//", mostly for copyrights. 2017-01-06 12:34:14 -07:00
RemoveTree.h [lumped builds] Add include guards (#pragma once) to header files that did not have any. 2017-05-10 16:58:38 +03:00
Scan.cpp GL_EXT_mesh_shader/SPV_EXT_mesh_shader implementation 2022-09-01 18:02:21 -07:00
Scan.h SPV: Fix #1575, fix #1593: Support HLSL #line 2018-12-07 17:36:33 -07:00
ScanContext.h GL_EXT_buffer_reference 2019-01-07 12:36:13 -06:00
ShaderLang.cpp GL_EXT_mesh_shader/SPV_EXT_mesh_shader implementation 2022-09-01 18:02:21 -07:00
SpirvIntrinsics.cpp Make modifications of GL_EXT_spirv_intrinsics 2021-10-15 20:22:36 +08:00
SymbolTable.cpp Avoid double-free in functions cloned for vulkan relaxed mode (#2987) 2022-08-02 18:07:01 -06:00
SymbolTable.h Avoid double-free in functions cloned for vulkan relaxed mode (#2987) 2022-08-02 18:07:01 -06:00
Versions.cpp GL_EXT_mesh_shader/SPV_EXT_mesh_shader implementation 2022-09-01 18:02:21 -07:00
Versions.h GL_EXT_mesh_shader/SPV_EXT_mesh_shader implementation 2022-09-01 18:02:21 -07:00