Implement the extension GL_EXT_spirv_intrinsics
authorRex Xu <rex.xu@amd.com>
Sun, 25 Apr 2021 08:52:35 +0000 (16:52 +0800)
committerRex Xu <rex.xu@amd.com>
Wed, 9 Jun 2021 06:18:06 +0000 (14:18 +0800)
commit65a7fb70547a65410e7372e62f4b22ff389d8f6d
treecac5e83f7184168d7330bb083fac8092972e5741
parent3d935ea2243b4fffd9694191834d8573270dc869
Implement the extension GL_EXT_spirv_intrinsics

- Add support of SPIR-V execution mode qualifiers.
- Add support of SPIR-V storage class qualifier.
- Add support of SPIR-V decorate qualifiers.
- Add support of SPIR-V type specifier.
- Add support of SPIR-V intruction qualifiers.
- Add support of spirv_by_reference/spirv_literal parameter qualifier.
- Add shader stage macros introduced by this extension.
40 files changed:
BUILD.gn
SPIRV/GlslangToSpv.cpp
Test/baseResults/cppBad.vert.out
Test/baseResults/cppSimple.vert.out
Test/baseResults/spv.intrinsicsSpirvByReference.vert.out [new file with mode: 0644]
Test/baseResults/spv.intrinsicsSpirvDecorate.frag.out [new file with mode: 0644]
Test/baseResults/spv.intrinsicsSpirvExecutionMode.frag.out [new file with mode: 0644]
Test/baseResults/spv.intrinsicsSpirvInstruction.vert.out [new file with mode: 0644]
Test/baseResults/spv.intrinsicsSpirvLiteral.vert.out [new file with mode: 0644]
Test/baseResults/spv.intrinsicsSpirvStorageClass.rchit.out [new file with mode: 0644]
Test/baseResults/spv.intrinsicsSpirvType.rgen.out [new file with mode: 0644]
Test/spv.intrinsicsSpirvByReference.vert [new file with mode: 0644]
Test/spv.intrinsicsSpirvDecorate.frag [new file with mode: 0644]
Test/spv.intrinsicsSpirvExecutionMode.frag [new file with mode: 0644]
Test/spv.intrinsicsSpirvInstruction.vert [new file with mode: 0644]
Test/spv.intrinsicsSpirvLiteral.vert [new file with mode: 0644]
Test/spv.intrinsicsSpirvStorageClass.rchit [new file with mode: 0644]
Test/spv.intrinsicsSpirvType.rgen [new file with mode: 0644]
glslang/CMakeLists.txt
glslang/Include/BaseTypes.h
glslang/Include/Common.h
glslang/Include/SpirvIntrinsics.h [new file with mode: 0644]
glslang/Include/Types.h
glslang/Include/intermediate.h
glslang/MachineIndependent/ParseHelper.cpp
glslang/MachineIndependent/ParseHelper.h
glslang/MachineIndependent/Scan.cpp
glslang/MachineIndependent/SpirvIntrinsics.cpp [new file with mode: 0644]
glslang/MachineIndependent/SymbolTable.cpp
glslang/MachineIndependent/SymbolTable.h
glslang/MachineIndependent/Versions.cpp
glslang/MachineIndependent/Versions.h
glslang/MachineIndependent/glslang.m4
glslang/MachineIndependent/glslang.y
glslang/MachineIndependent/glslang_tab.cpp
glslang/MachineIndependent/glslang_tab.cpp.h
glslang/MachineIndependent/intermOut.cpp
glslang/MachineIndependent/localintermediate.h
glslang/MachineIndependent/preprocessor/PpScanner.cpp
gtests/Spv.FromFile.cpp