Updates for final Vulkan ray tracing extensions (#2466)
* Fix traceRay/executeCallable to have id instead of constant. Update to final (non-provisional) SPIR-V capabilities (includes review feedback) - Change visibilty of findLinkerObjects. See merge request GLSL/glslang!78 * Add support for OpConvertUToAccelerationStructureKHR. GLSL : https://gitlab.khronos.org/GLSL/GLSL/-/merge_requests/60 SPV : https://gitlab.khronos.org/spirv/spirv-extensions/-/merge_requests/182 See merge request GLSL/glslang!77 * Add volatile qualifier to certain builtins for ray tracing. See merge request GLSL/glslang!81 * make gl_RayTmaxEXT volatile in intersection shader Vulkan Issue #2268 * Add testing for layouts on SBT vulkan/vulkan#2230 - no layout specified should be same as std430 - explicitly test std140, std430, scalar layouts See merge request GLSL/glslang!86 * Support for new opcodes OpIgnoreIntersectionKHR and OpTerminateRayKHR vulkan/vulkan#2374 Add support for ignoreIntersectionEXT and terminateRayEXT as block terminator statements. See merge request GLSL/glslang!87 * Fix code-generation issues with global ray query variables See merge request GLSL/glslang!88 * update dependencies for spirv-headers and tools And update mesh shader results * Fix indeterminate argument ordering Authored-by: David Neto <dneto@google.com> Co-authored-by: Ashwin Lele (NVIDIA Corporation) <alele@nvidia.com> Co-authored-by: Neslisah <Neslisah.Torosdagli@amd.com>
This commit is contained in:
parent
7f6559d280
commit
ffccefddfd
76 changed files with 4951 additions and 3663 deletions
|
|
@ -109,8 +109,8 @@ ERROR: node is still EOpNull!
|
|||
0:4 Function Parameters:
|
||||
0:4 'f4' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:7 'gl_SubgroupSize' ( in uint SubgroupSize)
|
||||
0:8 'gl_SubgroupInvocationID' ( in uint SubgroupInvocationID)
|
||||
0:7 'gl_SubgroupSize' ( volatile in uint SubgroupSize)
|
||||
0:8 'gl_SubgroupInvocationID' ( volatile in uint SubgroupInvocationID)
|
||||
0:9 subgroupBarrier ( global void)
|
||||
0:10 subgroupMemoryBarrier ( global void)
|
||||
0:11 subgroupMemoryBarrierBuffer ( global void)
|
||||
|
|
@ -128,11 +128,11 @@ ERROR: node is still EOpNull!
|
|||
0:19 false (const bool)
|
||||
0:20 subgroupAllEqual ( global bool)
|
||||
0:20 'f4' ( in 4-component vector of float)
|
||||
0:22 'gl_SubgroupEqMask' ( in 4-component vector of uint SubgroupEqMask)
|
||||
0:23 'gl_SubgroupGeMask' ( in 4-component vector of uint SubgroupGeMask)
|
||||
0:24 'gl_SubgroupGtMask' ( in 4-component vector of uint SubgroupGtMask)
|
||||
0:25 'gl_SubgroupLeMask' ( in 4-component vector of uint SubgroupLeMask)
|
||||
0:26 'gl_SubgroupLtMask' ( in 4-component vector of uint SubgroupLtMask)
|
||||
0:22 'gl_SubgroupEqMask' ( volatile in 4-component vector of uint SubgroupEqMask)
|
||||
0:23 'gl_SubgroupGeMask' ( volatile in 4-component vector of uint SubgroupGeMask)
|
||||
0:24 'gl_SubgroupGtMask' ( volatile in 4-component vector of uint SubgroupGtMask)
|
||||
0:25 'gl_SubgroupLeMask' ( volatile in 4-component vector of uint SubgroupLeMask)
|
||||
0:26 'gl_SubgroupLtMask' ( volatile in 4-component vector of uint SubgroupLtMask)
|
||||
0:27 subgroupBroadcast ( global 4-component vector of float)
|
||||
0:27 'f4' ( in 4-component vector of float)
|
||||
0:27 Constant:
|
||||
|
|
@ -425,8 +425,8 @@ ERROR: node is still EOpNull!
|
|||
0:129 Function Definition: basic_works( ( global void)
|
||||
0:129 Function Parameters:
|
||||
0:131 Sequence
|
||||
0:131 'gl_SubgroupSize' ( in uint SubgroupSize)
|
||||
0:132 'gl_SubgroupInvocationID' ( in uint SubgroupInvocationID)
|
||||
0:131 'gl_SubgroupSize' ( volatile in uint SubgroupSize)
|
||||
0:132 'gl_SubgroupInvocationID' ( volatile in uint SubgroupInvocationID)
|
||||
0:133 subgroupBarrier ( global void)
|
||||
0:134 subgroupMemoryBarrier ( global void)
|
||||
0:135 subgroupMemoryBarrierBuffer ( global void)
|
||||
|
|
@ -436,11 +436,11 @@ ERROR: node is still EOpNull!
|
|||
0:141 Function Parameters:
|
||||
0:141 'f4' ( in 4-component vector of float)
|
||||
0:142 Sequence
|
||||
0:142 'gl_SubgroupEqMask' ( in 4-component vector of uint SubgroupEqMask)
|
||||
0:143 'gl_SubgroupGeMask' ( in 4-component vector of uint SubgroupGeMask)
|
||||
0:144 'gl_SubgroupGtMask' ( in 4-component vector of uint SubgroupGtMask)
|
||||
0:145 'gl_SubgroupLeMask' ( in 4-component vector of uint SubgroupLeMask)
|
||||
0:146 'gl_SubgroupLtMask' ( in 4-component vector of uint SubgroupLtMask)
|
||||
0:142 'gl_SubgroupEqMask' ( volatile in 4-component vector of uint SubgroupEqMask)
|
||||
0:143 'gl_SubgroupGeMask' ( volatile in 4-component vector of uint SubgroupGeMask)
|
||||
0:144 'gl_SubgroupGtMask' ( volatile in 4-component vector of uint SubgroupGtMask)
|
||||
0:145 'gl_SubgroupLeMask' ( volatile in 4-component vector of uint SubgroupLeMask)
|
||||
0:146 'gl_SubgroupLtMask' ( volatile in 4-component vector of uint SubgroupLtMask)
|
||||
0:147 subgroupBroadcast ( global 4-component vector of float)
|
||||
0:147 'f4' ( in 4-component vector of float)
|
||||
0:147 Constant:
|
||||
|
|
@ -690,15 +690,15 @@ ERROR: node is still EOpNull!
|
|||
0:257 Sequence
|
||||
0:257 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:258 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:259 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:260 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:259 'gl_WarpIDNV' ( volatile in uint WarpIDNV)
|
||||
0:260 'gl_SMIDNV' ( volatile in uint SMIDNV)
|
||||
0:267 Function Definition: sm_builtins( ( global void)
|
||||
0:267 Function Parameters:
|
||||
0:269 Sequence
|
||||
0:269 'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
|
||||
0:270 'gl_SMCountNV' ( in uint SMCountNV)
|
||||
0:271 'gl_WarpIDNV' ( in uint WarpIDNV)
|
||||
0:272 'gl_SMIDNV' ( in uint SMIDNV)
|
||||
0:271 'gl_WarpIDNV' ( volatile in uint WarpIDNV)
|
||||
0:272 'gl_SMIDNV' ( volatile in uint SMIDNV)
|
||||
0:? Linker Objects
|
||||
0:? 'accNV' (layout( set=0 binding=0) uniform accelerationStructureNV)
|
||||
0:? 'localPayload' (layout( location=0) rayPayloadNV 4-component vector of float)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue