mirror of
https://github.com/RPCS3/glslang.git
synced 2025-02-26 05:47:29 +00:00
Add AST tests for ray tracing shaders
with subgroup touch tests (error and non-error cases) Currently the subgroup built-ins are NOT giving the correct output. This is fixed in the next commit.
This commit is contained in:
parent
3418cb4c98
commit
c3e60ad9b6
824
Test/baseResults/glsl.460.subgroup.rahit.out
Normal file
824
Test/baseResults/glsl.460.subgroup.rahit.out
Normal file
@ -0,0 +1,824 @@
|
||||
glsl.460.subgroup.rahit
|
||||
ERROR: 0:7: 'gl_SubgroupSize' : undeclared identifier
|
||||
ERROR: 0:8: 'gl_SubgroupInvocationID' : undeclared identifier
|
||||
ERROR: 0:9: 'subgroupBarrier' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:10: 'subgroupMemoryBarrier' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:11: 'subgroupMemoryBarrierBuffer' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:12: 'subgroupMemoryBarrierImage' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:13: 'subgroupElect' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:14: 'gl_NumSubgroups' : undeclared identifier
|
||||
ERROR: 0:15: 'gl_SubgroupID' : undeclared identifier
|
||||
ERROR: 0:16: 'subgroupMemoryBarrierShared' : no matching overloaded function found
|
||||
ERROR: 0:18: 'subgroupAll' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:19: 'subgroupAny' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:20: 'subgroupAllEqual' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:22: 'gl_SubgroupEqMask' : undeclared identifier
|
||||
ERROR: 0:23: 'gl_SubgroupGeMask' : undeclared identifier
|
||||
ERROR: 0:24: 'gl_SubgroupGtMask' : undeclared identifier
|
||||
ERROR: 0:25: 'gl_SubgroupLeMask' : undeclared identifier
|
||||
ERROR: 0:26: 'gl_SubgroupLtMask' : undeclared identifier
|
||||
ERROR: 0:27: 'subgroupBroadcast' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:28: 'subgroupBroadcastFirst' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:29: 'subgroupBallot' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:30: 'subgroupInverseBallot' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:31: 'subgroupBallotBitExtract' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:32: 'subgroupBallotBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:33: 'subgroupBallotInclusiveBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:34: 'subgroupBallotExclusiveBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:35: 'subgroupBallotFindLSB' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:36: 'subgroupBallotFindMSB' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:38: 'subgroupShuffle' : required extension not requested: GL_KHR_shader_subgroup_shuffle
|
||||
ERROR: 0:39: 'subgroupShuffleXor' : required extension not requested: GL_KHR_shader_subgroup_shuffle
|
||||
ERROR: 0:40: 'subgroupShuffleUp' : required extension not requested: GL_KHR_shader_subgroup_shuffle_relative
|
||||
ERROR: 0:41: 'subgroupShuffleDown' : required extension not requested: GL_KHR_shader_subgroup_shuffle_relative
|
||||
ERROR: 0:43: 'subgroupAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:44: 'subgroupMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:45: 'subgroupMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:46: 'subgroupMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:47: 'subgroupAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:48: 'subgroupOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:49: 'subgroupXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:50: 'subgroupInclusiveAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:51: 'subgroupInclusiveMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:52: 'subgroupInclusiveMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:53: 'subgroupInclusiveMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:54: 'subgroupInclusiveAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:55: 'subgroupInclusiveOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:56: 'subgroupInclusiveXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:57: 'subgroupExclusiveAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:58: 'subgroupExclusiveMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:59: 'subgroupExclusiveMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:60: 'subgroupExclusiveMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:61: 'subgroupExclusiveAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:62: 'subgroupExclusiveOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:63: 'subgroupExclusiveXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:65: 'subgroupClusteredAdd' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:66: 'subgroupClusteredMul' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:67: 'subgroupClusteredMin' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:68: 'subgroupClusteredMax' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:69: 'subgroupClusteredAnd' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:70: 'subgroupClusteredOr' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:71: 'subgroupClusteredXor' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:73: 'subgroupQuadBroadcast' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:74: 'subgroupQuadSwapHorizontal' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:75: 'subgroupQuadSwapVertical' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:76: 'subgroupQuadSwapDiagonal' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:78: 'subgroupPartitionNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:79: 'subgroupPartitionedAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:80: 'subgroupPartitionedMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:81: 'subgroupPartitionedMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:82: 'subgroupPartitionedMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:83: 'subgroupPartitionedAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:84: 'subgroupPartitionedOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:85: 'subgroupPartitionedXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:86: 'subgroupPartitionedInclusiveAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:87: 'subgroupPartitionedInclusiveMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:88: 'subgroupPartitionedInclusiveMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:89: 'subgroupPartitionedInclusiveMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:90: 'subgroupPartitionedInclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:91: 'subgroupPartitionedInclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:92: 'subgroupPartitionedInclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:93: 'subgroupPartitionedExclusiveAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:94: 'subgroupPartitionedExclusiveMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:95: 'subgroupPartitionedExclusiveMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:96: 'subgroupPartitionedExclusiveMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:99: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:133: 'gl_SubgroupSize' : undeclared identifier
|
||||
ERROR: 0:134: 'gl_SubgroupInvocationID' : undeclared identifier
|
||||
ERROR: 0:144: 'gl_SubgroupEqMask' : undeclared identifier
|
||||
ERROR: 0:145: 'gl_SubgroupGeMask' : undeclared identifier
|
||||
ERROR: 0:146: 'gl_SubgroupGtMask' : undeclared identifier
|
||||
ERROR: 0:147: 'gl_SubgroupLeMask' : undeclared identifier
|
||||
ERROR: 0:148: 'gl_SubgroupLtMask' : undeclared identifier
|
||||
ERROR: 93 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 460
|
||||
Requested GL_KHR_shader_subgroup_arithmetic
|
||||
Requested GL_KHR_shader_subgroup_ballot
|
||||
Requested GL_KHR_shader_subgroup_basic
|
||||
Requested GL_KHR_shader_subgroup_clustered
|
||||
Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:4 Function Definition: undeclared_errors(vf4; ( global 4-component vector of float)
|
||||
0:4 Function Parameters:
|
||||
0:4 'f4' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:7 'gl_SubgroupSize' ( temp float)
|
||||
0:8 'gl_SubgroupInvocationID' ( temp float)
|
||||
0:9 subgroupBarrier ( global void)
|
||||
0:10 subgroupMemoryBarrier ( global void)
|
||||
0:11 subgroupMemoryBarrierBuffer ( global void)
|
||||
0:12 subgroupMemoryBarrierImage ( global void)
|
||||
0:13 subgroupElect ( global bool)
|
||||
0:14 'gl_NumSubgroups' ( temp float)
|
||||
0:15 'gl_SubgroupID' ( temp float)
|
||||
0:16 Constant:
|
||||
0:16 0.000000
|
||||
0:18 subgroupAll ( global bool)
|
||||
0:18 Constant:
|
||||
0:18 true (const bool)
|
||||
0:19 subgroupAny ( global bool)
|
||||
0:19 Constant:
|
||||
0:19 false (const bool)
|
||||
0:20 subgroupAllEqual ( global bool)
|
||||
0:20 'f4' ( in 4-component vector of float)
|
||||
0:22 'gl_SubgroupEqMask' ( temp float)
|
||||
0:23 'gl_SubgroupGeMask' ( temp float)
|
||||
0:24 'gl_SubgroupGtMask' ( temp float)
|
||||
0:25 'gl_SubgroupLeMask' ( temp float)
|
||||
0:26 'gl_SubgroupLtMask' ( temp float)
|
||||
0:27 subgroupBroadcast ( global 4-component vector of float)
|
||||
0:27 'f4' ( in 4-component vector of float)
|
||||
0:27 Constant:
|
||||
0:27 0 (const uint)
|
||||
0:28 subgroupBroadcastFirst ( global 4-component vector of float)
|
||||
0:28 'f4' ( in 4-component vector of float)
|
||||
0:29 Sequence
|
||||
0:29 move second child to first child ( temp 4-component vector of uint)
|
||||
0:29 'ballot' ( temp 4-component vector of uint)
|
||||
0:29 subgroupBallot ( global 4-component vector of uint)
|
||||
0:29 Constant:
|
||||
0:29 false (const bool)
|
||||
0:30 subgroupInverseBallot ( global bool)
|
||||
0:30 Constant:
|
||||
0:30 1 (const uint)
|
||||
0:30 1 (const uint)
|
||||
0:30 1 (const uint)
|
||||
0:30 1 (const uint)
|
||||
0:31 subgroupBallotBitExtract ( global bool)
|
||||
0:31 'ballot' ( temp 4-component vector of uint)
|
||||
0:31 Constant:
|
||||
0:31 0 (const uint)
|
||||
0:32 subgroupBallotBitCount ( global uint)
|
||||
0:32 'ballot' ( temp 4-component vector of uint)
|
||||
0:33 subgroupBallotInclusiveBitCount ( global uint)
|
||||
0:33 'ballot' ( temp 4-component vector of uint)
|
||||
0:34 subgroupBallotExclusiveBitCount ( global uint)
|
||||
0:34 'ballot' ( temp 4-component vector of uint)
|
||||
0:35 subgroupBallotFindLSB ( global uint)
|
||||
0:35 'ballot' ( temp 4-component vector of uint)
|
||||
0:36 subgroupBallotFindMSB ( global uint)
|
||||
0:36 'ballot' ( temp 4-component vector of uint)
|
||||
0:38 subgroupShuffle ( global 4-component vector of float)
|
||||
0:38 'f4' ( in 4-component vector of float)
|
||||
0:38 Constant:
|
||||
0:38 0 (const uint)
|
||||
0:39 subgroupShuffleXor ( global 4-component vector of float)
|
||||
0:39 'f4' ( in 4-component vector of float)
|
||||
0:39 Constant:
|
||||
0:39 1 (const uint)
|
||||
0:40 subgroupShuffleUp ( global 4-component vector of float)
|
||||
0:40 'f4' ( in 4-component vector of float)
|
||||
0:40 Constant:
|
||||
0:40 1 (const uint)
|
||||
0:41 subgroupShuffleDown ( global 4-component vector of float)
|
||||
0:41 'f4' ( in 4-component vector of float)
|
||||
0:41 Constant:
|
||||
0:41 1 (const uint)
|
||||
0:43 move second child to first child ( temp 4-component vector of float)
|
||||
0:43 'result' ( temp 4-component vector of float)
|
||||
0:43 subgroupAdd ( global 4-component vector of float)
|
||||
0:43 'f4' ( in 4-component vector of float)
|
||||
0:44 subgroupMul ( global 4-component vector of float)
|
||||
0:44 'f4' ( in 4-component vector of float)
|
||||
0:45 subgroupMin ( global 4-component vector of float)
|
||||
0:45 'f4' ( in 4-component vector of float)
|
||||
0:46 subgroupMax ( global 4-component vector of float)
|
||||
0:46 'f4' ( in 4-component vector of float)
|
||||
0:47 subgroupAnd ( global 4-component vector of uint)
|
||||
0:47 'ballot' ( temp 4-component vector of uint)
|
||||
0:48 subgroupOr ( global 4-component vector of uint)
|
||||
0:48 'ballot' ( temp 4-component vector of uint)
|
||||
0:49 subgroupXor ( global 4-component vector of uint)
|
||||
0:49 'ballot' ( temp 4-component vector of uint)
|
||||
0:50 subgroupInclusiveAdd ( global 4-component vector of float)
|
||||
0:50 'f4' ( in 4-component vector of float)
|
||||
0:51 subgroupInclusiveMul ( global 4-component vector of float)
|
||||
0:51 'f4' ( in 4-component vector of float)
|
||||
0:52 subgroupInclusiveMin ( global 4-component vector of float)
|
||||
0:52 'f4' ( in 4-component vector of float)
|
||||
0:53 subgroupInclusiveMax ( global 4-component vector of float)
|
||||
0:53 'f4' ( in 4-component vector of float)
|
||||
0:54 subgroupInclusiveAnd ( global 4-component vector of uint)
|
||||
0:54 'ballot' ( temp 4-component vector of uint)
|
||||
0:55 subgroupInclusiveOr ( global 4-component vector of uint)
|
||||
0:55 'ballot' ( temp 4-component vector of uint)
|
||||
0:56 subgroupInclusiveXor ( global 4-component vector of uint)
|
||||
0:56 'ballot' ( temp 4-component vector of uint)
|
||||
0:57 subgroupExclusiveAdd ( global 4-component vector of float)
|
||||
0:57 'f4' ( in 4-component vector of float)
|
||||
0:58 subgroupExclusiveMul ( global 4-component vector of float)
|
||||
0:58 'f4' ( in 4-component vector of float)
|
||||
0:59 subgroupExclusiveMin ( global 4-component vector of float)
|
||||
0:59 'f4' ( in 4-component vector of float)
|
||||
0:60 subgroupExclusiveMax ( global 4-component vector of float)
|
||||
0:60 'f4' ( in 4-component vector of float)
|
||||
0:61 subgroupExclusiveAnd ( global 4-component vector of uint)
|
||||
0:61 'ballot' ( temp 4-component vector of uint)
|
||||
0:62 subgroupExclusiveOr ( global 4-component vector of uint)
|
||||
0:62 'ballot' ( temp 4-component vector of uint)
|
||||
0:63 subgroupExclusiveXor ( global 4-component vector of uint)
|
||||
0:63 'ballot' ( temp 4-component vector of uint)
|
||||
0:65 subgroupClusteredAdd ( global 4-component vector of float)
|
||||
0:65 'f4' ( in 4-component vector of float)
|
||||
0:65 Constant:
|
||||
0:65 2 (const uint)
|
||||
0:66 subgroupClusteredMul ( global 4-component vector of float)
|
||||
0:66 'f4' ( in 4-component vector of float)
|
||||
0:66 Constant:
|
||||
0:66 2 (const uint)
|
||||
0:67 subgroupClusteredMin ( global 4-component vector of float)
|
||||
0:67 'f4' ( in 4-component vector of float)
|
||||
0:67 Constant:
|
||||
0:67 2 (const uint)
|
||||
0:68 subgroupClusteredMax ( global 4-component vector of float)
|
||||
0:68 'f4' ( in 4-component vector of float)
|
||||
0:68 Constant:
|
||||
0:68 2 (const uint)
|
||||
0:69 subgroupClusteredAnd ( global 4-component vector of uint)
|
||||
0:69 'ballot' ( temp 4-component vector of uint)
|
||||
0:69 Constant:
|
||||
0:69 2 (const uint)
|
||||
0:70 subgroupClusteredOr ( global 4-component vector of uint)
|
||||
0:70 'ballot' ( temp 4-component vector of uint)
|
||||
0:70 Constant:
|
||||
0:70 2 (const uint)
|
||||
0:71 subgroupClusteredXor ( global 4-component vector of uint)
|
||||
0:71 'ballot' ( temp 4-component vector of uint)
|
||||
0:71 Constant:
|
||||
0:71 2 (const uint)
|
||||
0:73 subgroupQuadBroadcast ( global 4-component vector of float)
|
||||
0:73 'f4' ( in 4-component vector of float)
|
||||
0:73 Constant:
|
||||
0:73 0 (const uint)
|
||||
0:74 subgroupQuadSwapHorizontal ( global 4-component vector of float)
|
||||
0:74 'f4' ( in 4-component vector of float)
|
||||
0:75 subgroupQuadSwapVertical ( global 4-component vector of float)
|
||||
0:75 'f4' ( in 4-component vector of float)
|
||||
0:76 subgroupQuadSwapDiagonal ( global 4-component vector of float)
|
||||
0:76 'f4' ( in 4-component vector of float)
|
||||
0:78 Sequence
|
||||
0:78 move second child to first child ( temp 4-component vector of uint)
|
||||
0:78 'parti' ( temp 4-component vector of uint)
|
||||
0:78 subgroupPartitionNV ( global 4-component vector of uint)
|
||||
0:78 'f4' ( in 4-component vector of float)
|
||||
0:79 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:79 'f4' ( in 4-component vector of float)
|
||||
0:79 'parti' ( temp 4-component vector of uint)
|
||||
0:80 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:80 'f4' ( in 4-component vector of float)
|
||||
0:80 'parti' ( temp 4-component vector of uint)
|
||||
0:81 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:81 'f4' ( in 4-component vector of float)
|
||||
0:81 'parti' ( temp 4-component vector of uint)
|
||||
0:82 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:82 'f4' ( in 4-component vector of float)
|
||||
0:82 'parti' ( temp 4-component vector of uint)
|
||||
0:83 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:83 'ballot' ( temp 4-component vector of uint)
|
||||
0:83 'parti' ( temp 4-component vector of uint)
|
||||
0:84 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:84 'ballot' ( temp 4-component vector of uint)
|
||||
0:84 'parti' ( temp 4-component vector of uint)
|
||||
0:85 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:85 'ballot' ( temp 4-component vector of uint)
|
||||
0:85 'parti' ( temp 4-component vector of uint)
|
||||
0:86 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:86 'f4' ( in 4-component vector of float)
|
||||
0:86 'parti' ( temp 4-component vector of uint)
|
||||
0:87 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:87 'f4' ( in 4-component vector of float)
|
||||
0:87 'parti' ( temp 4-component vector of uint)
|
||||
0:88 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:88 'f4' ( in 4-component vector of float)
|
||||
0:88 'parti' ( temp 4-component vector of uint)
|
||||
0:89 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:89 'f4' ( in 4-component vector of float)
|
||||
0:89 'parti' ( temp 4-component vector of uint)
|
||||
0:90 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:90 'ballot' ( temp 4-component vector of uint)
|
||||
0:90 'parti' ( temp 4-component vector of uint)
|
||||
0:91 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:91 'ballot' ( temp 4-component vector of uint)
|
||||
0:91 'parti' ( temp 4-component vector of uint)
|
||||
0:92 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:92 'ballot' ( temp 4-component vector of uint)
|
||||
0:92 'parti' ( temp 4-component vector of uint)
|
||||
0:93 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:93 'f4' ( in 4-component vector of float)
|
||||
0:93 'parti' ( temp 4-component vector of uint)
|
||||
0:94 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:94 'f4' ( in 4-component vector of float)
|
||||
0:94 'parti' ( temp 4-component vector of uint)
|
||||
0:95 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:95 'f4' ( in 4-component vector of float)
|
||||
0:95 'parti' ( temp 4-component vector of uint)
|
||||
0:96 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:96 'f4' ( in 4-component vector of float)
|
||||
0:96 'parti' ( temp 4-component vector of uint)
|
||||
0:97 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:97 'ballot' ( temp 4-component vector of uint)
|
||||
0:97 'parti' ( temp 4-component vector of uint)
|
||||
0:98 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:98 'ballot' ( temp 4-component vector of uint)
|
||||
0:98 'parti' ( temp 4-component vector of uint)
|
||||
0:99 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:99 'ballot' ( temp 4-component vector of uint)
|
||||
0:99 'parti' ( temp 4-component vector of uint)
|
||||
0:101 Branch: Return with expression
|
||||
0:101 'result' ( temp 4-component vector of float)
|
||||
0:106 Function Definition: main( ( global void)
|
||||
0:106 Function Parameters:
|
||||
0:108 Sequence
|
||||
0:108 Sequence
|
||||
0:108 move second child to first child ( temp 3-component vector of uint)
|
||||
0:108 'v0' ( temp 3-component vector of uint)
|
||||
0:108 'gl_LaunchIDNV' ( in 3-component vector of uint LaunchIdNV)
|
||||
0:109 Sequence
|
||||
0:109 move second child to first child ( temp 3-component vector of uint)
|
||||
0:109 'v1' ( temp 3-component vector of uint)
|
||||
0:109 'gl_LaunchSizeNV' ( in 3-component vector of uint LaunchSizeNV)
|
||||
0:110 Sequence
|
||||
0:110 move second child to first child ( temp int)
|
||||
0:110 'v2' ( temp int)
|
||||
0:110 'gl_PrimitiveID' ( in int PrimitiveID)
|
||||
0:111 Sequence
|
||||
0:111 move second child to first child ( temp int)
|
||||
0:111 'v3' ( temp int)
|
||||
0:111 'gl_InstanceID' ( in int InstanceId)
|
||||
0:112 Sequence
|
||||
0:112 move second child to first child ( temp int)
|
||||
0:112 'v4' ( temp int)
|
||||
0:112 'gl_InstanceCustomIndexNV' ( in int InstanceCustomIndexNV)
|
||||
0:113 Sequence
|
||||
0:113 move second child to first child ( temp 3-component vector of float)
|
||||
0:113 'v5' ( temp 3-component vector of float)
|
||||
0:113 'gl_WorldRayOriginNV' ( in 3-component vector of float WorldRayOriginNV)
|
||||
0:114 Sequence
|
||||
0:114 move second child to first child ( temp 3-component vector of float)
|
||||
0:114 'v6' ( temp 3-component vector of float)
|
||||
0:114 'gl_WorldRayDirectionNV' ( in 3-component vector of float WorldRayDirectionNV)
|
||||
0:115 Sequence
|
||||
0:115 move second child to first child ( temp 3-component vector of float)
|
||||
0:115 'v7' ( temp 3-component vector of float)
|
||||
0:115 'gl_ObjectRayOriginNV' ( in 3-component vector of float ObjectRayOriginNV)
|
||||
0:116 Sequence
|
||||
0:116 move second child to first child ( temp 3-component vector of float)
|
||||
0:116 'v8' ( temp 3-component vector of float)
|
||||
0:116 'gl_ObjectRayDirectionNV' ( in 3-component vector of float ObjectRayDirectionNV)
|
||||
0:117 Sequence
|
||||
0:117 move second child to first child ( temp float)
|
||||
0:117 'v9' ( temp float)
|
||||
0:117 'gl_RayTminNV' ( in float ObjectRayTminNV)
|
||||
0:118 Sequence
|
||||
0:118 move second child to first child ( temp float)
|
||||
0:118 'v10' ( temp float)
|
||||
0:118 'gl_RayTmaxNV' ( in float ObjectRayTmaxNV)
|
||||
0:119 Sequence
|
||||
0:119 move second child to first child ( temp float)
|
||||
0:119 'v11' ( temp float)
|
||||
0:119 'gl_HitTNV' ( in float HitTNV)
|
||||
0:120 Sequence
|
||||
0:120 move second child to first child ( temp uint)
|
||||
0:120 'v12' ( temp uint)
|
||||
0:120 'gl_HitKindNV' ( in uint HitKindNV)
|
||||
0:121 Sequence
|
||||
0:121 move second child to first child ( temp 4X3 matrix of float)
|
||||
0:121 'v13' ( temp 4X3 matrix of float)
|
||||
0:121 'gl_ObjectToWorldNV' ( in 4X3 matrix of float ObjectToWorldNV)
|
||||
0:122 Sequence
|
||||
0:122 move second child to first child ( temp 4X3 matrix of float)
|
||||
0:122 'v14' ( temp 4X3 matrix of float)
|
||||
0:122 'gl_WorldToObjectNV' ( in 4X3 matrix of float WorldToObjectNV)
|
||||
0:123 move second child to first child ( temp 4-component vector of float)
|
||||
0:123 'incomingPayload' (layout( location=1) rayPayloadInNV 4-component vector of float)
|
||||
0:123 Constant:
|
||||
0:123 0.500000
|
||||
0:123 0.500000
|
||||
0:123 0.500000
|
||||
0:123 0.500000
|
||||
0:124 Test condition and select ( temp void)
|
||||
0:124 Condition
|
||||
0:124 Compare Equal ( temp bool)
|
||||
0:124 'v2' ( temp int)
|
||||
0:124 Constant:
|
||||
0:124 1 (const int)
|
||||
0:124 true case
|
||||
0:125 ignoreIntersectionNV ( global void)
|
||||
0:124 false case
|
||||
0:127 terminateRayNV ( global void)
|
||||
0:131 Function Definition: basic_works( ( global void)
|
||||
0:131 Function Parameters:
|
||||
0:133 Sequence
|
||||
0:133 'gl_SubgroupSize' ( temp float)
|
||||
0:134 'gl_SubgroupInvocationID' ( temp float)
|
||||
0:135 subgroupBarrier ( global void)
|
||||
0:136 subgroupMemoryBarrier ( global void)
|
||||
0:137 subgroupMemoryBarrierBuffer ( global void)
|
||||
0:138 subgroupMemoryBarrierImage ( global void)
|
||||
0:139 subgroupElect ( global bool)
|
||||
0:143 Function Definition: ballot_works(vf4; ( global void)
|
||||
0:143 Function Parameters:
|
||||
0:143 'f4' ( in 4-component vector of float)
|
||||
0:144 Sequence
|
||||
0:144 'gl_SubgroupEqMask' ( temp float)
|
||||
0:145 'gl_SubgroupGeMask' ( temp float)
|
||||
0:146 'gl_SubgroupGtMask' ( temp float)
|
||||
0:147 'gl_SubgroupLeMask' ( temp float)
|
||||
0:148 'gl_SubgroupLtMask' ( temp float)
|
||||
0:149 subgroupBroadcast ( global 4-component vector of float)
|
||||
0:149 'f4' ( in 4-component vector of float)
|
||||
0:149 Constant:
|
||||
0:149 0 (const uint)
|
||||
0:150 subgroupBroadcastFirst ( global 4-component vector of float)
|
||||
0:150 'f4' ( in 4-component vector of float)
|
||||
0:151 Sequence
|
||||
0:151 move second child to first child ( temp 4-component vector of uint)
|
||||
0:151 'ballot' ( temp 4-component vector of uint)
|
||||
0:151 subgroupBallot ( global 4-component vector of uint)
|
||||
0:151 Constant:
|
||||
0:151 false (const bool)
|
||||
0:152 subgroupInverseBallot ( global bool)
|
||||
0:152 Constant:
|
||||
0:152 1 (const uint)
|
||||
0:152 1 (const uint)
|
||||
0:152 1 (const uint)
|
||||
0:152 1 (const uint)
|
||||
0:153 subgroupBallotBitExtract ( global bool)
|
||||
0:153 'ballot' ( temp 4-component vector of uint)
|
||||
0:153 Constant:
|
||||
0:153 0 (const uint)
|
||||
0:154 subgroupBallotBitCount ( global uint)
|
||||
0:154 'ballot' ( temp 4-component vector of uint)
|
||||
0:155 subgroupBallotInclusiveBitCount ( global uint)
|
||||
0:155 'ballot' ( temp 4-component vector of uint)
|
||||
0:156 subgroupBallotExclusiveBitCount ( global uint)
|
||||
0:156 'ballot' ( temp 4-component vector of uint)
|
||||
0:157 subgroupBallotFindLSB ( global uint)
|
||||
0:157 'ballot' ( temp 4-component vector of uint)
|
||||
0:158 subgroupBallotFindMSB ( global uint)
|
||||
0:158 'ballot' ( temp 4-component vector of uint)
|
||||
0:162 Function Definition: vote_works(vf4; ( global void)
|
||||
0:162 Function Parameters:
|
||||
0:162 'f4' ( in 4-component vector of float)
|
||||
0:164 Sequence
|
||||
0:164 subgroupAll ( global bool)
|
||||
0:164 Constant:
|
||||
0:164 true (const bool)
|
||||
0:165 subgroupAny ( global bool)
|
||||
0:165 Constant:
|
||||
0:165 false (const bool)
|
||||
0:166 subgroupAllEqual ( global bool)
|
||||
0:166 'f4' ( in 4-component vector of float)
|
||||
0:171 Function Definition: shuffle_works(vf4; ( global void)
|
||||
0:171 Function Parameters:
|
||||
0:171 'f4' ( in 4-component vector of float)
|
||||
0:173 Sequence
|
||||
0:173 subgroupShuffle ( global 4-component vector of float)
|
||||
0:173 'f4' ( in 4-component vector of float)
|
||||
0:173 Constant:
|
||||
0:173 0 (const uint)
|
||||
0:174 subgroupShuffleXor ( global 4-component vector of float)
|
||||
0:174 'f4' ( in 4-component vector of float)
|
||||
0:174 Constant:
|
||||
0:174 1 (const uint)
|
||||
0:175 subgroupShuffleUp ( global 4-component vector of float)
|
||||
0:175 'f4' ( in 4-component vector of float)
|
||||
0:175 Constant:
|
||||
0:175 1 (const uint)
|
||||
0:176 subgroupShuffleDown ( global 4-component vector of float)
|
||||
0:176 'f4' ( in 4-component vector of float)
|
||||
0:176 Constant:
|
||||
0:176 1 (const uint)
|
||||
0:180 Function Definition: arith_works(vf4; ( global void)
|
||||
0:180 Function Parameters:
|
||||
0:180 'f4' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:183 subgroupAdd ( global 4-component vector of float)
|
||||
0:183 'f4' ( in 4-component vector of float)
|
||||
0:184 subgroupMul ( global 4-component vector of float)
|
||||
0:184 'f4' ( in 4-component vector of float)
|
||||
0:185 subgroupMin ( global 4-component vector of float)
|
||||
0:185 'f4' ( in 4-component vector of float)
|
||||
0:186 subgroupMax ( global 4-component vector of float)
|
||||
0:186 'f4' ( in 4-component vector of float)
|
||||
0:187 subgroupAnd ( global 4-component vector of uint)
|
||||
0:187 'ballot' ( temp 4-component vector of uint)
|
||||
0:188 subgroupOr ( global 4-component vector of uint)
|
||||
0:188 'ballot' ( temp 4-component vector of uint)
|
||||
0:189 subgroupXor ( global 4-component vector of uint)
|
||||
0:189 'ballot' ( temp 4-component vector of uint)
|
||||
0:190 subgroupInclusiveAdd ( global 4-component vector of float)
|
||||
0:190 'f4' ( in 4-component vector of float)
|
||||
0:191 subgroupInclusiveMul ( global 4-component vector of float)
|
||||
0:191 'f4' ( in 4-component vector of float)
|
||||
0:192 subgroupInclusiveMin ( global 4-component vector of float)
|
||||
0:192 'f4' ( in 4-component vector of float)
|
||||
0:193 subgroupInclusiveMax ( global 4-component vector of float)
|
||||
0:193 'f4' ( in 4-component vector of float)
|
||||
0:194 subgroupInclusiveAnd ( global 4-component vector of uint)
|
||||
0:194 'ballot' ( temp 4-component vector of uint)
|
||||
0:195 subgroupInclusiveOr ( global 4-component vector of uint)
|
||||
0:195 'ballot' ( temp 4-component vector of uint)
|
||||
0:196 subgroupInclusiveXor ( global 4-component vector of uint)
|
||||
0:196 'ballot' ( temp 4-component vector of uint)
|
||||
0:197 subgroupExclusiveAdd ( global 4-component vector of float)
|
||||
0:197 'f4' ( in 4-component vector of float)
|
||||
0:198 subgroupExclusiveMul ( global 4-component vector of float)
|
||||
0:198 'f4' ( in 4-component vector of float)
|
||||
0:199 subgroupExclusiveMin ( global 4-component vector of float)
|
||||
0:199 'f4' ( in 4-component vector of float)
|
||||
0:200 subgroupExclusiveMax ( global 4-component vector of float)
|
||||
0:200 'f4' ( in 4-component vector of float)
|
||||
0:201 subgroupExclusiveAnd ( global 4-component vector of uint)
|
||||
0:201 'ballot' ( temp 4-component vector of uint)
|
||||
0:202 subgroupExclusiveOr ( global 4-component vector of uint)
|
||||
0:202 'ballot' ( temp 4-component vector of uint)
|
||||
0:203 subgroupExclusiveXor ( global 4-component vector of uint)
|
||||
0:203 'ballot' ( temp 4-component vector of uint)
|
||||
0:207 Function Definition: clustered_works(vf4; ( global void)
|
||||
0:207 Function Parameters:
|
||||
0:207 'f4' ( in 4-component vector of float)
|
||||
0:209 Sequence
|
||||
0:209 Sequence
|
||||
0:209 move second child to first child ( temp 4-component vector of uint)
|
||||
0:209 'ballot' ( temp 4-component vector of uint)
|
||||
0:209 Constant:
|
||||
0:209 85 (const uint)
|
||||
0:209 0 (const uint)
|
||||
0:209 0 (const uint)
|
||||
0:209 0 (const uint)
|
||||
0:210 subgroupClusteredAdd ( global 4-component vector of float)
|
||||
0:210 'f4' ( in 4-component vector of float)
|
||||
0:210 Constant:
|
||||
0:210 2 (const uint)
|
||||
0:211 subgroupClusteredMul ( global 4-component vector of float)
|
||||
0:211 'f4' ( in 4-component vector of float)
|
||||
0:211 Constant:
|
||||
0:211 2 (const uint)
|
||||
0:212 subgroupClusteredMin ( global 4-component vector of float)
|
||||
0:212 'f4' ( in 4-component vector of float)
|
||||
0:212 Constant:
|
||||
0:212 2 (const uint)
|
||||
0:213 subgroupClusteredMax ( global 4-component vector of float)
|
||||
0:213 'f4' ( in 4-component vector of float)
|
||||
0:213 Constant:
|
||||
0:213 2 (const uint)
|
||||
0:214 subgroupClusteredAnd ( global 4-component vector of uint)
|
||||
0:214 'ballot' ( temp 4-component vector of uint)
|
||||
0:214 Constant:
|
||||
0:214 2 (const uint)
|
||||
0:215 subgroupClusteredOr ( global 4-component vector of uint)
|
||||
0:215 'ballot' ( temp 4-component vector of uint)
|
||||
0:215 Constant:
|
||||
0:215 2 (const uint)
|
||||
0:216 subgroupClusteredXor ( global 4-component vector of uint)
|
||||
0:216 'ballot' ( temp 4-component vector of uint)
|
||||
0:216 Constant:
|
||||
0:216 2 (const uint)
|
||||
0:220 Function Definition: quad_works(vf4; ( global void)
|
||||
0:220 Function Parameters:
|
||||
0:220 'f4' ( in 4-component vector of float)
|
||||
0:222 Sequence
|
||||
0:222 subgroupQuadBroadcast ( global 4-component vector of float)
|
||||
0:222 'f4' ( in 4-component vector of float)
|
||||
0:222 Constant:
|
||||
0:222 0 (const uint)
|
||||
0:223 subgroupQuadSwapHorizontal ( global 4-component vector of float)
|
||||
0:223 'f4' ( in 4-component vector of float)
|
||||
0:224 subgroupQuadSwapVertical ( global 4-component vector of float)
|
||||
0:224 'f4' ( in 4-component vector of float)
|
||||
0:225 subgroupQuadSwapDiagonal ( global 4-component vector of float)
|
||||
0:225 'f4' ( in 4-component vector of float)
|
||||
0:229 Function Definition: partitioned_works(vf4; ( global void)
|
||||
0:229 Function Parameters:
|
||||
0:229 'f4' ( in 4-component vector of float)
|
||||
0:231 Sequence
|
||||
0:231 Sequence
|
||||
0:231 move second child to first child ( temp 4-component vector of uint)
|
||||
0:231 'parti' ( temp 4-component vector of uint)
|
||||
0:231 subgroupPartitionNV ( global 4-component vector of uint)
|
||||
0:231 'f4' ( in 4-component vector of float)
|
||||
0:232 Sequence
|
||||
0:232 move second child to first child ( temp 4-component vector of uint)
|
||||
0:232 'ballot' ( temp 4-component vector of uint)
|
||||
0:232 Constant:
|
||||
0:232 85 (const uint)
|
||||
0:232 0 (const uint)
|
||||
0:232 0 (const uint)
|
||||
0:232 0 (const uint)
|
||||
0:233 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:233 'f4' ( in 4-component vector of float)
|
||||
0:233 'parti' ( temp 4-component vector of uint)
|
||||
0:234 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:234 'f4' ( in 4-component vector of float)
|
||||
0:234 'parti' ( temp 4-component vector of uint)
|
||||
0:235 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:235 'f4' ( in 4-component vector of float)
|
||||
0:235 'parti' ( temp 4-component vector of uint)
|
||||
0:236 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:236 'f4' ( in 4-component vector of float)
|
||||
0:236 'parti' ( temp 4-component vector of uint)
|
||||
0:237 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:237 'ballot' ( temp 4-component vector of uint)
|
||||
0:237 'parti' ( temp 4-component vector of uint)
|
||||
0:238 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:238 'ballot' ( temp 4-component vector of uint)
|
||||
0:238 'parti' ( temp 4-component vector of uint)
|
||||
0:239 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:239 'ballot' ( temp 4-component vector of uint)
|
||||
0:239 'parti' ( temp 4-component vector of uint)
|
||||
0:240 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:240 'f4' ( in 4-component vector of float)
|
||||
0:240 'parti' ( temp 4-component vector of uint)
|
||||
0:241 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:241 'f4' ( in 4-component vector of float)
|
||||
0:241 'parti' ( temp 4-component vector of uint)
|
||||
0:242 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:242 'f4' ( in 4-component vector of float)
|
||||
0:242 'parti' ( temp 4-component vector of uint)
|
||||
0:243 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:243 'f4' ( in 4-component vector of float)
|
||||
0:243 'parti' ( temp 4-component vector of uint)
|
||||
0:244 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:244 'ballot' ( temp 4-component vector of uint)
|
||||
0:244 'parti' ( temp 4-component vector of uint)
|
||||
0:245 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:245 'ballot' ( temp 4-component vector of uint)
|
||||
0:245 'parti' ( temp 4-component vector of uint)
|
||||
0:246 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:246 'ballot' ( temp 4-component vector of uint)
|
||||
0:246 'parti' ( temp 4-component vector of uint)
|
||||
0:247 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:247 'f4' ( in 4-component vector of float)
|
||||
0:247 'parti' ( temp 4-component vector of uint)
|
||||
0:248 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:248 'f4' ( in 4-component vector of float)
|
||||
0:248 'parti' ( temp 4-component vector of uint)
|
||||
0:249 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:249 'f4' ( in 4-component vector of float)
|
||||
0:249 'parti' ( temp 4-component vector of uint)
|
||||
0:250 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:250 'f4' ( in 4-component vector of float)
|
||||
0:250 'parti' ( temp 4-component vector of uint)
|
||||
0:251 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:251 'ballot' ( temp 4-component vector of uint)
|
||||
0:251 'parti' ( temp 4-component vector of uint)
|
||||
0:252 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:252 'ballot' ( temp 4-component vector of uint)
|
||||
0:252 'parti' ( temp 4-component vector of uint)
|
||||
0:253 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:253 'ballot' ( temp 4-component vector of uint)
|
||||
0:253 'parti' ( temp 4-component vector of uint)
|
||||
0:? Linker Objects
|
||||
0:? 'incomingPayload' (layout( location=1) rayPayloadInNV 4-component vector of float)
|
||||
|
||||
|
||||
Linked any-hit stage:
|
||||
|
||||
|
||||
Shader version: 460
|
||||
Requested GL_KHR_shader_subgroup_arithmetic
|
||||
Requested GL_KHR_shader_subgroup_ballot
|
||||
Requested GL_KHR_shader_subgroup_basic
|
||||
Requested GL_KHR_shader_subgroup_clustered
|
||||
Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:106 Function Definition: main( ( global void)
|
||||
0:106 Function Parameters:
|
||||
0:108 Sequence
|
||||
0:108 Sequence
|
||||
0:108 move second child to first child ( temp 3-component vector of uint)
|
||||
0:108 'v0' ( temp 3-component vector of uint)
|
||||
0:108 'gl_LaunchIDNV' ( in 3-component vector of uint LaunchIdNV)
|
||||
0:109 Sequence
|
||||
0:109 move second child to first child ( temp 3-component vector of uint)
|
||||
0:109 'v1' ( temp 3-component vector of uint)
|
||||
0:109 'gl_LaunchSizeNV' ( in 3-component vector of uint LaunchSizeNV)
|
||||
0:110 Sequence
|
||||
0:110 move second child to first child ( temp int)
|
||||
0:110 'v2' ( temp int)
|
||||
0:110 'gl_PrimitiveID' ( in int PrimitiveID)
|
||||
0:111 Sequence
|
||||
0:111 move second child to first child ( temp int)
|
||||
0:111 'v3' ( temp int)
|
||||
0:111 'gl_InstanceID' ( in int InstanceId)
|
||||
0:112 Sequence
|
||||
0:112 move second child to first child ( temp int)
|
||||
0:112 'v4' ( temp int)
|
||||
0:112 'gl_InstanceCustomIndexNV' ( in int InstanceCustomIndexNV)
|
||||
0:113 Sequence
|
||||
0:113 move second child to first child ( temp 3-component vector of float)
|
||||
0:113 'v5' ( temp 3-component vector of float)
|
||||
0:113 'gl_WorldRayOriginNV' ( in 3-component vector of float WorldRayOriginNV)
|
||||
0:114 Sequence
|
||||
0:114 move second child to first child ( temp 3-component vector of float)
|
||||
0:114 'v6' ( temp 3-component vector of float)
|
||||
0:114 'gl_WorldRayDirectionNV' ( in 3-component vector of float WorldRayDirectionNV)
|
||||
0:115 Sequence
|
||||
0:115 move second child to first child ( temp 3-component vector of float)
|
||||
0:115 'v7' ( temp 3-component vector of float)
|
||||
0:115 'gl_ObjectRayOriginNV' ( in 3-component vector of float ObjectRayOriginNV)
|
||||
0:116 Sequence
|
||||
0:116 move second child to first child ( temp 3-component vector of float)
|
||||
0:116 'v8' ( temp 3-component vector of float)
|
||||
0:116 'gl_ObjectRayDirectionNV' ( in 3-component vector of float ObjectRayDirectionNV)
|
||||
0:117 Sequence
|
||||
0:117 move second child to first child ( temp float)
|
||||
0:117 'v9' ( temp float)
|
||||
0:117 'gl_RayTminNV' ( in float ObjectRayTminNV)
|
||||
0:118 Sequence
|
||||
0:118 move second child to first child ( temp float)
|
||||
0:118 'v10' ( temp float)
|
||||
0:118 'gl_RayTmaxNV' ( in float ObjectRayTmaxNV)
|
||||
0:119 Sequence
|
||||
0:119 move second child to first child ( temp float)
|
||||
0:119 'v11' ( temp float)
|
||||
0:119 'gl_HitTNV' ( in float HitTNV)
|
||||
0:120 Sequence
|
||||
0:120 move second child to first child ( temp uint)
|
||||
0:120 'v12' ( temp uint)
|
||||
0:120 'gl_HitKindNV' ( in uint HitKindNV)
|
||||
0:121 Sequence
|
||||
0:121 move second child to first child ( temp 4X3 matrix of float)
|
||||
0:121 'v13' ( temp 4X3 matrix of float)
|
||||
0:121 'gl_ObjectToWorldNV' ( in 4X3 matrix of float ObjectToWorldNV)
|
||||
0:122 Sequence
|
||||
0:122 move second child to first child ( temp 4X3 matrix of float)
|
||||
0:122 'v14' ( temp 4X3 matrix of float)
|
||||
0:122 'gl_WorldToObjectNV' ( in 4X3 matrix of float WorldToObjectNV)
|
||||
0:123 move second child to first child ( temp 4-component vector of float)
|
||||
0:123 'incomingPayload' (layout( location=1) rayPayloadInNV 4-component vector of float)
|
||||
0:123 Constant:
|
||||
0:123 0.500000
|
||||
0:123 0.500000
|
||||
0:123 0.500000
|
||||
0:123 0.500000
|
||||
0:124 Test condition and select ( temp void)
|
||||
0:124 Condition
|
||||
0:124 Compare Equal ( temp bool)
|
||||
0:124 'v2' ( temp int)
|
||||
0:124 Constant:
|
||||
0:124 1 (const int)
|
||||
0:124 true case
|
||||
0:125 ignoreIntersectionNV ( global void)
|
||||
0:124 false case
|
||||
0:127 terminateRayNV ( global void)
|
||||
0:? Linker Objects
|
||||
0:? 'incomingPayload' (layout( location=1) rayPayloadInNV 4-component vector of float)
|
||||
|
712
Test/baseResults/glsl.460.subgroup.rcall.out
Normal file
712
Test/baseResults/glsl.460.subgroup.rcall.out
Normal file
@ -0,0 +1,712 @@
|
||||
glsl.460.subgroup.rcall
|
||||
ERROR: 0:7: 'gl_SubgroupSize' : undeclared identifier
|
||||
ERROR: 0:8: 'gl_SubgroupInvocationID' : undeclared identifier
|
||||
ERROR: 0:9: 'subgroupBarrier' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:10: 'subgroupMemoryBarrier' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:11: 'subgroupMemoryBarrierBuffer' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:12: 'subgroupMemoryBarrierImage' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:13: 'subgroupElect' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:14: 'gl_NumSubgroups' : undeclared identifier
|
||||
ERROR: 0:15: 'gl_SubgroupID' : undeclared identifier
|
||||
ERROR: 0:16: 'subgroupMemoryBarrierShared' : no matching overloaded function found
|
||||
ERROR: 0:18: 'subgroupAll' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:19: 'subgroupAny' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:20: 'subgroupAllEqual' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:22: 'gl_SubgroupEqMask' : undeclared identifier
|
||||
ERROR: 0:23: 'gl_SubgroupGeMask' : undeclared identifier
|
||||
ERROR: 0:24: 'gl_SubgroupGtMask' : undeclared identifier
|
||||
ERROR: 0:25: 'gl_SubgroupLeMask' : undeclared identifier
|
||||
ERROR: 0:26: 'gl_SubgroupLtMask' : undeclared identifier
|
||||
ERROR: 0:27: 'subgroupBroadcast' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:28: 'subgroupBroadcastFirst' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:29: 'subgroupBallot' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:30: 'subgroupInverseBallot' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:31: 'subgroupBallotBitExtract' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:32: 'subgroupBallotBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:33: 'subgroupBallotInclusiveBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:34: 'subgroupBallotExclusiveBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:35: 'subgroupBallotFindLSB' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:36: 'subgroupBallotFindMSB' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:38: 'subgroupShuffle' : required extension not requested: GL_KHR_shader_subgroup_shuffle
|
||||
ERROR: 0:39: 'subgroupShuffleXor' : required extension not requested: GL_KHR_shader_subgroup_shuffle
|
||||
ERROR: 0:40: 'subgroupShuffleUp' : required extension not requested: GL_KHR_shader_subgroup_shuffle_relative
|
||||
ERROR: 0:41: 'subgroupShuffleDown' : required extension not requested: GL_KHR_shader_subgroup_shuffle_relative
|
||||
ERROR: 0:43: 'subgroupAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:44: 'subgroupMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:45: 'subgroupMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:46: 'subgroupMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:47: 'subgroupAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:48: 'subgroupOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:49: 'subgroupXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:50: 'subgroupInclusiveAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:51: 'subgroupInclusiveMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:52: 'subgroupInclusiveMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:53: 'subgroupInclusiveMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:54: 'subgroupInclusiveAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:55: 'subgroupInclusiveOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:56: 'subgroupInclusiveXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:57: 'subgroupExclusiveAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:58: 'subgroupExclusiveMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:59: 'subgroupExclusiveMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:60: 'subgroupExclusiveMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:61: 'subgroupExclusiveAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:62: 'subgroupExclusiveOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:63: 'subgroupExclusiveXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:65: 'subgroupClusteredAdd' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:66: 'subgroupClusteredMul' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:67: 'subgroupClusteredMin' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:68: 'subgroupClusteredMax' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:69: 'subgroupClusteredAnd' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:70: 'subgroupClusteredOr' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:71: 'subgroupClusteredXor' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:73: 'subgroupQuadBroadcast' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:74: 'subgroupQuadSwapHorizontal' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:75: 'subgroupQuadSwapVertical' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:76: 'subgroupQuadSwapDiagonal' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:78: 'subgroupPartitionNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:79: 'subgroupPartitionedAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:80: 'subgroupPartitionedMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:81: 'subgroupPartitionedMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:82: 'subgroupPartitionedMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:83: 'subgroupPartitionedAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:84: 'subgroupPartitionedOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:85: 'subgroupPartitionedXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:86: 'subgroupPartitionedInclusiveAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:87: 'subgroupPartitionedInclusiveMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:88: 'subgroupPartitionedInclusiveMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:89: 'subgroupPartitionedInclusiveMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:90: 'subgroupPartitionedInclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:91: 'subgroupPartitionedInclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:92: 'subgroupPartitionedInclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:93: 'subgroupPartitionedExclusiveAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:94: 'subgroupPartitionedExclusiveMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:95: 'subgroupPartitionedExclusiveMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:96: 'subgroupPartitionedExclusiveMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:99: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:121: 'gl_SubgroupSize' : undeclared identifier
|
||||
ERROR: 0:122: 'gl_SubgroupInvocationID' : undeclared identifier
|
||||
ERROR: 0:132: 'gl_SubgroupEqMask' : undeclared identifier
|
||||
ERROR: 0:133: 'gl_SubgroupGeMask' : undeclared identifier
|
||||
ERROR: 0:134: 'gl_SubgroupGtMask' : undeclared identifier
|
||||
ERROR: 0:135: 'gl_SubgroupLeMask' : undeclared identifier
|
||||
ERROR: 0:136: 'gl_SubgroupLtMask' : undeclared identifier
|
||||
ERROR: 93 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 460
|
||||
Requested GL_KHR_shader_subgroup_arithmetic
|
||||
Requested GL_KHR_shader_subgroup_ballot
|
||||
Requested GL_KHR_shader_subgroup_basic
|
||||
Requested GL_KHR_shader_subgroup_clustered
|
||||
Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:4 Function Definition: undeclared_errors(vf4; ( global 4-component vector of float)
|
||||
0:4 Function Parameters:
|
||||
0:4 'f4' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:7 'gl_SubgroupSize' ( temp float)
|
||||
0:8 'gl_SubgroupInvocationID' ( temp float)
|
||||
0:9 subgroupBarrier ( global void)
|
||||
0:10 subgroupMemoryBarrier ( global void)
|
||||
0:11 subgroupMemoryBarrierBuffer ( global void)
|
||||
0:12 subgroupMemoryBarrierImage ( global void)
|
||||
0:13 subgroupElect ( global bool)
|
||||
0:14 'gl_NumSubgroups' ( temp float)
|
||||
0:15 'gl_SubgroupID' ( temp float)
|
||||
0:16 Constant:
|
||||
0:16 0.000000
|
||||
0:18 subgroupAll ( global bool)
|
||||
0:18 Constant:
|
||||
0:18 true (const bool)
|
||||
0:19 subgroupAny ( global bool)
|
||||
0:19 Constant:
|
||||
0:19 false (const bool)
|
||||
0:20 subgroupAllEqual ( global bool)
|
||||
0:20 'f4' ( in 4-component vector of float)
|
||||
0:22 'gl_SubgroupEqMask' ( temp float)
|
||||
0:23 'gl_SubgroupGeMask' ( temp float)
|
||||
0:24 'gl_SubgroupGtMask' ( temp float)
|
||||
0:25 'gl_SubgroupLeMask' ( temp float)
|
||||
0:26 'gl_SubgroupLtMask' ( temp float)
|
||||
0:27 subgroupBroadcast ( global 4-component vector of float)
|
||||
0:27 'f4' ( in 4-component vector of float)
|
||||
0:27 Constant:
|
||||
0:27 0 (const uint)
|
||||
0:28 subgroupBroadcastFirst ( global 4-component vector of float)
|
||||
0:28 'f4' ( in 4-component vector of float)
|
||||
0:29 Sequence
|
||||
0:29 move second child to first child ( temp 4-component vector of uint)
|
||||
0:29 'ballot' ( temp 4-component vector of uint)
|
||||
0:29 subgroupBallot ( global 4-component vector of uint)
|
||||
0:29 Constant:
|
||||
0:29 false (const bool)
|
||||
0:30 subgroupInverseBallot ( global bool)
|
||||
0:30 Constant:
|
||||
0:30 1 (const uint)
|
||||
0:30 1 (const uint)
|
||||
0:30 1 (const uint)
|
||||
0:30 1 (const uint)
|
||||
0:31 subgroupBallotBitExtract ( global bool)
|
||||
0:31 'ballot' ( temp 4-component vector of uint)
|
||||
0:31 Constant:
|
||||
0:31 0 (const uint)
|
||||
0:32 subgroupBallotBitCount ( global uint)
|
||||
0:32 'ballot' ( temp 4-component vector of uint)
|
||||
0:33 subgroupBallotInclusiveBitCount ( global uint)
|
||||
0:33 'ballot' ( temp 4-component vector of uint)
|
||||
0:34 subgroupBallotExclusiveBitCount ( global uint)
|
||||
0:34 'ballot' ( temp 4-component vector of uint)
|
||||
0:35 subgroupBallotFindLSB ( global uint)
|
||||
0:35 'ballot' ( temp 4-component vector of uint)
|
||||
0:36 subgroupBallotFindMSB ( global uint)
|
||||
0:36 'ballot' ( temp 4-component vector of uint)
|
||||
0:38 subgroupShuffle ( global 4-component vector of float)
|
||||
0:38 'f4' ( in 4-component vector of float)
|
||||
0:38 Constant:
|
||||
0:38 0 (const uint)
|
||||
0:39 subgroupShuffleXor ( global 4-component vector of float)
|
||||
0:39 'f4' ( in 4-component vector of float)
|
||||
0:39 Constant:
|
||||
0:39 1 (const uint)
|
||||
0:40 subgroupShuffleUp ( global 4-component vector of float)
|
||||
0:40 'f4' ( in 4-component vector of float)
|
||||
0:40 Constant:
|
||||
0:40 1 (const uint)
|
||||
0:41 subgroupShuffleDown ( global 4-component vector of float)
|
||||
0:41 'f4' ( in 4-component vector of float)
|
||||
0:41 Constant:
|
||||
0:41 1 (const uint)
|
||||
0:43 move second child to first child ( temp 4-component vector of float)
|
||||
0:43 'result' ( temp 4-component vector of float)
|
||||
0:43 subgroupAdd ( global 4-component vector of float)
|
||||
0:43 'f4' ( in 4-component vector of float)
|
||||
0:44 subgroupMul ( global 4-component vector of float)
|
||||
0:44 'f4' ( in 4-component vector of float)
|
||||
0:45 subgroupMin ( global 4-component vector of float)
|
||||
0:45 'f4' ( in 4-component vector of float)
|
||||
0:46 subgroupMax ( global 4-component vector of float)
|
||||
0:46 'f4' ( in 4-component vector of float)
|
||||
0:47 subgroupAnd ( global 4-component vector of uint)
|
||||
0:47 'ballot' ( temp 4-component vector of uint)
|
||||
0:48 subgroupOr ( global 4-component vector of uint)
|
||||
0:48 'ballot' ( temp 4-component vector of uint)
|
||||
0:49 subgroupXor ( global 4-component vector of uint)
|
||||
0:49 'ballot' ( temp 4-component vector of uint)
|
||||
0:50 subgroupInclusiveAdd ( global 4-component vector of float)
|
||||
0:50 'f4' ( in 4-component vector of float)
|
||||
0:51 subgroupInclusiveMul ( global 4-component vector of float)
|
||||
0:51 'f4' ( in 4-component vector of float)
|
||||
0:52 subgroupInclusiveMin ( global 4-component vector of float)
|
||||
0:52 'f4' ( in 4-component vector of float)
|
||||
0:53 subgroupInclusiveMax ( global 4-component vector of float)
|
||||
0:53 'f4' ( in 4-component vector of float)
|
||||
0:54 subgroupInclusiveAnd ( global 4-component vector of uint)
|
||||
0:54 'ballot' ( temp 4-component vector of uint)
|
||||
0:55 subgroupInclusiveOr ( global 4-component vector of uint)
|
||||
0:55 'ballot' ( temp 4-component vector of uint)
|
||||
0:56 subgroupInclusiveXor ( global 4-component vector of uint)
|
||||
0:56 'ballot' ( temp 4-component vector of uint)
|
||||
0:57 subgroupExclusiveAdd ( global 4-component vector of float)
|
||||
0:57 'f4' ( in 4-component vector of float)
|
||||
0:58 subgroupExclusiveMul ( global 4-component vector of float)
|
||||
0:58 'f4' ( in 4-component vector of float)
|
||||
0:59 subgroupExclusiveMin ( global 4-component vector of float)
|
||||
0:59 'f4' ( in 4-component vector of float)
|
||||
0:60 subgroupExclusiveMax ( global 4-component vector of float)
|
||||
0:60 'f4' ( in 4-component vector of float)
|
||||
0:61 subgroupExclusiveAnd ( global 4-component vector of uint)
|
||||
0:61 'ballot' ( temp 4-component vector of uint)
|
||||
0:62 subgroupExclusiveOr ( global 4-component vector of uint)
|
||||
0:62 'ballot' ( temp 4-component vector of uint)
|
||||
0:63 subgroupExclusiveXor ( global 4-component vector of uint)
|
||||
0:63 'ballot' ( temp 4-component vector of uint)
|
||||
0:65 subgroupClusteredAdd ( global 4-component vector of float)
|
||||
0:65 'f4' ( in 4-component vector of float)
|
||||
0:65 Constant:
|
||||
0:65 2 (const uint)
|
||||
0:66 subgroupClusteredMul ( global 4-component vector of float)
|
||||
0:66 'f4' ( in 4-component vector of float)
|
||||
0:66 Constant:
|
||||
0:66 2 (const uint)
|
||||
0:67 subgroupClusteredMin ( global 4-component vector of float)
|
||||
0:67 'f4' ( in 4-component vector of float)
|
||||
0:67 Constant:
|
||||
0:67 2 (const uint)
|
||||
0:68 subgroupClusteredMax ( global 4-component vector of float)
|
||||
0:68 'f4' ( in 4-component vector of float)
|
||||
0:68 Constant:
|
||||
0:68 2 (const uint)
|
||||
0:69 subgroupClusteredAnd ( global 4-component vector of uint)
|
||||
0:69 'ballot' ( temp 4-component vector of uint)
|
||||
0:69 Constant:
|
||||
0:69 2 (const uint)
|
||||
0:70 subgroupClusteredOr ( global 4-component vector of uint)
|
||||
0:70 'ballot' ( temp 4-component vector of uint)
|
||||
0:70 Constant:
|
||||
0:70 2 (const uint)
|
||||
0:71 subgroupClusteredXor ( global 4-component vector of uint)
|
||||
0:71 'ballot' ( temp 4-component vector of uint)
|
||||
0:71 Constant:
|
||||
0:71 2 (const uint)
|
||||
0:73 subgroupQuadBroadcast ( global 4-component vector of float)
|
||||
0:73 'f4' ( in 4-component vector of float)
|
||||
0:73 Constant:
|
||||
0:73 0 (const uint)
|
||||
0:74 subgroupQuadSwapHorizontal ( global 4-component vector of float)
|
||||
0:74 'f4' ( in 4-component vector of float)
|
||||
0:75 subgroupQuadSwapVertical ( global 4-component vector of float)
|
||||
0:75 'f4' ( in 4-component vector of float)
|
||||
0:76 subgroupQuadSwapDiagonal ( global 4-component vector of float)
|
||||
0:76 'f4' ( in 4-component vector of float)
|
||||
0:78 Sequence
|
||||
0:78 move second child to first child ( temp 4-component vector of uint)
|
||||
0:78 'parti' ( temp 4-component vector of uint)
|
||||
0:78 subgroupPartitionNV ( global 4-component vector of uint)
|
||||
0:78 'f4' ( in 4-component vector of float)
|
||||
0:79 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:79 'f4' ( in 4-component vector of float)
|
||||
0:79 'parti' ( temp 4-component vector of uint)
|
||||
0:80 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:80 'f4' ( in 4-component vector of float)
|
||||
0:80 'parti' ( temp 4-component vector of uint)
|
||||
0:81 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:81 'f4' ( in 4-component vector of float)
|
||||
0:81 'parti' ( temp 4-component vector of uint)
|
||||
0:82 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:82 'f4' ( in 4-component vector of float)
|
||||
0:82 'parti' ( temp 4-component vector of uint)
|
||||
0:83 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:83 'ballot' ( temp 4-component vector of uint)
|
||||
0:83 'parti' ( temp 4-component vector of uint)
|
||||
0:84 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:84 'ballot' ( temp 4-component vector of uint)
|
||||
0:84 'parti' ( temp 4-component vector of uint)
|
||||
0:85 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:85 'ballot' ( temp 4-component vector of uint)
|
||||
0:85 'parti' ( temp 4-component vector of uint)
|
||||
0:86 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:86 'f4' ( in 4-component vector of float)
|
||||
0:86 'parti' ( temp 4-component vector of uint)
|
||||
0:87 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:87 'f4' ( in 4-component vector of float)
|
||||
0:87 'parti' ( temp 4-component vector of uint)
|
||||
0:88 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:88 'f4' ( in 4-component vector of float)
|
||||
0:88 'parti' ( temp 4-component vector of uint)
|
||||
0:89 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:89 'f4' ( in 4-component vector of float)
|
||||
0:89 'parti' ( temp 4-component vector of uint)
|
||||
0:90 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:90 'ballot' ( temp 4-component vector of uint)
|
||||
0:90 'parti' ( temp 4-component vector of uint)
|
||||
0:91 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:91 'ballot' ( temp 4-component vector of uint)
|
||||
0:91 'parti' ( temp 4-component vector of uint)
|
||||
0:92 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:92 'ballot' ( temp 4-component vector of uint)
|
||||
0:92 'parti' ( temp 4-component vector of uint)
|
||||
0:93 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:93 'f4' ( in 4-component vector of float)
|
||||
0:93 'parti' ( temp 4-component vector of uint)
|
||||
0:94 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:94 'f4' ( in 4-component vector of float)
|
||||
0:94 'parti' ( temp 4-component vector of uint)
|
||||
0:95 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:95 'f4' ( in 4-component vector of float)
|
||||
0:95 'parti' ( temp 4-component vector of uint)
|
||||
0:96 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:96 'f4' ( in 4-component vector of float)
|
||||
0:96 'parti' ( temp 4-component vector of uint)
|
||||
0:97 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:97 'ballot' ( temp 4-component vector of uint)
|
||||
0:97 'parti' ( temp 4-component vector of uint)
|
||||
0:98 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:98 'ballot' ( temp 4-component vector of uint)
|
||||
0:98 'parti' ( temp 4-component vector of uint)
|
||||
0:99 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:99 'ballot' ( temp 4-component vector of uint)
|
||||
0:99 'parti' ( temp 4-component vector of uint)
|
||||
0:101 Branch: Return with expression
|
||||
0:101 'result' ( temp 4-component vector of float)
|
||||
0:109 Function Definition: main( ( global void)
|
||||
0:109 Function Parameters:
|
||||
0:111 Sequence
|
||||
0:111 Sequence
|
||||
0:111 move second child to first child ( temp 3-component vector of uint)
|
||||
0:111 'id' ( temp 3-component vector of uint)
|
||||
0:111 'gl_LaunchIDNV' ( in 3-component vector of uint LaunchIdNV)
|
||||
0:112 Sequence
|
||||
0:112 move second child to first child ( temp 3-component vector of uint)
|
||||
0:112 'size' ( temp 3-component vector of uint)
|
||||
0:112 'gl_LaunchSizeNV' ( in 3-component vector of uint LaunchSizeNV)
|
||||
0:113 move second child to first child ( temp uint)
|
||||
0:113 data1: direct index for structure ( callableDataInNV uint)
|
||||
0:113 'anon@0' (layout( location=1) callableDataInNV block{ callableDataInNV uint data1})
|
||||
0:113 Constant:
|
||||
0:113 0 (const uint)
|
||||
0:113 Constant:
|
||||
0:113 256 (const uint)
|
||||
0:114 executeCallableNV ( global void)
|
||||
0:114 Constant:
|
||||
0:114 2 (const uint)
|
||||
0:114 Constant:
|
||||
0:114 1 (const int)
|
||||
0:119 Function Definition: basic_works( ( global void)
|
||||
0:119 Function Parameters:
|
||||
0:121 Sequence
|
||||
0:121 'gl_SubgroupSize' ( temp float)
|
||||
0:122 'gl_SubgroupInvocationID' ( temp float)
|
||||
0:123 subgroupBarrier ( global void)
|
||||
0:124 subgroupMemoryBarrier ( global void)
|
||||
0:125 subgroupMemoryBarrierBuffer ( global void)
|
||||
0:126 subgroupMemoryBarrierImage ( global void)
|
||||
0:127 subgroupElect ( global bool)
|
||||
0:131 Function Definition: ballot_works(vf4; ( global void)
|
||||
0:131 Function Parameters:
|
||||
0:131 'f4' ( in 4-component vector of float)
|
||||
0:132 Sequence
|
||||
0:132 'gl_SubgroupEqMask' ( temp float)
|
||||
0:133 'gl_SubgroupGeMask' ( temp float)
|
||||
0:134 'gl_SubgroupGtMask' ( temp float)
|
||||
0:135 'gl_SubgroupLeMask' ( temp float)
|
||||
0:136 'gl_SubgroupLtMask' ( temp float)
|
||||
0:137 subgroupBroadcast ( global 4-component vector of float)
|
||||
0:137 'f4' ( in 4-component vector of float)
|
||||
0:137 Constant:
|
||||
0:137 0 (const uint)
|
||||
0:138 subgroupBroadcastFirst ( global 4-component vector of float)
|
||||
0:138 'f4' ( in 4-component vector of float)
|
||||
0:139 Sequence
|
||||
0:139 move second child to first child ( temp 4-component vector of uint)
|
||||
0:139 'ballot' ( temp 4-component vector of uint)
|
||||
0:139 subgroupBallot ( global 4-component vector of uint)
|
||||
0:139 Constant:
|
||||
0:139 false (const bool)
|
||||
0:140 subgroupInverseBallot ( global bool)
|
||||
0:140 Constant:
|
||||
0:140 1 (const uint)
|
||||
0:140 1 (const uint)
|
||||
0:140 1 (const uint)
|
||||
0:140 1 (const uint)
|
||||
0:141 subgroupBallotBitExtract ( global bool)
|
||||
0:141 'ballot' ( temp 4-component vector of uint)
|
||||
0:141 Constant:
|
||||
0:141 0 (const uint)
|
||||
0:142 subgroupBallotBitCount ( global uint)
|
||||
0:142 'ballot' ( temp 4-component vector of uint)
|
||||
0:143 subgroupBallotInclusiveBitCount ( global uint)
|
||||
0:143 'ballot' ( temp 4-component vector of uint)
|
||||
0:144 subgroupBallotExclusiveBitCount ( global uint)
|
||||
0:144 'ballot' ( temp 4-component vector of uint)
|
||||
0:145 subgroupBallotFindLSB ( global uint)
|
||||
0:145 'ballot' ( temp 4-component vector of uint)
|
||||
0:146 subgroupBallotFindMSB ( global uint)
|
||||
0:146 'ballot' ( temp 4-component vector of uint)
|
||||
0:150 Function Definition: vote_works(vf4; ( global void)
|
||||
0:150 Function Parameters:
|
||||
0:150 'f4' ( in 4-component vector of float)
|
||||
0:152 Sequence
|
||||
0:152 subgroupAll ( global bool)
|
||||
0:152 Constant:
|
||||
0:152 true (const bool)
|
||||
0:153 subgroupAny ( global bool)
|
||||
0:153 Constant:
|
||||
0:153 false (const bool)
|
||||
0:154 subgroupAllEqual ( global bool)
|
||||
0:154 'f4' ( in 4-component vector of float)
|
||||
0:159 Function Definition: shuffle_works(vf4; ( global void)
|
||||
0:159 Function Parameters:
|
||||
0:159 'f4' ( in 4-component vector of float)
|
||||
0:161 Sequence
|
||||
0:161 subgroupShuffle ( global 4-component vector of float)
|
||||
0:161 'f4' ( in 4-component vector of float)
|
||||
0:161 Constant:
|
||||
0:161 0 (const uint)
|
||||
0:162 subgroupShuffleXor ( global 4-component vector of float)
|
||||
0:162 'f4' ( in 4-component vector of float)
|
||||
0:162 Constant:
|
||||
0:162 1 (const uint)
|
||||
0:163 subgroupShuffleUp ( global 4-component vector of float)
|
||||
0:163 'f4' ( in 4-component vector of float)
|
||||
0:163 Constant:
|
||||
0:163 1 (const uint)
|
||||
0:164 subgroupShuffleDown ( global 4-component vector of float)
|
||||
0:164 'f4' ( in 4-component vector of float)
|
||||
0:164 Constant:
|
||||
0:164 1 (const uint)
|
||||
0:168 Function Definition: arith_works(vf4; ( global void)
|
||||
0:168 Function Parameters:
|
||||
0:168 'f4' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:171 subgroupAdd ( global 4-component vector of float)
|
||||
0:171 'f4' ( in 4-component vector of float)
|
||||
0:172 subgroupMul ( global 4-component vector of float)
|
||||
0:172 'f4' ( in 4-component vector of float)
|
||||
0:173 subgroupMin ( global 4-component vector of float)
|
||||
0:173 'f4' ( in 4-component vector of float)
|
||||
0:174 subgroupMax ( global 4-component vector of float)
|
||||
0:174 'f4' ( in 4-component vector of float)
|
||||
0:175 subgroupAnd ( global 4-component vector of uint)
|
||||
0:175 'ballot' ( temp 4-component vector of uint)
|
||||
0:176 subgroupOr ( global 4-component vector of uint)
|
||||
0:176 'ballot' ( temp 4-component vector of uint)
|
||||
0:177 subgroupXor ( global 4-component vector of uint)
|
||||
0:177 'ballot' ( temp 4-component vector of uint)
|
||||
0:178 subgroupInclusiveAdd ( global 4-component vector of float)
|
||||
0:178 'f4' ( in 4-component vector of float)
|
||||
0:179 subgroupInclusiveMul ( global 4-component vector of float)
|
||||
0:179 'f4' ( in 4-component vector of float)
|
||||
0:180 subgroupInclusiveMin ( global 4-component vector of float)
|
||||
0:180 'f4' ( in 4-component vector of float)
|
||||
0:181 subgroupInclusiveMax ( global 4-component vector of float)
|
||||
0:181 'f4' ( in 4-component vector of float)
|
||||
0:182 subgroupInclusiveAnd ( global 4-component vector of uint)
|
||||
0:182 'ballot' ( temp 4-component vector of uint)
|
||||
0:183 subgroupInclusiveOr ( global 4-component vector of uint)
|
||||
0:183 'ballot' ( temp 4-component vector of uint)
|
||||
0:184 subgroupInclusiveXor ( global 4-component vector of uint)
|
||||
0:184 'ballot' ( temp 4-component vector of uint)
|
||||
0:185 subgroupExclusiveAdd ( global 4-component vector of float)
|
||||
0:185 'f4' ( in 4-component vector of float)
|
||||
0:186 subgroupExclusiveMul ( global 4-component vector of float)
|
||||
0:186 'f4' ( in 4-component vector of float)
|
||||
0:187 subgroupExclusiveMin ( global 4-component vector of float)
|
||||
0:187 'f4' ( in 4-component vector of float)
|
||||
0:188 subgroupExclusiveMax ( global 4-component vector of float)
|
||||
0:188 'f4' ( in 4-component vector of float)
|
||||
0:189 subgroupExclusiveAnd ( global 4-component vector of uint)
|
||||
0:189 'ballot' ( temp 4-component vector of uint)
|
||||
0:190 subgroupExclusiveOr ( global 4-component vector of uint)
|
||||
0:190 'ballot' ( temp 4-component vector of uint)
|
||||
0:191 subgroupExclusiveXor ( global 4-component vector of uint)
|
||||
0:191 'ballot' ( temp 4-component vector of uint)
|
||||
0:195 Function Definition: clustered_works(vf4; ( global void)
|
||||
0:195 Function Parameters:
|
||||
0:195 'f4' ( in 4-component vector of float)
|
||||
0:197 Sequence
|
||||
0:197 Sequence
|
||||
0:197 move second child to first child ( temp 4-component vector of uint)
|
||||
0:197 'ballot' ( temp 4-component vector of uint)
|
||||
0:197 Constant:
|
||||
0:197 85 (const uint)
|
||||
0:197 0 (const uint)
|
||||
0:197 0 (const uint)
|
||||
0:197 0 (const uint)
|
||||
0:198 subgroupClusteredAdd ( global 4-component vector of float)
|
||||
0:198 'f4' ( in 4-component vector of float)
|
||||
0:198 Constant:
|
||||
0:198 2 (const uint)
|
||||
0:199 subgroupClusteredMul ( global 4-component vector of float)
|
||||
0:199 'f4' ( in 4-component vector of float)
|
||||
0:199 Constant:
|
||||
0:199 2 (const uint)
|
||||
0:200 subgroupClusteredMin ( global 4-component vector of float)
|
||||
0:200 'f4' ( in 4-component vector of float)
|
||||
0:200 Constant:
|
||||
0:200 2 (const uint)
|
||||
0:201 subgroupClusteredMax ( global 4-component vector of float)
|
||||
0:201 'f4' ( in 4-component vector of float)
|
||||
0:201 Constant:
|
||||
0:201 2 (const uint)
|
||||
0:202 subgroupClusteredAnd ( global 4-component vector of uint)
|
||||
0:202 'ballot' ( temp 4-component vector of uint)
|
||||
0:202 Constant:
|
||||
0:202 2 (const uint)
|
||||
0:203 subgroupClusteredOr ( global 4-component vector of uint)
|
||||
0:203 'ballot' ( temp 4-component vector of uint)
|
||||
0:203 Constant:
|
||||
0:203 2 (const uint)
|
||||
0:204 subgroupClusteredXor ( global 4-component vector of uint)
|
||||
0:204 'ballot' ( temp 4-component vector of uint)
|
||||
0:204 Constant:
|
||||
0:204 2 (const uint)
|
||||
0:208 Function Definition: quad_works(vf4; ( global void)
|
||||
0:208 Function Parameters:
|
||||
0:208 'f4' ( in 4-component vector of float)
|
||||
0:210 Sequence
|
||||
0:210 subgroupQuadBroadcast ( global 4-component vector of float)
|
||||
0:210 'f4' ( in 4-component vector of float)
|
||||
0:210 Constant:
|
||||
0:210 0 (const uint)
|
||||
0:211 subgroupQuadSwapHorizontal ( global 4-component vector of float)
|
||||
0:211 'f4' ( in 4-component vector of float)
|
||||
0:212 subgroupQuadSwapVertical ( global 4-component vector of float)
|
||||
0:212 'f4' ( in 4-component vector of float)
|
||||
0:213 subgroupQuadSwapDiagonal ( global 4-component vector of float)
|
||||
0:213 'f4' ( in 4-component vector of float)
|
||||
0:217 Function Definition: partitioned_works(vf4; ( global void)
|
||||
0:217 Function Parameters:
|
||||
0:217 'f4' ( in 4-component vector of float)
|
||||
0:219 Sequence
|
||||
0:219 Sequence
|
||||
0:219 move second child to first child ( temp 4-component vector of uint)
|
||||
0:219 'parti' ( temp 4-component vector of uint)
|
||||
0:219 subgroupPartitionNV ( global 4-component vector of uint)
|
||||
0:219 'f4' ( in 4-component vector of float)
|
||||
0:220 Sequence
|
||||
0:220 move second child to first child ( temp 4-component vector of uint)
|
||||
0:220 'ballot' ( temp 4-component vector of uint)
|
||||
0:220 Constant:
|
||||
0:220 85 (const uint)
|
||||
0:220 0 (const uint)
|
||||
0:220 0 (const uint)
|
||||
0:220 0 (const uint)
|
||||
0:221 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:221 'f4' ( in 4-component vector of float)
|
||||
0:221 'parti' ( temp 4-component vector of uint)
|
||||
0:222 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:222 'f4' ( in 4-component vector of float)
|
||||
0:222 'parti' ( temp 4-component vector of uint)
|
||||
0:223 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:223 'f4' ( in 4-component vector of float)
|
||||
0:223 'parti' ( temp 4-component vector of uint)
|
||||
0:224 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:224 'f4' ( in 4-component vector of float)
|
||||
0:224 'parti' ( temp 4-component vector of uint)
|
||||
0:225 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:225 'ballot' ( temp 4-component vector of uint)
|
||||
0:225 'parti' ( temp 4-component vector of uint)
|
||||
0:226 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:226 'ballot' ( temp 4-component vector of uint)
|
||||
0:226 'parti' ( temp 4-component vector of uint)
|
||||
0:227 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:227 'ballot' ( temp 4-component vector of uint)
|
||||
0:227 'parti' ( temp 4-component vector of uint)
|
||||
0:228 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:228 'f4' ( in 4-component vector of float)
|
||||
0:228 'parti' ( temp 4-component vector of uint)
|
||||
0:229 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:229 'f4' ( in 4-component vector of float)
|
||||
0:229 'parti' ( temp 4-component vector of uint)
|
||||
0:230 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:230 'f4' ( in 4-component vector of float)
|
||||
0:230 'parti' ( temp 4-component vector of uint)
|
||||
0:231 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:231 'f4' ( in 4-component vector of float)
|
||||
0:231 'parti' ( temp 4-component vector of uint)
|
||||
0:232 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:232 'ballot' ( temp 4-component vector of uint)
|
||||
0:232 'parti' ( temp 4-component vector of uint)
|
||||
0:233 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:233 'ballot' ( temp 4-component vector of uint)
|
||||
0:233 'parti' ( temp 4-component vector of uint)
|
||||
0:234 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:234 'ballot' ( temp 4-component vector of uint)
|
||||
0:234 'parti' ( temp 4-component vector of uint)
|
||||
0:235 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:235 'f4' ( in 4-component vector of float)
|
||||
0:235 'parti' ( temp 4-component vector of uint)
|
||||
0:236 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:236 'f4' ( in 4-component vector of float)
|
||||
0:236 'parti' ( temp 4-component vector of uint)
|
||||
0:237 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:237 'f4' ( in 4-component vector of float)
|
||||
0:237 'parti' ( temp 4-component vector of uint)
|
||||
0:238 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:238 'f4' ( in 4-component vector of float)
|
||||
0:238 'parti' ( temp 4-component vector of uint)
|
||||
0:239 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:239 'ballot' ( temp 4-component vector of uint)
|
||||
0:239 'parti' ( temp 4-component vector of uint)
|
||||
0:240 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:240 'ballot' ( temp 4-component vector of uint)
|
||||
0:240 'parti' ( temp 4-component vector of uint)
|
||||
0:241 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:241 'ballot' ( temp 4-component vector of uint)
|
||||
0:241 'parti' ( temp 4-component vector of uint)
|
||||
0:? Linker Objects
|
||||
0:? 'data0' (layout( location=0) callableDataNV 4-component vector of float)
|
||||
0:? 'anon@0' (layout( location=1) callableDataInNV block{ callableDataInNV uint data1})
|
||||
|
||||
|
||||
Linked callable stage:
|
||||
|
||||
|
||||
Shader version: 460
|
||||
Requested GL_KHR_shader_subgroup_arithmetic
|
||||
Requested GL_KHR_shader_subgroup_ballot
|
||||
Requested GL_KHR_shader_subgroup_basic
|
||||
Requested GL_KHR_shader_subgroup_clustered
|
||||
Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:109 Function Definition: main( ( global void)
|
||||
0:109 Function Parameters:
|
||||
0:111 Sequence
|
||||
0:111 Sequence
|
||||
0:111 move second child to first child ( temp 3-component vector of uint)
|
||||
0:111 'id' ( temp 3-component vector of uint)
|
||||
0:111 'gl_LaunchIDNV' ( in 3-component vector of uint LaunchIdNV)
|
||||
0:112 Sequence
|
||||
0:112 move second child to first child ( temp 3-component vector of uint)
|
||||
0:112 'size' ( temp 3-component vector of uint)
|
||||
0:112 'gl_LaunchSizeNV' ( in 3-component vector of uint LaunchSizeNV)
|
||||
0:113 move second child to first child ( temp uint)
|
||||
0:113 data1: direct index for structure ( callableDataInNV uint)
|
||||
0:113 'anon@0' (layout( location=1) callableDataInNV block{ callableDataInNV uint data1})
|
||||
0:113 Constant:
|
||||
0:113 0 (const uint)
|
||||
0:113 Constant:
|
||||
0:113 256 (const uint)
|
||||
0:114 executeCallableNV ( global void)
|
||||
0:114 Constant:
|
||||
0:114 2 (const uint)
|
||||
0:114 Constant:
|
||||
0:114 1 (const int)
|
||||
0:? Linker Objects
|
||||
0:? 'data0' (layout( location=0) callableDataNV 4-component vector of float)
|
||||
0:? 'anon@0' (layout( location=1) callableDataInNV block{ callableDataInNV uint data1})
|
||||
|
846
Test/baseResults/glsl.460.subgroup.rchit.out
Normal file
846
Test/baseResults/glsl.460.subgroup.rchit.out
Normal file
@ -0,0 +1,846 @@
|
||||
glsl.460.subgroup.rchit
|
||||
ERROR: 0:7: 'gl_SubgroupSize' : undeclared identifier
|
||||
ERROR: 0:8: 'gl_SubgroupInvocationID' : undeclared identifier
|
||||
ERROR: 0:9: 'subgroupBarrier' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:10: 'subgroupMemoryBarrier' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:11: 'subgroupMemoryBarrierBuffer' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:12: 'subgroupMemoryBarrierImage' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:13: 'subgroupElect' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:14: 'gl_NumSubgroups' : undeclared identifier
|
||||
ERROR: 0:15: 'gl_SubgroupID' : undeclared identifier
|
||||
ERROR: 0:16: 'subgroupMemoryBarrierShared' : no matching overloaded function found
|
||||
ERROR: 0:18: 'subgroupAll' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:19: 'subgroupAny' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:20: 'subgroupAllEqual' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:22: 'gl_SubgroupEqMask' : undeclared identifier
|
||||
ERROR: 0:23: 'gl_SubgroupGeMask' : undeclared identifier
|
||||
ERROR: 0:24: 'gl_SubgroupGtMask' : undeclared identifier
|
||||
ERROR: 0:25: 'gl_SubgroupLeMask' : undeclared identifier
|
||||
ERROR: 0:26: 'gl_SubgroupLtMask' : undeclared identifier
|
||||
ERROR: 0:27: 'subgroupBroadcast' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:28: 'subgroupBroadcastFirst' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:29: 'subgroupBallot' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:30: 'subgroupInverseBallot' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:31: 'subgroupBallotBitExtract' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:32: 'subgroupBallotBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:33: 'subgroupBallotInclusiveBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:34: 'subgroupBallotExclusiveBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:35: 'subgroupBallotFindLSB' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:36: 'subgroupBallotFindMSB' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:38: 'subgroupShuffle' : required extension not requested: GL_KHR_shader_subgroup_shuffle
|
||||
ERROR: 0:39: 'subgroupShuffleXor' : required extension not requested: GL_KHR_shader_subgroup_shuffle
|
||||
ERROR: 0:40: 'subgroupShuffleUp' : required extension not requested: GL_KHR_shader_subgroup_shuffle_relative
|
||||
ERROR: 0:41: 'subgroupShuffleDown' : required extension not requested: GL_KHR_shader_subgroup_shuffle_relative
|
||||
ERROR: 0:43: 'subgroupAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:44: 'subgroupMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:45: 'subgroupMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:46: 'subgroupMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:47: 'subgroupAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:48: 'subgroupOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:49: 'subgroupXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:50: 'subgroupInclusiveAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:51: 'subgroupInclusiveMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:52: 'subgroupInclusiveMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:53: 'subgroupInclusiveMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:54: 'subgroupInclusiveAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:55: 'subgroupInclusiveOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:56: 'subgroupInclusiveXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:57: 'subgroupExclusiveAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:58: 'subgroupExclusiveMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:59: 'subgroupExclusiveMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:60: 'subgroupExclusiveMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:61: 'subgroupExclusiveAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:62: 'subgroupExclusiveOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:63: 'subgroupExclusiveXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:65: 'subgroupClusteredAdd' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:66: 'subgroupClusteredMul' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:67: 'subgroupClusteredMin' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:68: 'subgroupClusteredMax' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:69: 'subgroupClusteredAnd' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:70: 'subgroupClusteredOr' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:71: 'subgroupClusteredXor' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:73: 'subgroupQuadBroadcast' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:74: 'subgroupQuadSwapHorizontal' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:75: 'subgroupQuadSwapVertical' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:76: 'subgroupQuadSwapDiagonal' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:78: 'subgroupPartitionNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:79: 'subgroupPartitionedAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:80: 'subgroupPartitionedMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:81: 'subgroupPartitionedMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:82: 'subgroupPartitionedMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:83: 'subgroupPartitionedAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:84: 'subgroupPartitionedOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:85: 'subgroupPartitionedXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:86: 'subgroupPartitionedInclusiveAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:87: 'subgroupPartitionedInclusiveMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:88: 'subgroupPartitionedInclusiveMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:89: 'subgroupPartitionedInclusiveMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:90: 'subgroupPartitionedInclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:91: 'subgroupPartitionedInclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:92: 'subgroupPartitionedInclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:93: 'subgroupPartitionedExclusiveAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:94: 'subgroupPartitionedExclusiveMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:95: 'subgroupPartitionedExclusiveMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:96: 'subgroupPartitionedExclusiveMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:99: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:131: 'gl_SubgroupSize' : undeclared identifier
|
||||
ERROR: 0:132: 'gl_SubgroupInvocationID' : undeclared identifier
|
||||
ERROR: 0:142: 'gl_SubgroupEqMask' : undeclared identifier
|
||||
ERROR: 0:143: 'gl_SubgroupGeMask' : undeclared identifier
|
||||
ERROR: 0:144: 'gl_SubgroupGtMask' : undeclared identifier
|
||||
ERROR: 0:145: 'gl_SubgroupLeMask' : undeclared identifier
|
||||
ERROR: 0:146: 'gl_SubgroupLtMask' : undeclared identifier
|
||||
ERROR: 93 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 460
|
||||
Requested GL_KHR_shader_subgroup_arithmetic
|
||||
Requested GL_KHR_shader_subgroup_ballot
|
||||
Requested GL_KHR_shader_subgroup_basic
|
||||
Requested GL_KHR_shader_subgroup_clustered
|
||||
Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:4 Function Definition: undeclared_errors(vf4; ( global 4-component vector of float)
|
||||
0:4 Function Parameters:
|
||||
0:4 'f4' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:7 'gl_SubgroupSize' ( temp float)
|
||||
0:8 'gl_SubgroupInvocationID' ( temp float)
|
||||
0:9 subgroupBarrier ( global void)
|
||||
0:10 subgroupMemoryBarrier ( global void)
|
||||
0:11 subgroupMemoryBarrierBuffer ( global void)
|
||||
0:12 subgroupMemoryBarrierImage ( global void)
|
||||
0:13 subgroupElect ( global bool)
|
||||
0:14 'gl_NumSubgroups' ( temp float)
|
||||
0:15 'gl_SubgroupID' ( temp float)
|
||||
0:16 Constant:
|
||||
0:16 0.000000
|
||||
0:18 subgroupAll ( global bool)
|
||||
0:18 Constant:
|
||||
0:18 true (const bool)
|
||||
0:19 subgroupAny ( global bool)
|
||||
0:19 Constant:
|
||||
0:19 false (const bool)
|
||||
0:20 subgroupAllEqual ( global bool)
|
||||
0:20 'f4' ( in 4-component vector of float)
|
||||
0:22 'gl_SubgroupEqMask' ( temp float)
|
||||
0:23 'gl_SubgroupGeMask' ( temp float)
|
||||
0:24 'gl_SubgroupGtMask' ( temp float)
|
||||
0:25 'gl_SubgroupLeMask' ( temp float)
|
||||
0:26 'gl_SubgroupLtMask' ( temp float)
|
||||
0:27 subgroupBroadcast ( global 4-component vector of float)
|
||||
0:27 'f4' ( in 4-component vector of float)
|
||||
0:27 Constant:
|
||||
0:27 0 (const uint)
|
||||
0:28 subgroupBroadcastFirst ( global 4-component vector of float)
|
||||
0:28 'f4' ( in 4-component vector of float)
|
||||
0:29 Sequence
|
||||
0:29 move second child to first child ( temp 4-component vector of uint)
|
||||
0:29 'ballot' ( temp 4-component vector of uint)
|
||||
0:29 subgroupBallot ( global 4-component vector of uint)
|
||||
0:29 Constant:
|
||||
0:29 false (const bool)
|
||||
0:30 subgroupInverseBallot ( global bool)
|
||||
0:30 Constant:
|
||||
0:30 1 (const uint)
|
||||
0:30 1 (const uint)
|
||||
0:30 1 (const uint)
|
||||
0:30 1 (const uint)
|
||||
0:31 subgroupBallotBitExtract ( global bool)
|
||||
0:31 'ballot' ( temp 4-component vector of uint)
|
||||
0:31 Constant:
|
||||
0:31 0 (const uint)
|
||||
0:32 subgroupBallotBitCount ( global uint)
|
||||
0:32 'ballot' ( temp 4-component vector of uint)
|
||||
0:33 subgroupBallotInclusiveBitCount ( global uint)
|
||||
0:33 'ballot' ( temp 4-component vector of uint)
|
||||
0:34 subgroupBallotExclusiveBitCount ( global uint)
|
||||
0:34 'ballot' ( temp 4-component vector of uint)
|
||||
0:35 subgroupBallotFindLSB ( global uint)
|
||||
0:35 'ballot' ( temp 4-component vector of uint)
|
||||
0:36 subgroupBallotFindMSB ( global uint)
|
||||
0:36 'ballot' ( temp 4-component vector of uint)
|
||||
0:38 subgroupShuffle ( global 4-component vector of float)
|
||||
0:38 'f4' ( in 4-component vector of float)
|
||||
0:38 Constant:
|
||||
0:38 0 (const uint)
|
||||
0:39 subgroupShuffleXor ( global 4-component vector of float)
|
||||
0:39 'f4' ( in 4-component vector of float)
|
||||
0:39 Constant:
|
||||
0:39 1 (const uint)
|
||||
0:40 subgroupShuffleUp ( global 4-component vector of float)
|
||||
0:40 'f4' ( in 4-component vector of float)
|
||||
0:40 Constant:
|
||||
0:40 1 (const uint)
|
||||
0:41 subgroupShuffleDown ( global 4-component vector of float)
|
||||
0:41 'f4' ( in 4-component vector of float)
|
||||
0:41 Constant:
|
||||
0:41 1 (const uint)
|
||||
0:43 move second child to first child ( temp 4-component vector of float)
|
||||
0:43 'result' ( temp 4-component vector of float)
|
||||
0:43 subgroupAdd ( global 4-component vector of float)
|
||||
0:43 'f4' ( in 4-component vector of float)
|
||||
0:44 subgroupMul ( global 4-component vector of float)
|
||||
0:44 'f4' ( in 4-component vector of float)
|
||||
0:45 subgroupMin ( global 4-component vector of float)
|
||||
0:45 'f4' ( in 4-component vector of float)
|
||||
0:46 subgroupMax ( global 4-component vector of float)
|
||||
0:46 'f4' ( in 4-component vector of float)
|
||||
0:47 subgroupAnd ( global 4-component vector of uint)
|
||||
0:47 'ballot' ( temp 4-component vector of uint)
|
||||
0:48 subgroupOr ( global 4-component vector of uint)
|
||||
0:48 'ballot' ( temp 4-component vector of uint)
|
||||
0:49 subgroupXor ( global 4-component vector of uint)
|
||||
0:49 'ballot' ( temp 4-component vector of uint)
|
||||
0:50 subgroupInclusiveAdd ( global 4-component vector of float)
|
||||
0:50 'f4' ( in 4-component vector of float)
|
||||
0:51 subgroupInclusiveMul ( global 4-component vector of float)
|
||||
0:51 'f4' ( in 4-component vector of float)
|
||||
0:52 subgroupInclusiveMin ( global 4-component vector of float)
|
||||
0:52 'f4' ( in 4-component vector of float)
|
||||
0:53 subgroupInclusiveMax ( global 4-component vector of float)
|
||||
0:53 'f4' ( in 4-component vector of float)
|
||||
0:54 subgroupInclusiveAnd ( global 4-component vector of uint)
|
||||
0:54 'ballot' ( temp 4-component vector of uint)
|
||||
0:55 subgroupInclusiveOr ( global 4-component vector of uint)
|
||||
0:55 'ballot' ( temp 4-component vector of uint)
|
||||
0:56 subgroupInclusiveXor ( global 4-component vector of uint)
|
||||
0:56 'ballot' ( temp 4-component vector of uint)
|
||||
0:57 subgroupExclusiveAdd ( global 4-component vector of float)
|
||||
0:57 'f4' ( in 4-component vector of float)
|
||||
0:58 subgroupExclusiveMul ( global 4-component vector of float)
|
||||
0:58 'f4' ( in 4-component vector of float)
|
||||
0:59 subgroupExclusiveMin ( global 4-component vector of float)
|
||||
0:59 'f4' ( in 4-component vector of float)
|
||||
0:60 subgroupExclusiveMax ( global 4-component vector of float)
|
||||
0:60 'f4' ( in 4-component vector of float)
|
||||
0:61 subgroupExclusiveAnd ( global 4-component vector of uint)
|
||||
0:61 'ballot' ( temp 4-component vector of uint)
|
||||
0:62 subgroupExclusiveOr ( global 4-component vector of uint)
|
||||
0:62 'ballot' ( temp 4-component vector of uint)
|
||||
0:63 subgroupExclusiveXor ( global 4-component vector of uint)
|
||||
0:63 'ballot' ( temp 4-component vector of uint)
|
||||
0:65 subgroupClusteredAdd ( global 4-component vector of float)
|
||||
0:65 'f4' ( in 4-component vector of float)
|
||||
0:65 Constant:
|
||||
0:65 2 (const uint)
|
||||
0:66 subgroupClusteredMul ( global 4-component vector of float)
|
||||
0:66 'f4' ( in 4-component vector of float)
|
||||
0:66 Constant:
|
||||
0:66 2 (const uint)
|
||||
0:67 subgroupClusteredMin ( global 4-component vector of float)
|
||||
0:67 'f4' ( in 4-component vector of float)
|
||||
0:67 Constant:
|
||||
0:67 2 (const uint)
|
||||
0:68 subgroupClusteredMax ( global 4-component vector of float)
|
||||
0:68 'f4' ( in 4-component vector of float)
|
||||
0:68 Constant:
|
||||
0:68 2 (const uint)
|
||||
0:69 subgroupClusteredAnd ( global 4-component vector of uint)
|
||||
0:69 'ballot' ( temp 4-component vector of uint)
|
||||
0:69 Constant:
|
||||
0:69 2 (const uint)
|
||||
0:70 subgroupClusteredOr ( global 4-component vector of uint)
|
||||
0:70 'ballot' ( temp 4-component vector of uint)
|
||||
0:70 Constant:
|
||||
0:70 2 (const uint)
|
||||
0:71 subgroupClusteredXor ( global 4-component vector of uint)
|
||||
0:71 'ballot' ( temp 4-component vector of uint)
|
||||
0:71 Constant:
|
||||
0:71 2 (const uint)
|
||||
0:73 subgroupQuadBroadcast ( global 4-component vector of float)
|
||||
0:73 'f4' ( in 4-component vector of float)
|
||||
0:73 Constant:
|
||||
0:73 0 (const uint)
|
||||
0:74 subgroupQuadSwapHorizontal ( global 4-component vector of float)
|
||||
0:74 'f4' ( in 4-component vector of float)
|
||||
0:75 subgroupQuadSwapVertical ( global 4-component vector of float)
|
||||
0:75 'f4' ( in 4-component vector of float)
|
||||
0:76 subgroupQuadSwapDiagonal ( global 4-component vector of float)
|
||||
0:76 'f4' ( in 4-component vector of float)
|
||||
0:78 Sequence
|
||||
0:78 move second child to first child ( temp 4-component vector of uint)
|
||||
0:78 'parti' ( temp 4-component vector of uint)
|
||||
0:78 subgroupPartitionNV ( global 4-component vector of uint)
|
||||
0:78 'f4' ( in 4-component vector of float)
|
||||
0:79 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:79 'f4' ( in 4-component vector of float)
|
||||
0:79 'parti' ( temp 4-component vector of uint)
|
||||
0:80 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:80 'f4' ( in 4-component vector of float)
|
||||
0:80 'parti' ( temp 4-component vector of uint)
|
||||
0:81 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:81 'f4' ( in 4-component vector of float)
|
||||
0:81 'parti' ( temp 4-component vector of uint)
|
||||
0:82 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:82 'f4' ( in 4-component vector of float)
|
||||
0:82 'parti' ( temp 4-component vector of uint)
|
||||
0:83 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:83 'ballot' ( temp 4-component vector of uint)
|
||||
0:83 'parti' ( temp 4-component vector of uint)
|
||||
0:84 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:84 'ballot' ( temp 4-component vector of uint)
|
||||
0:84 'parti' ( temp 4-component vector of uint)
|
||||
0:85 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:85 'ballot' ( temp 4-component vector of uint)
|
||||
0:85 'parti' ( temp 4-component vector of uint)
|
||||
0:86 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:86 'f4' ( in 4-component vector of float)
|
||||
0:86 'parti' ( temp 4-component vector of uint)
|
||||
0:87 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:87 'f4' ( in 4-component vector of float)
|
||||
0:87 'parti' ( temp 4-component vector of uint)
|
||||
0:88 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:88 'f4' ( in 4-component vector of float)
|
||||
0:88 'parti' ( temp 4-component vector of uint)
|
||||
0:89 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:89 'f4' ( in 4-component vector of float)
|
||||
0:89 'parti' ( temp 4-component vector of uint)
|
||||
0:90 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:90 'ballot' ( temp 4-component vector of uint)
|
||||
0:90 'parti' ( temp 4-component vector of uint)
|
||||
0:91 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:91 'ballot' ( temp 4-component vector of uint)
|
||||
0:91 'parti' ( temp 4-component vector of uint)
|
||||
0:92 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:92 'ballot' ( temp 4-component vector of uint)
|
||||
0:92 'parti' ( temp 4-component vector of uint)
|
||||
0:93 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:93 'f4' ( in 4-component vector of float)
|
||||
0:93 'parti' ( temp 4-component vector of uint)
|
||||
0:94 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:94 'f4' ( in 4-component vector of float)
|
||||
0:94 'parti' ( temp 4-component vector of uint)
|
||||
0:95 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:95 'f4' ( in 4-component vector of float)
|
||||
0:95 'parti' ( temp 4-component vector of uint)
|
||||
0:96 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:96 'f4' ( in 4-component vector of float)
|
||||
0:96 'parti' ( temp 4-component vector of uint)
|
||||
0:97 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:97 'ballot' ( temp 4-component vector of uint)
|
||||
0:97 'parti' ( temp 4-component vector of uint)
|
||||
0:98 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:98 'ballot' ( temp 4-component vector of uint)
|
||||
0:98 'parti' ( temp 4-component vector of uint)
|
||||
0:99 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:99 'ballot' ( temp 4-component vector of uint)
|
||||
0:99 'parti' ( temp 4-component vector of uint)
|
||||
0:101 Branch: Return with expression
|
||||
0:101 'result' ( temp 4-component vector of float)
|
||||
0:108 Function Definition: main( ( global void)
|
||||
0:108 Function Parameters:
|
||||
0:110 Sequence
|
||||
0:110 Sequence
|
||||
0:110 move second child to first child ( temp 3-component vector of uint)
|
||||
0:110 'v0' ( temp 3-component vector of uint)
|
||||
0:110 'gl_LaunchIDNV' ( in 3-component vector of uint LaunchIdNV)
|
||||
0:111 Sequence
|
||||
0:111 move second child to first child ( temp 3-component vector of uint)
|
||||
0:111 'v1' ( temp 3-component vector of uint)
|
||||
0:111 'gl_LaunchSizeNV' ( in 3-component vector of uint LaunchSizeNV)
|
||||
0:112 Sequence
|
||||
0:112 move second child to first child ( temp int)
|
||||
0:112 'v2' ( temp int)
|
||||
0:112 'gl_PrimitiveID' ( in int PrimitiveID)
|
||||
0:113 Sequence
|
||||
0:113 move second child to first child ( temp int)
|
||||
0:113 'v3' ( temp int)
|
||||
0:113 'gl_InstanceID' ( in int InstanceId)
|
||||
0:114 Sequence
|
||||
0:114 move second child to first child ( temp int)
|
||||
0:114 'v4' ( temp int)
|
||||
0:114 'gl_InstanceCustomIndexNV' ( in int InstanceCustomIndexNV)
|
||||
0:115 Sequence
|
||||
0:115 move second child to first child ( temp 3-component vector of float)
|
||||
0:115 'v5' ( temp 3-component vector of float)
|
||||
0:115 'gl_WorldRayOriginNV' ( in 3-component vector of float WorldRayOriginNV)
|
||||
0:116 Sequence
|
||||
0:116 move second child to first child ( temp 3-component vector of float)
|
||||
0:116 'v6' ( temp 3-component vector of float)
|
||||
0:116 'gl_WorldRayDirectionNV' ( in 3-component vector of float WorldRayDirectionNV)
|
||||
0:117 Sequence
|
||||
0:117 move second child to first child ( temp 3-component vector of float)
|
||||
0:117 'v7' ( temp 3-component vector of float)
|
||||
0:117 'gl_ObjectRayOriginNV' ( in 3-component vector of float ObjectRayOriginNV)
|
||||
0:118 Sequence
|
||||
0:118 move second child to first child ( temp 3-component vector of float)
|
||||
0:118 'v8' ( temp 3-component vector of float)
|
||||
0:118 'gl_ObjectRayDirectionNV' ( in 3-component vector of float ObjectRayDirectionNV)
|
||||
0:119 Sequence
|
||||
0:119 move second child to first child ( temp float)
|
||||
0:119 'v9' ( temp float)
|
||||
0:119 'gl_RayTminNV' ( in float ObjectRayTminNV)
|
||||
0:120 Sequence
|
||||
0:120 move second child to first child ( temp float)
|
||||
0:120 'v10' ( temp float)
|
||||
0:120 'gl_RayTmaxNV' ( in float ObjectRayTmaxNV)
|
||||
0:121 Sequence
|
||||
0:121 move second child to first child ( temp float)
|
||||
0:121 'v11' ( temp float)
|
||||
0:121 'gl_HitTNV' ( in float HitTNV)
|
||||
0:122 Sequence
|
||||
0:122 move second child to first child ( temp uint)
|
||||
0:122 'v12' ( temp uint)
|
||||
0:122 'gl_HitKindNV' ( in uint HitKindNV)
|
||||
0:123 Sequence
|
||||
0:123 move second child to first child ( temp 4X3 matrix of float)
|
||||
0:123 'v13' ( temp 4X3 matrix of float)
|
||||
0:123 'gl_ObjectToWorldNV' ( in 4X3 matrix of float ObjectToWorldNV)
|
||||
0:124 Sequence
|
||||
0:124 move second child to first child ( temp 4X3 matrix of float)
|
||||
0:124 'v14' ( temp 4X3 matrix of float)
|
||||
0:124 'gl_WorldToObjectNV' ( in 4X3 matrix of float WorldToObjectNV)
|
||||
0:125 traceNV ( global void)
|
||||
0:125 'accNV' (layout( set=0 binding=0) uniform accelerationStructureNV)
|
||||
0:125 Constant:
|
||||
0:125 0 (const uint)
|
||||
0:125 Constant:
|
||||
0:125 1 (const uint)
|
||||
0:125 Constant:
|
||||
0:125 2 (const uint)
|
||||
0:125 Constant:
|
||||
0:125 3 (const uint)
|
||||
0:125 Constant:
|
||||
0:125 0 (const uint)
|
||||
0:125 Constant:
|
||||
0:125 0.500000
|
||||
0:125 0.500000
|
||||
0:125 0.500000
|
||||
0:125 Constant:
|
||||
0:125 0.500000
|
||||
0:125 Constant:
|
||||
0:125 1.000000
|
||||
0:125 1.000000
|
||||
0:125 1.000000
|
||||
0:125 Constant:
|
||||
0:125 0.750000
|
||||
0:125 Constant:
|
||||
0:125 1 (const int)
|
||||
0:129 Function Definition: basic_works( ( global void)
|
||||
0:129 Function Parameters:
|
||||
0:131 Sequence
|
||||
0:131 'gl_SubgroupSize' ( temp float)
|
||||
0:132 'gl_SubgroupInvocationID' ( temp float)
|
||||
0:133 subgroupBarrier ( global void)
|
||||
0:134 subgroupMemoryBarrier ( global void)
|
||||
0:135 subgroupMemoryBarrierBuffer ( global void)
|
||||
0:136 subgroupMemoryBarrierImage ( global void)
|
||||
0:137 subgroupElect ( global bool)
|
||||
0:141 Function Definition: ballot_works(vf4; ( global void)
|
||||
0:141 Function Parameters:
|
||||
0:141 'f4' ( in 4-component vector of float)
|
||||
0:142 Sequence
|
||||
0:142 'gl_SubgroupEqMask' ( temp float)
|
||||
0:143 'gl_SubgroupGeMask' ( temp float)
|
||||
0:144 'gl_SubgroupGtMask' ( temp float)
|
||||
0:145 'gl_SubgroupLeMask' ( temp float)
|
||||
0:146 'gl_SubgroupLtMask' ( temp float)
|
||||
0:147 subgroupBroadcast ( global 4-component vector of float)
|
||||
0:147 'f4' ( in 4-component vector of float)
|
||||
0:147 Constant:
|
||||
0:147 0 (const uint)
|
||||
0:148 subgroupBroadcastFirst ( global 4-component vector of float)
|
||||
0:148 'f4' ( in 4-component vector of float)
|
||||
0:149 Sequence
|
||||
0:149 move second child to first child ( temp 4-component vector of uint)
|
||||
0:149 'ballot' ( temp 4-component vector of uint)
|
||||
0:149 subgroupBallot ( global 4-component vector of uint)
|
||||
0:149 Constant:
|
||||
0:149 false (const bool)
|
||||
0:150 subgroupInverseBallot ( global bool)
|
||||
0:150 Constant:
|
||||
0:150 1 (const uint)
|
||||
0:150 1 (const uint)
|
||||
0:150 1 (const uint)
|
||||
0:150 1 (const uint)
|
||||
0:151 subgroupBallotBitExtract ( global bool)
|
||||
0:151 'ballot' ( temp 4-component vector of uint)
|
||||
0:151 Constant:
|
||||
0:151 0 (const uint)
|
||||
0:152 subgroupBallotBitCount ( global uint)
|
||||
0:152 'ballot' ( temp 4-component vector of uint)
|
||||
0:153 subgroupBallotInclusiveBitCount ( global uint)
|
||||
0:153 'ballot' ( temp 4-component vector of uint)
|
||||
0:154 subgroupBallotExclusiveBitCount ( global uint)
|
||||
0:154 'ballot' ( temp 4-component vector of uint)
|
||||
0:155 subgroupBallotFindLSB ( global uint)
|
||||
0:155 'ballot' ( temp 4-component vector of uint)
|
||||
0:156 subgroupBallotFindMSB ( global uint)
|
||||
0:156 'ballot' ( temp 4-component vector of uint)
|
||||
0:160 Function Definition: vote_works(vf4; ( global void)
|
||||
0:160 Function Parameters:
|
||||
0:160 'f4' ( in 4-component vector of float)
|
||||
0:162 Sequence
|
||||
0:162 subgroupAll ( global bool)
|
||||
0:162 Constant:
|
||||
0:162 true (const bool)
|
||||
0:163 subgroupAny ( global bool)
|
||||
0:163 Constant:
|
||||
0:163 false (const bool)
|
||||
0:164 subgroupAllEqual ( global bool)
|
||||
0:164 'f4' ( in 4-component vector of float)
|
||||
0:169 Function Definition: shuffle_works(vf4; ( global void)
|
||||
0:169 Function Parameters:
|
||||
0:169 'f4' ( in 4-component vector of float)
|
||||
0:171 Sequence
|
||||
0:171 subgroupShuffle ( global 4-component vector of float)
|
||||
0:171 'f4' ( in 4-component vector of float)
|
||||
0:171 Constant:
|
||||
0:171 0 (const uint)
|
||||
0:172 subgroupShuffleXor ( global 4-component vector of float)
|
||||
0:172 'f4' ( in 4-component vector of float)
|
||||
0:172 Constant:
|
||||
0:172 1 (const uint)
|
||||
0:173 subgroupShuffleUp ( global 4-component vector of float)
|
||||
0:173 'f4' ( in 4-component vector of float)
|
||||
0:173 Constant:
|
||||
0:173 1 (const uint)
|
||||
0:174 subgroupShuffleDown ( global 4-component vector of float)
|
||||
0:174 'f4' ( in 4-component vector of float)
|
||||
0:174 Constant:
|
||||
0:174 1 (const uint)
|
||||
0:178 Function Definition: arith_works(vf4; ( global void)
|
||||
0:178 Function Parameters:
|
||||
0:178 'f4' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:181 subgroupAdd ( global 4-component vector of float)
|
||||
0:181 'f4' ( in 4-component vector of float)
|
||||
0:182 subgroupMul ( global 4-component vector of float)
|
||||
0:182 'f4' ( in 4-component vector of float)
|
||||
0:183 subgroupMin ( global 4-component vector of float)
|
||||
0:183 'f4' ( in 4-component vector of float)
|
||||
0:184 subgroupMax ( global 4-component vector of float)
|
||||
0:184 'f4' ( in 4-component vector of float)
|
||||
0:185 subgroupAnd ( global 4-component vector of uint)
|
||||
0:185 'ballot' ( temp 4-component vector of uint)
|
||||
0:186 subgroupOr ( global 4-component vector of uint)
|
||||
0:186 'ballot' ( temp 4-component vector of uint)
|
||||
0:187 subgroupXor ( global 4-component vector of uint)
|
||||
0:187 'ballot' ( temp 4-component vector of uint)
|
||||
0:188 subgroupInclusiveAdd ( global 4-component vector of float)
|
||||
0:188 'f4' ( in 4-component vector of float)
|
||||
0:189 subgroupInclusiveMul ( global 4-component vector of float)
|
||||
0:189 'f4' ( in 4-component vector of float)
|
||||
0:190 subgroupInclusiveMin ( global 4-component vector of float)
|
||||
0:190 'f4' ( in 4-component vector of float)
|
||||
0:191 subgroupInclusiveMax ( global 4-component vector of float)
|
||||
0:191 'f4' ( in 4-component vector of float)
|
||||
0:192 subgroupInclusiveAnd ( global 4-component vector of uint)
|
||||
0:192 'ballot' ( temp 4-component vector of uint)
|
||||
0:193 subgroupInclusiveOr ( global 4-component vector of uint)
|
||||
0:193 'ballot' ( temp 4-component vector of uint)
|
||||
0:194 subgroupInclusiveXor ( global 4-component vector of uint)
|
||||
0:194 'ballot' ( temp 4-component vector of uint)
|
||||
0:195 subgroupExclusiveAdd ( global 4-component vector of float)
|
||||
0:195 'f4' ( in 4-component vector of float)
|
||||
0:196 subgroupExclusiveMul ( global 4-component vector of float)
|
||||
0:196 'f4' ( in 4-component vector of float)
|
||||
0:197 subgroupExclusiveMin ( global 4-component vector of float)
|
||||
0:197 'f4' ( in 4-component vector of float)
|
||||
0:198 subgroupExclusiveMax ( global 4-component vector of float)
|
||||
0:198 'f4' ( in 4-component vector of float)
|
||||
0:199 subgroupExclusiveAnd ( global 4-component vector of uint)
|
||||
0:199 'ballot' ( temp 4-component vector of uint)
|
||||
0:200 subgroupExclusiveOr ( global 4-component vector of uint)
|
||||
0:200 'ballot' ( temp 4-component vector of uint)
|
||||
0:201 subgroupExclusiveXor ( global 4-component vector of uint)
|
||||
0:201 'ballot' ( temp 4-component vector of uint)
|
||||
0:205 Function Definition: clustered_works(vf4; ( global void)
|
||||
0:205 Function Parameters:
|
||||
0:205 'f4' ( in 4-component vector of float)
|
||||
0:207 Sequence
|
||||
0:207 Sequence
|
||||
0:207 move second child to first child ( temp 4-component vector of uint)
|
||||
0:207 'ballot' ( temp 4-component vector of uint)
|
||||
0:207 Constant:
|
||||
0:207 85 (const uint)
|
||||
0:207 0 (const uint)
|
||||
0:207 0 (const uint)
|
||||
0:207 0 (const uint)
|
||||
0:208 subgroupClusteredAdd ( global 4-component vector of float)
|
||||
0:208 'f4' ( in 4-component vector of float)
|
||||
0:208 Constant:
|
||||
0:208 2 (const uint)
|
||||
0:209 subgroupClusteredMul ( global 4-component vector of float)
|
||||
0:209 'f4' ( in 4-component vector of float)
|
||||
0:209 Constant:
|
||||
0:209 2 (const uint)
|
||||
0:210 subgroupClusteredMin ( global 4-component vector of float)
|
||||
0:210 'f4' ( in 4-component vector of float)
|
||||
0:210 Constant:
|
||||
0:210 2 (const uint)
|
||||
0:211 subgroupClusteredMax ( global 4-component vector of float)
|
||||
0:211 'f4' ( in 4-component vector of float)
|
||||
0:211 Constant:
|
||||
0:211 2 (const uint)
|
||||
0:212 subgroupClusteredAnd ( global 4-component vector of uint)
|
||||
0:212 'ballot' ( temp 4-component vector of uint)
|
||||
0:212 Constant:
|
||||
0:212 2 (const uint)
|
||||
0:213 subgroupClusteredOr ( global 4-component vector of uint)
|
||||
0:213 'ballot' ( temp 4-component vector of uint)
|
||||
0:213 Constant:
|
||||
0:213 2 (const uint)
|
||||
0:214 subgroupClusteredXor ( global 4-component vector of uint)
|
||||
0:214 'ballot' ( temp 4-component vector of uint)
|
||||
0:214 Constant:
|
||||
0:214 2 (const uint)
|
||||
0:218 Function Definition: quad_works(vf4; ( global void)
|
||||
0:218 Function Parameters:
|
||||
0:218 'f4' ( in 4-component vector of float)
|
||||
0:220 Sequence
|
||||
0:220 subgroupQuadBroadcast ( global 4-component vector of float)
|
||||
0:220 'f4' ( in 4-component vector of float)
|
||||
0:220 Constant:
|
||||
0:220 0 (const uint)
|
||||
0:221 subgroupQuadSwapHorizontal ( global 4-component vector of float)
|
||||
0:221 'f4' ( in 4-component vector of float)
|
||||
0:222 subgroupQuadSwapVertical ( global 4-component vector of float)
|
||||
0:222 'f4' ( in 4-component vector of float)
|
||||
0:223 subgroupQuadSwapDiagonal ( global 4-component vector of float)
|
||||
0:223 'f4' ( in 4-component vector of float)
|
||||
0:227 Function Definition: partitioned_works(vf4; ( global void)
|
||||
0:227 Function Parameters:
|
||||
0:227 'f4' ( in 4-component vector of float)
|
||||
0:229 Sequence
|
||||
0:229 Sequence
|
||||
0:229 move second child to first child ( temp 4-component vector of uint)
|
||||
0:229 'parti' ( temp 4-component vector of uint)
|
||||
0:229 subgroupPartitionNV ( global 4-component vector of uint)
|
||||
0:229 'f4' ( in 4-component vector of float)
|
||||
0:230 Sequence
|
||||
0:230 move second child to first child ( temp 4-component vector of uint)
|
||||
0:230 'ballot' ( temp 4-component vector of uint)
|
||||
0:230 Constant:
|
||||
0:230 85 (const uint)
|
||||
0:230 0 (const uint)
|
||||
0:230 0 (const uint)
|
||||
0:230 0 (const uint)
|
||||
0:231 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:231 'f4' ( in 4-component vector of float)
|
||||
0:231 'parti' ( temp 4-component vector of uint)
|
||||
0:232 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:232 'f4' ( in 4-component vector of float)
|
||||
0:232 'parti' ( temp 4-component vector of uint)
|
||||
0:233 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:233 'f4' ( in 4-component vector of float)
|
||||
0:233 'parti' ( temp 4-component vector of uint)
|
||||
0:234 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:234 'f4' ( in 4-component vector of float)
|
||||
0:234 'parti' ( temp 4-component vector of uint)
|
||||
0:235 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:235 'ballot' ( temp 4-component vector of uint)
|
||||
0:235 'parti' ( temp 4-component vector of uint)
|
||||
0:236 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:236 'ballot' ( temp 4-component vector of uint)
|
||||
0:236 'parti' ( temp 4-component vector of uint)
|
||||
0:237 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:237 'ballot' ( temp 4-component vector of uint)
|
||||
0:237 'parti' ( temp 4-component vector of uint)
|
||||
0:238 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:238 'f4' ( in 4-component vector of float)
|
||||
0:238 'parti' ( temp 4-component vector of uint)
|
||||
0:239 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:239 'f4' ( in 4-component vector of float)
|
||||
0:239 'parti' ( temp 4-component vector of uint)
|
||||
0:240 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:240 'f4' ( in 4-component vector of float)
|
||||
0:240 'parti' ( temp 4-component vector of uint)
|
||||
0:241 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:241 'f4' ( in 4-component vector of float)
|
||||
0:241 'parti' ( temp 4-component vector of uint)
|
||||
0:242 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:242 'ballot' ( temp 4-component vector of uint)
|
||||
0:242 'parti' ( temp 4-component vector of uint)
|
||||
0:243 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:243 'ballot' ( temp 4-component vector of uint)
|
||||
0:243 'parti' ( temp 4-component vector of uint)
|
||||
0:244 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:244 'ballot' ( temp 4-component vector of uint)
|
||||
0:244 'parti' ( temp 4-component vector of uint)
|
||||
0:245 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:245 'f4' ( in 4-component vector of float)
|
||||
0:245 'parti' ( temp 4-component vector of uint)
|
||||
0:246 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:246 'f4' ( in 4-component vector of float)
|
||||
0:246 'parti' ( temp 4-component vector of uint)
|
||||
0:247 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:247 'f4' ( in 4-component vector of float)
|
||||
0:247 'parti' ( temp 4-component vector of uint)
|
||||
0:248 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:248 'f4' ( in 4-component vector of float)
|
||||
0:248 'parti' ( temp 4-component vector of uint)
|
||||
0:249 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:249 'ballot' ( temp 4-component vector of uint)
|
||||
0:249 'parti' ( temp 4-component vector of uint)
|
||||
0:250 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:250 'ballot' ( temp 4-component vector of uint)
|
||||
0:250 'parti' ( temp 4-component vector of uint)
|
||||
0:251 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:251 'ballot' ( temp 4-component vector of uint)
|
||||
0:251 'parti' ( temp 4-component vector of uint)
|
||||
0:? Linker Objects
|
||||
0:? 'accNV' (layout( set=0 binding=0) uniform accelerationStructureNV)
|
||||
0:? 'localPayload' (layout( location=0) rayPayloadNV 4-component vector of float)
|
||||
0:? 'incomingPayload' (layout( location=1) rayPayloadInNV 4-component vector of float)
|
||||
|
||||
|
||||
Linked closest-hit stage:
|
||||
|
||||
|
||||
Shader version: 460
|
||||
Requested GL_KHR_shader_subgroup_arithmetic
|
||||
Requested GL_KHR_shader_subgroup_ballot
|
||||
Requested GL_KHR_shader_subgroup_basic
|
||||
Requested GL_KHR_shader_subgroup_clustered
|
||||
Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:108 Function Definition: main( ( global void)
|
||||
0:108 Function Parameters:
|
||||
0:110 Sequence
|
||||
0:110 Sequence
|
||||
0:110 move second child to first child ( temp 3-component vector of uint)
|
||||
0:110 'v0' ( temp 3-component vector of uint)
|
||||
0:110 'gl_LaunchIDNV' ( in 3-component vector of uint LaunchIdNV)
|
||||
0:111 Sequence
|
||||
0:111 move second child to first child ( temp 3-component vector of uint)
|
||||
0:111 'v1' ( temp 3-component vector of uint)
|
||||
0:111 'gl_LaunchSizeNV' ( in 3-component vector of uint LaunchSizeNV)
|
||||
0:112 Sequence
|
||||
0:112 move second child to first child ( temp int)
|
||||
0:112 'v2' ( temp int)
|
||||
0:112 'gl_PrimitiveID' ( in int PrimitiveID)
|
||||
0:113 Sequence
|
||||
0:113 move second child to first child ( temp int)
|
||||
0:113 'v3' ( temp int)
|
||||
0:113 'gl_InstanceID' ( in int InstanceId)
|
||||
0:114 Sequence
|
||||
0:114 move second child to first child ( temp int)
|
||||
0:114 'v4' ( temp int)
|
||||
0:114 'gl_InstanceCustomIndexNV' ( in int InstanceCustomIndexNV)
|
||||
0:115 Sequence
|
||||
0:115 move second child to first child ( temp 3-component vector of float)
|
||||
0:115 'v5' ( temp 3-component vector of float)
|
||||
0:115 'gl_WorldRayOriginNV' ( in 3-component vector of float WorldRayOriginNV)
|
||||
0:116 Sequence
|
||||
0:116 move second child to first child ( temp 3-component vector of float)
|
||||
0:116 'v6' ( temp 3-component vector of float)
|
||||
0:116 'gl_WorldRayDirectionNV' ( in 3-component vector of float WorldRayDirectionNV)
|
||||
0:117 Sequence
|
||||
0:117 move second child to first child ( temp 3-component vector of float)
|
||||
0:117 'v7' ( temp 3-component vector of float)
|
||||
0:117 'gl_ObjectRayOriginNV' ( in 3-component vector of float ObjectRayOriginNV)
|
||||
0:118 Sequence
|
||||
0:118 move second child to first child ( temp 3-component vector of float)
|
||||
0:118 'v8' ( temp 3-component vector of float)
|
||||
0:118 'gl_ObjectRayDirectionNV' ( in 3-component vector of float ObjectRayDirectionNV)
|
||||
0:119 Sequence
|
||||
0:119 move second child to first child ( temp float)
|
||||
0:119 'v9' ( temp float)
|
||||
0:119 'gl_RayTminNV' ( in float ObjectRayTminNV)
|
||||
0:120 Sequence
|
||||
0:120 move second child to first child ( temp float)
|
||||
0:120 'v10' ( temp float)
|
||||
0:120 'gl_RayTmaxNV' ( in float ObjectRayTmaxNV)
|
||||
0:121 Sequence
|
||||
0:121 move second child to first child ( temp float)
|
||||
0:121 'v11' ( temp float)
|
||||
0:121 'gl_HitTNV' ( in float HitTNV)
|
||||
0:122 Sequence
|
||||
0:122 move second child to first child ( temp uint)
|
||||
0:122 'v12' ( temp uint)
|
||||
0:122 'gl_HitKindNV' ( in uint HitKindNV)
|
||||
0:123 Sequence
|
||||
0:123 move second child to first child ( temp 4X3 matrix of float)
|
||||
0:123 'v13' ( temp 4X3 matrix of float)
|
||||
0:123 'gl_ObjectToWorldNV' ( in 4X3 matrix of float ObjectToWorldNV)
|
||||
0:124 Sequence
|
||||
0:124 move second child to first child ( temp 4X3 matrix of float)
|
||||
0:124 'v14' ( temp 4X3 matrix of float)
|
||||
0:124 'gl_WorldToObjectNV' ( in 4X3 matrix of float WorldToObjectNV)
|
||||
0:125 traceNV ( global void)
|
||||
0:125 'accNV' (layout( set=0 binding=0) uniform accelerationStructureNV)
|
||||
0:125 Constant:
|
||||
0:125 0 (const uint)
|
||||
0:125 Constant:
|
||||
0:125 1 (const uint)
|
||||
0:125 Constant:
|
||||
0:125 2 (const uint)
|
||||
0:125 Constant:
|
||||
0:125 3 (const uint)
|
||||
0:125 Constant:
|
||||
0:125 0 (const uint)
|
||||
0:125 Constant:
|
||||
0:125 0.500000
|
||||
0:125 0.500000
|
||||
0:125 0.500000
|
||||
0:125 Constant:
|
||||
0:125 0.500000
|
||||
0:125 Constant:
|
||||
0:125 1.000000
|
||||
0:125 1.000000
|
||||
0:125 1.000000
|
||||
0:125 Constant:
|
||||
0:125 0.750000
|
||||
0:125 Constant:
|
||||
0:125 1 (const int)
|
||||
0:? Linker Objects
|
||||
0:? 'accNV' (layout( set=0 binding=0) uniform accelerationStructureNV)
|
||||
0:? 'localPayload' (layout( location=0) rayPayloadNV 4-component vector of float)
|
||||
0:? 'incomingPayload' (layout( location=1) rayPayloadInNV 4-component vector of float)
|
||||
|
776
Test/baseResults/glsl.460.subgroup.rgen.out
Normal file
776
Test/baseResults/glsl.460.subgroup.rgen.out
Normal file
@ -0,0 +1,776 @@
|
||||
glsl.460.subgroup.rgen
|
||||
ERROR: 0:7: 'gl_SubgroupSize' : undeclared identifier
|
||||
ERROR: 0:8: 'gl_SubgroupInvocationID' : undeclared identifier
|
||||
ERROR: 0:9: 'subgroupBarrier' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:10: 'subgroupMemoryBarrier' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:11: 'subgroupMemoryBarrierBuffer' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:12: 'subgroupMemoryBarrierImage' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:13: 'subgroupElect' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:14: 'gl_NumSubgroups' : undeclared identifier
|
||||
ERROR: 0:15: 'gl_SubgroupID' : undeclared identifier
|
||||
ERROR: 0:16: 'subgroupMemoryBarrierShared' : no matching overloaded function found
|
||||
ERROR: 0:18: 'subgroupAll' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:19: 'subgroupAny' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:20: 'subgroupAllEqual' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:22: 'gl_SubgroupEqMask' : undeclared identifier
|
||||
ERROR: 0:23: 'gl_SubgroupGeMask' : undeclared identifier
|
||||
ERROR: 0:24: 'gl_SubgroupGtMask' : undeclared identifier
|
||||
ERROR: 0:25: 'gl_SubgroupLeMask' : undeclared identifier
|
||||
ERROR: 0:26: 'gl_SubgroupLtMask' : undeclared identifier
|
||||
ERROR: 0:27: 'subgroupBroadcast' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:28: 'subgroupBroadcastFirst' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:29: 'subgroupBallot' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:30: 'subgroupInverseBallot' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:31: 'subgroupBallotBitExtract' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:32: 'subgroupBallotBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:33: 'subgroupBallotInclusiveBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:34: 'subgroupBallotExclusiveBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:35: 'subgroupBallotFindLSB' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:36: 'subgroupBallotFindMSB' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:38: 'subgroupShuffle' : required extension not requested: GL_KHR_shader_subgroup_shuffle
|
||||
ERROR: 0:39: 'subgroupShuffleXor' : required extension not requested: GL_KHR_shader_subgroup_shuffle
|
||||
ERROR: 0:40: 'subgroupShuffleUp' : required extension not requested: GL_KHR_shader_subgroup_shuffle_relative
|
||||
ERROR: 0:41: 'subgroupShuffleDown' : required extension not requested: GL_KHR_shader_subgroup_shuffle_relative
|
||||
ERROR: 0:43: 'subgroupAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:44: 'subgroupMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:45: 'subgroupMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:46: 'subgroupMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:47: 'subgroupAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:48: 'subgroupOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:49: 'subgroupXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:50: 'subgroupInclusiveAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:51: 'subgroupInclusiveMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:52: 'subgroupInclusiveMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:53: 'subgroupInclusiveMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:54: 'subgroupInclusiveAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:55: 'subgroupInclusiveOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:56: 'subgroupInclusiveXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:57: 'subgroupExclusiveAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:58: 'subgroupExclusiveMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:59: 'subgroupExclusiveMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:60: 'subgroupExclusiveMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:61: 'subgroupExclusiveAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:62: 'subgroupExclusiveOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:63: 'subgroupExclusiveXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:65: 'subgroupClusteredAdd' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:66: 'subgroupClusteredMul' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:67: 'subgroupClusteredMin' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:68: 'subgroupClusteredMax' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:69: 'subgroupClusteredAnd' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:70: 'subgroupClusteredOr' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:71: 'subgroupClusteredXor' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:73: 'subgroupQuadBroadcast' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:74: 'subgroupQuadSwapHorizontal' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:75: 'subgroupQuadSwapVertical' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:76: 'subgroupQuadSwapDiagonal' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:78: 'subgroupPartitionNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:79: 'subgroupPartitionedAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:80: 'subgroupPartitionedMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:81: 'subgroupPartitionedMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:82: 'subgroupPartitionedMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:83: 'subgroupPartitionedAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:84: 'subgroupPartitionedOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:85: 'subgroupPartitionedXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:86: 'subgroupPartitionedInclusiveAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:87: 'subgroupPartitionedInclusiveMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:88: 'subgroupPartitionedInclusiveMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:89: 'subgroupPartitionedInclusiveMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:90: 'subgroupPartitionedInclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:91: 'subgroupPartitionedInclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:92: 'subgroupPartitionedInclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:93: 'subgroupPartitionedExclusiveAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:94: 'subgroupPartitionedExclusiveMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:95: 'subgroupPartitionedExclusiveMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:96: 'subgroupPartitionedExclusiveMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:99: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:125: 'gl_SubgroupSize' : undeclared identifier
|
||||
ERROR: 0:126: 'gl_SubgroupInvocationID' : undeclared identifier
|
||||
ERROR: 0:136: 'gl_SubgroupEqMask' : undeclared identifier
|
||||
ERROR: 0:137: 'gl_SubgroupGeMask' : undeclared identifier
|
||||
ERROR: 0:138: 'gl_SubgroupGtMask' : undeclared identifier
|
||||
ERROR: 0:139: 'gl_SubgroupLeMask' : undeclared identifier
|
||||
ERROR: 0:140: 'gl_SubgroupLtMask' : undeclared identifier
|
||||
ERROR: 93 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 460
|
||||
Requested GL_KHR_shader_subgroup_arithmetic
|
||||
Requested GL_KHR_shader_subgroup_ballot
|
||||
Requested GL_KHR_shader_subgroup_basic
|
||||
Requested GL_KHR_shader_subgroup_clustered
|
||||
Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:4 Function Definition: undeclared_errors(vf4; ( global 4-component vector of float)
|
||||
0:4 Function Parameters:
|
||||
0:4 'f4' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:7 'gl_SubgroupSize' ( temp float)
|
||||
0:8 'gl_SubgroupInvocationID' ( temp float)
|
||||
0:9 subgroupBarrier ( global void)
|
||||
0:10 subgroupMemoryBarrier ( global void)
|
||||
0:11 subgroupMemoryBarrierBuffer ( global void)
|
||||
0:12 subgroupMemoryBarrierImage ( global void)
|
||||
0:13 subgroupElect ( global bool)
|
||||
0:14 'gl_NumSubgroups' ( temp float)
|
||||
0:15 'gl_SubgroupID' ( temp float)
|
||||
0:16 Constant:
|
||||
0:16 0.000000
|
||||
0:18 subgroupAll ( global bool)
|
||||
0:18 Constant:
|
||||
0:18 true (const bool)
|
||||
0:19 subgroupAny ( global bool)
|
||||
0:19 Constant:
|
||||
0:19 false (const bool)
|
||||
0:20 subgroupAllEqual ( global bool)
|
||||
0:20 'f4' ( in 4-component vector of float)
|
||||
0:22 'gl_SubgroupEqMask' ( temp float)
|
||||
0:23 'gl_SubgroupGeMask' ( temp float)
|
||||
0:24 'gl_SubgroupGtMask' ( temp float)
|
||||
0:25 'gl_SubgroupLeMask' ( temp float)
|
||||
0:26 'gl_SubgroupLtMask' ( temp float)
|
||||
0:27 subgroupBroadcast ( global 4-component vector of float)
|
||||
0:27 'f4' ( in 4-component vector of float)
|
||||
0:27 Constant:
|
||||
0:27 0 (const uint)
|
||||
0:28 subgroupBroadcastFirst ( global 4-component vector of float)
|
||||
0:28 'f4' ( in 4-component vector of float)
|
||||
0:29 Sequence
|
||||
0:29 move second child to first child ( temp 4-component vector of uint)
|
||||
0:29 'ballot' ( temp 4-component vector of uint)
|
||||
0:29 subgroupBallot ( global 4-component vector of uint)
|
||||
0:29 Constant:
|
||||
0:29 false (const bool)
|
||||
0:30 subgroupInverseBallot ( global bool)
|
||||
0:30 Constant:
|
||||
0:30 1 (const uint)
|
||||
0:30 1 (const uint)
|
||||
0:30 1 (const uint)
|
||||
0:30 1 (const uint)
|
||||
0:31 subgroupBallotBitExtract ( global bool)
|
||||
0:31 'ballot' ( temp 4-component vector of uint)
|
||||
0:31 Constant:
|
||||
0:31 0 (const uint)
|
||||
0:32 subgroupBallotBitCount ( global uint)
|
||||
0:32 'ballot' ( temp 4-component vector of uint)
|
||||
0:33 subgroupBallotInclusiveBitCount ( global uint)
|
||||
0:33 'ballot' ( temp 4-component vector of uint)
|
||||
0:34 subgroupBallotExclusiveBitCount ( global uint)
|
||||
0:34 'ballot' ( temp 4-component vector of uint)
|
||||
0:35 subgroupBallotFindLSB ( global uint)
|
||||
0:35 'ballot' ( temp 4-component vector of uint)
|
||||
0:36 subgroupBallotFindMSB ( global uint)
|
||||
0:36 'ballot' ( temp 4-component vector of uint)
|
||||
0:38 subgroupShuffle ( global 4-component vector of float)
|
||||
0:38 'f4' ( in 4-component vector of float)
|
||||
0:38 Constant:
|
||||
0:38 0 (const uint)
|
||||
0:39 subgroupShuffleXor ( global 4-component vector of float)
|
||||
0:39 'f4' ( in 4-component vector of float)
|
||||
0:39 Constant:
|
||||
0:39 1 (const uint)
|
||||
0:40 subgroupShuffleUp ( global 4-component vector of float)
|
||||
0:40 'f4' ( in 4-component vector of float)
|
||||
0:40 Constant:
|
||||
0:40 1 (const uint)
|
||||
0:41 subgroupShuffleDown ( global 4-component vector of float)
|
||||
0:41 'f4' ( in 4-component vector of float)
|
||||
0:41 Constant:
|
||||
0:41 1 (const uint)
|
||||
0:43 move second child to first child ( temp 4-component vector of float)
|
||||
0:43 'result' ( temp 4-component vector of float)
|
||||
0:43 subgroupAdd ( global 4-component vector of float)
|
||||
0:43 'f4' ( in 4-component vector of float)
|
||||
0:44 subgroupMul ( global 4-component vector of float)
|
||||
0:44 'f4' ( in 4-component vector of float)
|
||||
0:45 subgroupMin ( global 4-component vector of float)
|
||||
0:45 'f4' ( in 4-component vector of float)
|
||||
0:46 subgroupMax ( global 4-component vector of float)
|
||||
0:46 'f4' ( in 4-component vector of float)
|
||||
0:47 subgroupAnd ( global 4-component vector of uint)
|
||||
0:47 'ballot' ( temp 4-component vector of uint)
|
||||
0:48 subgroupOr ( global 4-component vector of uint)
|
||||
0:48 'ballot' ( temp 4-component vector of uint)
|
||||
0:49 subgroupXor ( global 4-component vector of uint)
|
||||
0:49 'ballot' ( temp 4-component vector of uint)
|
||||
0:50 subgroupInclusiveAdd ( global 4-component vector of float)
|
||||
0:50 'f4' ( in 4-component vector of float)
|
||||
0:51 subgroupInclusiveMul ( global 4-component vector of float)
|
||||
0:51 'f4' ( in 4-component vector of float)
|
||||
0:52 subgroupInclusiveMin ( global 4-component vector of float)
|
||||
0:52 'f4' ( in 4-component vector of float)
|
||||
0:53 subgroupInclusiveMax ( global 4-component vector of float)
|
||||
0:53 'f4' ( in 4-component vector of float)
|
||||
0:54 subgroupInclusiveAnd ( global 4-component vector of uint)
|
||||
0:54 'ballot' ( temp 4-component vector of uint)
|
||||
0:55 subgroupInclusiveOr ( global 4-component vector of uint)
|
||||
0:55 'ballot' ( temp 4-component vector of uint)
|
||||
0:56 subgroupInclusiveXor ( global 4-component vector of uint)
|
||||
0:56 'ballot' ( temp 4-component vector of uint)
|
||||
0:57 subgroupExclusiveAdd ( global 4-component vector of float)
|
||||
0:57 'f4' ( in 4-component vector of float)
|
||||
0:58 subgroupExclusiveMul ( global 4-component vector of float)
|
||||
0:58 'f4' ( in 4-component vector of float)
|
||||
0:59 subgroupExclusiveMin ( global 4-component vector of float)
|
||||
0:59 'f4' ( in 4-component vector of float)
|
||||
0:60 subgroupExclusiveMax ( global 4-component vector of float)
|
||||
0:60 'f4' ( in 4-component vector of float)
|
||||
0:61 subgroupExclusiveAnd ( global 4-component vector of uint)
|
||||
0:61 'ballot' ( temp 4-component vector of uint)
|
||||
0:62 subgroupExclusiveOr ( global 4-component vector of uint)
|
||||
0:62 'ballot' ( temp 4-component vector of uint)
|
||||
0:63 subgroupExclusiveXor ( global 4-component vector of uint)
|
||||
0:63 'ballot' ( temp 4-component vector of uint)
|
||||
0:65 subgroupClusteredAdd ( global 4-component vector of float)
|
||||
0:65 'f4' ( in 4-component vector of float)
|
||||
0:65 Constant:
|
||||
0:65 2 (const uint)
|
||||
0:66 subgroupClusteredMul ( global 4-component vector of float)
|
||||
0:66 'f4' ( in 4-component vector of float)
|
||||
0:66 Constant:
|
||||
0:66 2 (const uint)
|
||||
0:67 subgroupClusteredMin ( global 4-component vector of float)
|
||||
0:67 'f4' ( in 4-component vector of float)
|
||||
0:67 Constant:
|
||||
0:67 2 (const uint)
|
||||
0:68 subgroupClusteredMax ( global 4-component vector of float)
|
||||
0:68 'f4' ( in 4-component vector of float)
|
||||
0:68 Constant:
|
||||
0:68 2 (const uint)
|
||||
0:69 subgroupClusteredAnd ( global 4-component vector of uint)
|
||||
0:69 'ballot' ( temp 4-component vector of uint)
|
||||
0:69 Constant:
|
||||
0:69 2 (const uint)
|
||||
0:70 subgroupClusteredOr ( global 4-component vector of uint)
|
||||
0:70 'ballot' ( temp 4-component vector of uint)
|
||||
0:70 Constant:
|
||||
0:70 2 (const uint)
|
||||
0:71 subgroupClusteredXor ( global 4-component vector of uint)
|
||||
0:71 'ballot' ( temp 4-component vector of uint)
|
||||
0:71 Constant:
|
||||
0:71 2 (const uint)
|
||||
0:73 subgroupQuadBroadcast ( global 4-component vector of float)
|
||||
0:73 'f4' ( in 4-component vector of float)
|
||||
0:73 Constant:
|
||||
0:73 0 (const uint)
|
||||
0:74 subgroupQuadSwapHorizontal ( global 4-component vector of float)
|
||||
0:74 'f4' ( in 4-component vector of float)
|
||||
0:75 subgroupQuadSwapVertical ( global 4-component vector of float)
|
||||
0:75 'f4' ( in 4-component vector of float)
|
||||
0:76 subgroupQuadSwapDiagonal ( global 4-component vector of float)
|
||||
0:76 'f4' ( in 4-component vector of float)
|
||||
0:78 Sequence
|
||||
0:78 move second child to first child ( temp 4-component vector of uint)
|
||||
0:78 'parti' ( temp 4-component vector of uint)
|
||||
0:78 subgroupPartitionNV ( global 4-component vector of uint)
|
||||
0:78 'f4' ( in 4-component vector of float)
|
||||
0:79 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:79 'f4' ( in 4-component vector of float)
|
||||
0:79 'parti' ( temp 4-component vector of uint)
|
||||
0:80 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:80 'f4' ( in 4-component vector of float)
|
||||
0:80 'parti' ( temp 4-component vector of uint)
|
||||
0:81 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:81 'f4' ( in 4-component vector of float)
|
||||
0:81 'parti' ( temp 4-component vector of uint)
|
||||
0:82 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:82 'f4' ( in 4-component vector of float)
|
||||
0:82 'parti' ( temp 4-component vector of uint)
|
||||
0:83 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:83 'ballot' ( temp 4-component vector of uint)
|
||||
0:83 'parti' ( temp 4-component vector of uint)
|
||||
0:84 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:84 'ballot' ( temp 4-component vector of uint)
|
||||
0:84 'parti' ( temp 4-component vector of uint)
|
||||
0:85 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:85 'ballot' ( temp 4-component vector of uint)
|
||||
0:85 'parti' ( temp 4-component vector of uint)
|
||||
0:86 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:86 'f4' ( in 4-component vector of float)
|
||||
0:86 'parti' ( temp 4-component vector of uint)
|
||||
0:87 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:87 'f4' ( in 4-component vector of float)
|
||||
0:87 'parti' ( temp 4-component vector of uint)
|
||||
0:88 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:88 'f4' ( in 4-component vector of float)
|
||||
0:88 'parti' ( temp 4-component vector of uint)
|
||||
0:89 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:89 'f4' ( in 4-component vector of float)
|
||||
0:89 'parti' ( temp 4-component vector of uint)
|
||||
0:90 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:90 'ballot' ( temp 4-component vector of uint)
|
||||
0:90 'parti' ( temp 4-component vector of uint)
|
||||
0:91 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:91 'ballot' ( temp 4-component vector of uint)
|
||||
0:91 'parti' ( temp 4-component vector of uint)
|
||||
0:92 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:92 'ballot' ( temp 4-component vector of uint)
|
||||
0:92 'parti' ( temp 4-component vector of uint)
|
||||
0:93 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:93 'f4' ( in 4-component vector of float)
|
||||
0:93 'parti' ( temp 4-component vector of uint)
|
||||
0:94 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:94 'f4' ( in 4-component vector of float)
|
||||
0:94 'parti' ( temp 4-component vector of uint)
|
||||
0:95 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:95 'f4' ( in 4-component vector of float)
|
||||
0:95 'parti' ( temp 4-component vector of uint)
|
||||
0:96 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:96 'f4' ( in 4-component vector of float)
|
||||
0:96 'parti' ( temp 4-component vector of uint)
|
||||
0:97 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:97 'ballot' ( temp 4-component vector of uint)
|
||||
0:97 'parti' ( temp 4-component vector of uint)
|
||||
0:98 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:98 'ballot' ( temp 4-component vector of uint)
|
||||
0:98 'parti' ( temp 4-component vector of uint)
|
||||
0:99 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:99 'ballot' ( temp 4-component vector of uint)
|
||||
0:99 'parti' ( temp 4-component vector of uint)
|
||||
0:101 Branch: Return with expression
|
||||
0:101 'result' ( temp 4-component vector of float)
|
||||
0:113 Function Definition: main( ( global void)
|
||||
0:113 Function Parameters:
|
||||
0:115 Sequence
|
||||
0:115 Sequence
|
||||
0:115 move second child to first child ( temp uint)
|
||||
0:115 'lx' ( temp uint)
|
||||
0:115 direct index ( temp uint)
|
||||
0:115 'gl_LaunchIDNV' ( in 3-component vector of uint LaunchIdNV)
|
||||
0:115 Constant:
|
||||
0:115 0 (const int)
|
||||
0:116 Sequence
|
||||
0:116 move second child to first child ( temp uint)
|
||||
0:116 'ly' ( temp uint)
|
||||
0:116 direct index ( temp uint)
|
||||
0:116 'gl_LaunchIDNV' ( in 3-component vector of uint LaunchIdNV)
|
||||
0:116 Constant:
|
||||
0:116 1 (const int)
|
||||
0:117 Sequence
|
||||
0:117 move second child to first child ( temp uint)
|
||||
0:117 'sx' ( temp uint)
|
||||
0:117 direct index ( temp uint)
|
||||
0:117 'gl_LaunchSizeNV' ( in 3-component vector of uint LaunchSizeNV)
|
||||
0:117 Constant:
|
||||
0:117 0 (const int)
|
||||
0:118 Sequence
|
||||
0:118 move second child to first child ( temp uint)
|
||||
0:118 'sy' ( temp uint)
|
||||
0:118 direct index ( temp uint)
|
||||
0:118 'gl_LaunchSizeNV' ( in 3-component vector of uint LaunchSizeNV)
|
||||
0:118 Constant:
|
||||
0:118 1 (const int)
|
||||
0:119 traceNV ( global void)
|
||||
0:119 'accNV0' (layout( set=0 binding=0) uniform accelerationStructureNV)
|
||||
0:119 'lx' ( temp uint)
|
||||
0:119 'ly' ( temp uint)
|
||||
0:119 'sx' ( temp uint)
|
||||
0:119 'sy' ( temp uint)
|
||||
0:119 Constant:
|
||||
0:119 0 (const uint)
|
||||
0:119 origin: direct index for structure (layout( column_major std430 offset=16) buffer 3-component vector of float)
|
||||
0:119 'anon@0' (layout( column_major std430 shaderRecordNV) buffer block{layout( column_major std430 offset=0) buffer 3-component vector of float dir, layout( column_major std430 offset=16) buffer 3-component vector of float origin})
|
||||
0:119 Constant:
|
||||
0:119 1 (const uint)
|
||||
0:119 Constant:
|
||||
0:119 0.500000
|
||||
0:119 dir: direct index for structure (layout( column_major std430 offset=0) buffer 3-component vector of float)
|
||||
0:119 'anon@0' (layout( column_major std430 shaderRecordNV) buffer block{layout( column_major std430 offset=0) buffer 3-component vector of float dir, layout( column_major std430 offset=16) buffer 3-component vector of float origin})
|
||||
0:119 Constant:
|
||||
0:119 0 (const uint)
|
||||
0:119 Constant:
|
||||
0:119 0.750000
|
||||
0:119 Constant:
|
||||
0:119 1 (const int)
|
||||
0:123 Function Definition: basic_works( ( global void)
|
||||
0:123 Function Parameters:
|
||||
0:125 Sequence
|
||||
0:125 'gl_SubgroupSize' ( temp float)
|
||||
0:126 'gl_SubgroupInvocationID' ( temp float)
|
||||
0:127 subgroupBarrier ( global void)
|
||||
0:128 subgroupMemoryBarrier ( global void)
|
||||
0:129 subgroupMemoryBarrierBuffer ( global void)
|
||||
0:130 subgroupMemoryBarrierImage ( global void)
|
||||
0:131 subgroupElect ( global bool)
|
||||
0:135 Function Definition: ballot_works(vf4; ( global void)
|
||||
0:135 Function Parameters:
|
||||
0:135 'f4' ( in 4-component vector of float)
|
||||
0:136 Sequence
|
||||
0:136 'gl_SubgroupEqMask' ( temp float)
|
||||
0:137 'gl_SubgroupGeMask' ( temp float)
|
||||
0:138 'gl_SubgroupGtMask' ( temp float)
|
||||
0:139 'gl_SubgroupLeMask' ( temp float)
|
||||
0:140 'gl_SubgroupLtMask' ( temp float)
|
||||
0:141 subgroupBroadcast ( global 4-component vector of float)
|
||||
0:141 'f4' ( in 4-component vector of float)
|
||||
0:141 Constant:
|
||||
0:141 0 (const uint)
|
||||
0:142 subgroupBroadcastFirst ( global 4-component vector of float)
|
||||
0:142 'f4' ( in 4-component vector of float)
|
||||
0:143 Sequence
|
||||
0:143 move second child to first child ( temp 4-component vector of uint)
|
||||
0:143 'ballot' ( temp 4-component vector of uint)
|
||||
0:143 subgroupBallot ( global 4-component vector of uint)
|
||||
0:143 Constant:
|
||||
0:143 false (const bool)
|
||||
0:144 subgroupInverseBallot ( global bool)
|
||||
0:144 Constant:
|
||||
0:144 1 (const uint)
|
||||
0:144 1 (const uint)
|
||||
0:144 1 (const uint)
|
||||
0:144 1 (const uint)
|
||||
0:145 subgroupBallotBitExtract ( global bool)
|
||||
0:145 'ballot' ( temp 4-component vector of uint)
|
||||
0:145 Constant:
|
||||
0:145 0 (const uint)
|
||||
0:146 subgroupBallotBitCount ( global uint)
|
||||
0:146 'ballot' ( temp 4-component vector of uint)
|
||||
0:147 subgroupBallotInclusiveBitCount ( global uint)
|
||||
0:147 'ballot' ( temp 4-component vector of uint)
|
||||
0:148 subgroupBallotExclusiveBitCount ( global uint)
|
||||
0:148 'ballot' ( temp 4-component vector of uint)
|
||||
0:149 subgroupBallotFindLSB ( global uint)
|
||||
0:149 'ballot' ( temp 4-component vector of uint)
|
||||
0:150 subgroupBallotFindMSB ( global uint)
|
||||
0:150 'ballot' ( temp 4-component vector of uint)
|
||||
0:154 Function Definition: vote_works(vf4; ( global void)
|
||||
0:154 Function Parameters:
|
||||
0:154 'f4' ( in 4-component vector of float)
|
||||
0:156 Sequence
|
||||
0:156 subgroupAll ( global bool)
|
||||
0:156 Constant:
|
||||
0:156 true (const bool)
|
||||
0:157 subgroupAny ( global bool)
|
||||
0:157 Constant:
|
||||
0:157 false (const bool)
|
||||
0:158 subgroupAllEqual ( global bool)
|
||||
0:158 'f4' ( in 4-component vector of float)
|
||||
0:163 Function Definition: shuffle_works(vf4; ( global void)
|
||||
0:163 Function Parameters:
|
||||
0:163 'f4' ( in 4-component vector of float)
|
||||
0:165 Sequence
|
||||
0:165 subgroupShuffle ( global 4-component vector of float)
|
||||
0:165 'f4' ( in 4-component vector of float)
|
||||
0:165 Constant:
|
||||
0:165 0 (const uint)
|
||||
0:166 subgroupShuffleXor ( global 4-component vector of float)
|
||||
0:166 'f4' ( in 4-component vector of float)
|
||||
0:166 Constant:
|
||||
0:166 1 (const uint)
|
||||
0:167 subgroupShuffleUp ( global 4-component vector of float)
|
||||
0:167 'f4' ( in 4-component vector of float)
|
||||
0:167 Constant:
|
||||
0:167 1 (const uint)
|
||||
0:168 subgroupShuffleDown ( global 4-component vector of float)
|
||||
0:168 'f4' ( in 4-component vector of float)
|
||||
0:168 Constant:
|
||||
0:168 1 (const uint)
|
||||
0:172 Function Definition: arith_works(vf4; ( global void)
|
||||
0:172 Function Parameters:
|
||||
0:172 'f4' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:175 subgroupAdd ( global 4-component vector of float)
|
||||
0:175 'f4' ( in 4-component vector of float)
|
||||
0:176 subgroupMul ( global 4-component vector of float)
|
||||
0:176 'f4' ( in 4-component vector of float)
|
||||
0:177 subgroupMin ( global 4-component vector of float)
|
||||
0:177 'f4' ( in 4-component vector of float)
|
||||
0:178 subgroupMax ( global 4-component vector of float)
|
||||
0:178 'f4' ( in 4-component vector of float)
|
||||
0:179 subgroupAnd ( global 4-component vector of uint)
|
||||
0:179 'ballot' ( temp 4-component vector of uint)
|
||||
0:180 subgroupOr ( global 4-component vector of uint)
|
||||
0:180 'ballot' ( temp 4-component vector of uint)
|
||||
0:181 subgroupXor ( global 4-component vector of uint)
|
||||
0:181 'ballot' ( temp 4-component vector of uint)
|
||||
0:182 subgroupInclusiveAdd ( global 4-component vector of float)
|
||||
0:182 'f4' ( in 4-component vector of float)
|
||||
0:183 subgroupInclusiveMul ( global 4-component vector of float)
|
||||
0:183 'f4' ( in 4-component vector of float)
|
||||
0:184 subgroupInclusiveMin ( global 4-component vector of float)
|
||||
0:184 'f4' ( in 4-component vector of float)
|
||||
0:185 subgroupInclusiveMax ( global 4-component vector of float)
|
||||
0:185 'f4' ( in 4-component vector of float)
|
||||
0:186 subgroupInclusiveAnd ( global 4-component vector of uint)
|
||||
0:186 'ballot' ( temp 4-component vector of uint)
|
||||
0:187 subgroupInclusiveOr ( global 4-component vector of uint)
|
||||
0:187 'ballot' ( temp 4-component vector of uint)
|
||||
0:188 subgroupInclusiveXor ( global 4-component vector of uint)
|
||||
0:188 'ballot' ( temp 4-component vector of uint)
|
||||
0:189 subgroupExclusiveAdd ( global 4-component vector of float)
|
||||
0:189 'f4' ( in 4-component vector of float)
|
||||
0:190 subgroupExclusiveMul ( global 4-component vector of float)
|
||||
0:190 'f4' ( in 4-component vector of float)
|
||||
0:191 subgroupExclusiveMin ( global 4-component vector of float)
|
||||
0:191 'f4' ( in 4-component vector of float)
|
||||
0:192 subgroupExclusiveMax ( global 4-component vector of float)
|
||||
0:192 'f4' ( in 4-component vector of float)
|
||||
0:193 subgroupExclusiveAnd ( global 4-component vector of uint)
|
||||
0:193 'ballot' ( temp 4-component vector of uint)
|
||||
0:194 subgroupExclusiveOr ( global 4-component vector of uint)
|
||||
0:194 'ballot' ( temp 4-component vector of uint)
|
||||
0:195 subgroupExclusiveXor ( global 4-component vector of uint)
|
||||
0:195 'ballot' ( temp 4-component vector of uint)
|
||||
0:199 Function Definition: clustered_works(vf4; ( global void)
|
||||
0:199 Function Parameters:
|
||||
0:199 'f4' ( in 4-component vector of float)
|
||||
0:201 Sequence
|
||||
0:201 Sequence
|
||||
0:201 move second child to first child ( temp 4-component vector of uint)
|
||||
0:201 'ballot' ( temp 4-component vector of uint)
|
||||
0:201 Constant:
|
||||
0:201 85 (const uint)
|
||||
0:201 0 (const uint)
|
||||
0:201 0 (const uint)
|
||||
0:201 0 (const uint)
|
||||
0:202 subgroupClusteredAdd ( global 4-component vector of float)
|
||||
0:202 'f4' ( in 4-component vector of float)
|
||||
0:202 Constant:
|
||||
0:202 2 (const uint)
|
||||
0:203 subgroupClusteredMul ( global 4-component vector of float)
|
||||
0:203 'f4' ( in 4-component vector of float)
|
||||
0:203 Constant:
|
||||
0:203 2 (const uint)
|
||||
0:204 subgroupClusteredMin ( global 4-component vector of float)
|
||||
0:204 'f4' ( in 4-component vector of float)
|
||||
0:204 Constant:
|
||||
0:204 2 (const uint)
|
||||
0:205 subgroupClusteredMax ( global 4-component vector of float)
|
||||
0:205 'f4' ( in 4-component vector of float)
|
||||
0:205 Constant:
|
||||
0:205 2 (const uint)
|
||||
0:206 subgroupClusteredAnd ( global 4-component vector of uint)
|
||||
0:206 'ballot' ( temp 4-component vector of uint)
|
||||
0:206 Constant:
|
||||
0:206 2 (const uint)
|
||||
0:207 subgroupClusteredOr ( global 4-component vector of uint)
|
||||
0:207 'ballot' ( temp 4-component vector of uint)
|
||||
0:207 Constant:
|
||||
0:207 2 (const uint)
|
||||
0:208 subgroupClusteredXor ( global 4-component vector of uint)
|
||||
0:208 'ballot' ( temp 4-component vector of uint)
|
||||
0:208 Constant:
|
||||
0:208 2 (const uint)
|
||||
0:212 Function Definition: quad_works(vf4; ( global void)
|
||||
0:212 Function Parameters:
|
||||
0:212 'f4' ( in 4-component vector of float)
|
||||
0:214 Sequence
|
||||
0:214 subgroupQuadBroadcast ( global 4-component vector of float)
|
||||
0:214 'f4' ( in 4-component vector of float)
|
||||
0:214 Constant:
|
||||
0:214 0 (const uint)
|
||||
0:215 subgroupQuadSwapHorizontal ( global 4-component vector of float)
|
||||
0:215 'f4' ( in 4-component vector of float)
|
||||
0:216 subgroupQuadSwapVertical ( global 4-component vector of float)
|
||||
0:216 'f4' ( in 4-component vector of float)
|
||||
0:217 subgroupQuadSwapDiagonal ( global 4-component vector of float)
|
||||
0:217 'f4' ( in 4-component vector of float)
|
||||
0:221 Function Definition: partitioned_works(vf4; ( global void)
|
||||
0:221 Function Parameters:
|
||||
0:221 'f4' ( in 4-component vector of float)
|
||||
0:223 Sequence
|
||||
0:223 Sequence
|
||||
0:223 move second child to first child ( temp 4-component vector of uint)
|
||||
0:223 'parti' ( temp 4-component vector of uint)
|
||||
0:223 subgroupPartitionNV ( global 4-component vector of uint)
|
||||
0:223 'f4' ( in 4-component vector of float)
|
||||
0:224 Sequence
|
||||
0:224 move second child to first child ( temp 4-component vector of uint)
|
||||
0:224 'ballot' ( temp 4-component vector of uint)
|
||||
0:224 Constant:
|
||||
0:224 85 (const uint)
|
||||
0:224 0 (const uint)
|
||||
0:224 0 (const uint)
|
||||
0:224 0 (const uint)
|
||||
0:225 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:225 'f4' ( in 4-component vector of float)
|
||||
0:225 'parti' ( temp 4-component vector of uint)
|
||||
0:226 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:226 'f4' ( in 4-component vector of float)
|
||||
0:226 'parti' ( temp 4-component vector of uint)
|
||||
0:227 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:227 'f4' ( in 4-component vector of float)
|
||||
0:227 'parti' ( temp 4-component vector of uint)
|
||||
0:228 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:228 'f4' ( in 4-component vector of float)
|
||||
0:228 'parti' ( temp 4-component vector of uint)
|
||||
0:229 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:229 'ballot' ( temp 4-component vector of uint)
|
||||
0:229 'parti' ( temp 4-component vector of uint)
|
||||
0:230 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:230 'ballot' ( temp 4-component vector of uint)
|
||||
0:230 'parti' ( temp 4-component vector of uint)
|
||||
0:231 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:231 'ballot' ( temp 4-component vector of uint)
|
||||
0:231 'parti' ( temp 4-component vector of uint)
|
||||
0:232 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:232 'f4' ( in 4-component vector of float)
|
||||
0:232 'parti' ( temp 4-component vector of uint)
|
||||
0:233 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:233 'f4' ( in 4-component vector of float)
|
||||
0:233 'parti' ( temp 4-component vector of uint)
|
||||
0:234 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:234 'f4' ( in 4-component vector of float)
|
||||
0:234 'parti' ( temp 4-component vector of uint)
|
||||
0:235 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:235 'f4' ( in 4-component vector of float)
|
||||
0:235 'parti' ( temp 4-component vector of uint)
|
||||
0:236 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:236 'ballot' ( temp 4-component vector of uint)
|
||||
0:236 'parti' ( temp 4-component vector of uint)
|
||||
0:237 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:237 'ballot' ( temp 4-component vector of uint)
|
||||
0:237 'parti' ( temp 4-component vector of uint)
|
||||
0:238 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:238 'ballot' ( temp 4-component vector of uint)
|
||||
0:238 'parti' ( temp 4-component vector of uint)
|
||||
0:239 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:239 'f4' ( in 4-component vector of float)
|
||||
0:239 'parti' ( temp 4-component vector of uint)
|
||||
0:240 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:240 'f4' ( in 4-component vector of float)
|
||||
0:240 'parti' ( temp 4-component vector of uint)
|
||||
0:241 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:241 'f4' ( in 4-component vector of float)
|
||||
0:241 'parti' ( temp 4-component vector of uint)
|
||||
0:242 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:242 'f4' ( in 4-component vector of float)
|
||||
0:242 'parti' ( temp 4-component vector of uint)
|
||||
0:243 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:243 'ballot' ( temp 4-component vector of uint)
|
||||
0:243 'parti' ( temp 4-component vector of uint)
|
||||
0:244 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:244 'ballot' ( temp 4-component vector of uint)
|
||||
0:244 'parti' ( temp 4-component vector of uint)
|
||||
0:245 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:245 'ballot' ( temp 4-component vector of uint)
|
||||
0:245 'parti' ( temp 4-component vector of uint)
|
||||
0:? Linker Objects
|
||||
0:? 'accNV0' (layout( set=0 binding=0) uniform accelerationStructureNV)
|
||||
0:? 'accNV1' (layout( set=0 binding=1) uniform accelerationStructureNV)
|
||||
0:? 'payload' (layout( location=0) rayPayloadNV 4-component vector of float)
|
||||
0:? 'anon@0' (layout( column_major std430 shaderRecordNV) buffer block{layout( column_major std430 offset=0) buffer 3-component vector of float dir, layout( column_major std430 offset=16) buffer 3-component vector of float origin})
|
||||
|
||||
|
||||
Linked ray-generation stage:
|
||||
|
||||
|
||||
Shader version: 460
|
||||
Requested GL_KHR_shader_subgroup_arithmetic
|
||||
Requested GL_KHR_shader_subgroup_ballot
|
||||
Requested GL_KHR_shader_subgroup_basic
|
||||
Requested GL_KHR_shader_subgroup_clustered
|
||||
Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:113 Function Definition: main( ( global void)
|
||||
0:113 Function Parameters:
|
||||
0:115 Sequence
|
||||
0:115 Sequence
|
||||
0:115 move second child to first child ( temp uint)
|
||||
0:115 'lx' ( temp uint)
|
||||
0:115 direct index ( temp uint)
|
||||
0:115 'gl_LaunchIDNV' ( in 3-component vector of uint LaunchIdNV)
|
||||
0:115 Constant:
|
||||
0:115 0 (const int)
|
||||
0:116 Sequence
|
||||
0:116 move second child to first child ( temp uint)
|
||||
0:116 'ly' ( temp uint)
|
||||
0:116 direct index ( temp uint)
|
||||
0:116 'gl_LaunchIDNV' ( in 3-component vector of uint LaunchIdNV)
|
||||
0:116 Constant:
|
||||
0:116 1 (const int)
|
||||
0:117 Sequence
|
||||
0:117 move second child to first child ( temp uint)
|
||||
0:117 'sx' ( temp uint)
|
||||
0:117 direct index ( temp uint)
|
||||
0:117 'gl_LaunchSizeNV' ( in 3-component vector of uint LaunchSizeNV)
|
||||
0:117 Constant:
|
||||
0:117 0 (const int)
|
||||
0:118 Sequence
|
||||
0:118 move second child to first child ( temp uint)
|
||||
0:118 'sy' ( temp uint)
|
||||
0:118 direct index ( temp uint)
|
||||
0:118 'gl_LaunchSizeNV' ( in 3-component vector of uint LaunchSizeNV)
|
||||
0:118 Constant:
|
||||
0:118 1 (const int)
|
||||
0:119 traceNV ( global void)
|
||||
0:119 'accNV0' (layout( set=0 binding=0) uniform accelerationStructureNV)
|
||||
0:119 'lx' ( temp uint)
|
||||
0:119 'ly' ( temp uint)
|
||||
0:119 'sx' ( temp uint)
|
||||
0:119 'sy' ( temp uint)
|
||||
0:119 Constant:
|
||||
0:119 0 (const uint)
|
||||
0:119 origin: direct index for structure (layout( column_major std430 offset=16) buffer 3-component vector of float)
|
||||
0:119 'anon@0' (layout( column_major std430 shaderRecordNV) buffer block{layout( column_major std430 offset=0) buffer 3-component vector of float dir, layout( column_major std430 offset=16) buffer 3-component vector of float origin})
|
||||
0:119 Constant:
|
||||
0:119 1 (const uint)
|
||||
0:119 Constant:
|
||||
0:119 0.500000
|
||||
0:119 dir: direct index for structure (layout( column_major std430 offset=0) buffer 3-component vector of float)
|
||||
0:119 'anon@0' (layout( column_major std430 shaderRecordNV) buffer block{layout( column_major std430 offset=0) buffer 3-component vector of float dir, layout( column_major std430 offset=16) buffer 3-component vector of float origin})
|
||||
0:119 Constant:
|
||||
0:119 0 (const uint)
|
||||
0:119 Constant:
|
||||
0:119 0.750000
|
||||
0:119 Constant:
|
||||
0:119 1 (const int)
|
||||
0:? Linker Objects
|
||||
0:? 'accNV0' (layout( set=0 binding=0) uniform accelerationStructureNV)
|
||||
0:? 'accNV1' (layout( set=0 binding=1) uniform accelerationStructureNV)
|
||||
0:? 'payload' (layout( location=0) rayPayloadNV 4-component vector of float)
|
||||
0:? 'anon@0' (layout( column_major std430 shaderRecordNV) buffer block{layout( column_major std430 offset=0) buffer 3-component vector of float dir, layout( column_major std430 offset=16) buffer 3-component vector of float origin})
|
||||
|
798
Test/baseResults/glsl.460.subgroup.rint.out
Normal file
798
Test/baseResults/glsl.460.subgroup.rint.out
Normal file
@ -0,0 +1,798 @@
|
||||
glsl.460.subgroup.rint
|
||||
ERROR: 0:8: 'gl_SubgroupSize' : undeclared identifier
|
||||
ERROR: 0:9: 'gl_SubgroupInvocationID' : undeclared identifier
|
||||
ERROR: 0:10: 'subgroupBarrier' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:11: 'subgroupMemoryBarrier' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:12: 'subgroupMemoryBarrierBuffer' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:13: 'subgroupMemoryBarrierImage' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:14: 'subgroupElect' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:15: 'gl_NumSubgroups' : undeclared identifier
|
||||
ERROR: 0:16: 'gl_SubgroupID' : undeclared identifier
|
||||
ERROR: 0:17: 'subgroupMemoryBarrierShared' : no matching overloaded function found
|
||||
ERROR: 0:19: 'subgroupAll' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:20: 'subgroupAny' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:21: 'subgroupAllEqual' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:23: 'gl_SubgroupEqMask' : undeclared identifier
|
||||
ERROR: 0:24: 'gl_SubgroupGeMask' : undeclared identifier
|
||||
ERROR: 0:25: 'gl_SubgroupGtMask' : undeclared identifier
|
||||
ERROR: 0:26: 'gl_SubgroupLeMask' : undeclared identifier
|
||||
ERROR: 0:27: 'gl_SubgroupLtMask' : undeclared identifier
|
||||
ERROR: 0:28: 'subgroupBroadcast' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:29: 'subgroupBroadcastFirst' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:30: 'subgroupBallot' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:31: 'subgroupInverseBallot' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:32: 'subgroupBallotBitExtract' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:33: 'subgroupBallotBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:34: 'subgroupBallotInclusiveBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:35: 'subgroupBallotExclusiveBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:36: 'subgroupBallotFindLSB' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:37: 'subgroupBallotFindMSB' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:39: 'subgroupShuffle' : required extension not requested: GL_KHR_shader_subgroup_shuffle
|
||||
ERROR: 0:40: 'subgroupShuffleXor' : required extension not requested: GL_KHR_shader_subgroup_shuffle
|
||||
ERROR: 0:41: 'subgroupShuffleUp' : required extension not requested: GL_KHR_shader_subgroup_shuffle_relative
|
||||
ERROR: 0:42: 'subgroupShuffleDown' : required extension not requested: GL_KHR_shader_subgroup_shuffle_relative
|
||||
ERROR: 0:44: 'subgroupAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:45: 'subgroupMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:46: 'subgroupMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:47: 'subgroupMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:48: 'subgroupAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:49: 'subgroupOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:50: 'subgroupXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:51: 'subgroupInclusiveAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:52: 'subgroupInclusiveMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:53: 'subgroupInclusiveMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:54: 'subgroupInclusiveMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:55: 'subgroupInclusiveAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:56: 'subgroupInclusiveOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:57: 'subgroupInclusiveXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:58: 'subgroupExclusiveAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:59: 'subgroupExclusiveMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:60: 'subgroupExclusiveMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:61: 'subgroupExclusiveMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:62: 'subgroupExclusiveAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:63: 'subgroupExclusiveOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:64: 'subgroupExclusiveXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:66: 'subgroupClusteredAdd' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:67: 'subgroupClusteredMul' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:68: 'subgroupClusteredMin' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:69: 'subgroupClusteredMax' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:70: 'subgroupClusteredAnd' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:71: 'subgroupClusteredOr' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:72: 'subgroupClusteredXor' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:74: 'subgroupQuadBroadcast' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:75: 'subgroupQuadSwapHorizontal' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:76: 'subgroupQuadSwapVertical' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:77: 'subgroupQuadSwapDiagonal' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:79: 'subgroupPartitionNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:80: 'subgroupPartitionedAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:81: 'subgroupPartitionedMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:82: 'subgroupPartitionedMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:83: 'subgroupPartitionedMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:84: 'subgroupPartitionedAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:85: 'subgroupPartitionedOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:86: 'subgroupPartitionedXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:87: 'subgroupPartitionedInclusiveAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:88: 'subgroupPartitionedInclusiveMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:89: 'subgroupPartitionedInclusiveMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:90: 'subgroupPartitionedInclusiveMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:91: 'subgroupPartitionedInclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:92: 'subgroupPartitionedInclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:93: 'subgroupPartitionedInclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:94: 'subgroupPartitionedExclusiveAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:95: 'subgroupPartitionedExclusiveMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:96: 'subgroupPartitionedExclusiveMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:99: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:100: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:131: 'gl_SubgroupSize' : undeclared identifier
|
||||
ERROR: 0:132: 'gl_SubgroupInvocationID' : undeclared identifier
|
||||
ERROR: 0:142: 'gl_SubgroupEqMask' : undeclared identifier
|
||||
ERROR: 0:143: 'gl_SubgroupGeMask' : undeclared identifier
|
||||
ERROR: 0:144: 'gl_SubgroupGtMask' : undeclared identifier
|
||||
ERROR: 0:145: 'gl_SubgroupLeMask' : undeclared identifier
|
||||
ERROR: 0:146: 'gl_SubgroupLtMask' : undeclared identifier
|
||||
ERROR: 93 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 460
|
||||
Requested GL_KHR_shader_subgroup_arithmetic
|
||||
Requested GL_KHR_shader_subgroup_ballot
|
||||
Requested GL_KHR_shader_subgroup_basic
|
||||
Requested GL_KHR_shader_subgroup_clustered
|
||||
Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:5 Function Definition: undeclared_errors(vf4; ( global 4-component vector of float)
|
||||
0:5 Function Parameters:
|
||||
0:5 'f4' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:8 'gl_SubgroupSize' ( temp float)
|
||||
0:9 'gl_SubgroupInvocationID' ( temp float)
|
||||
0:10 subgroupBarrier ( global void)
|
||||
0:11 subgroupMemoryBarrier ( global void)
|
||||
0:12 subgroupMemoryBarrierBuffer ( global void)
|
||||
0:13 subgroupMemoryBarrierImage ( global void)
|
||||
0:14 subgroupElect ( global bool)
|
||||
0:15 'gl_NumSubgroups' ( temp float)
|
||||
0:16 'gl_SubgroupID' ( temp float)
|
||||
0:17 Constant:
|
||||
0:17 0.000000
|
||||
0:19 subgroupAll ( global bool)
|
||||
0:19 Constant:
|
||||
0:19 true (const bool)
|
||||
0:20 subgroupAny ( global bool)
|
||||
0:20 Constant:
|
||||
0:20 false (const bool)
|
||||
0:21 subgroupAllEqual ( global bool)
|
||||
0:21 'f4' ( in 4-component vector of float)
|
||||
0:23 'gl_SubgroupEqMask' ( temp float)
|
||||
0:24 'gl_SubgroupGeMask' ( temp float)
|
||||
0:25 'gl_SubgroupGtMask' ( temp float)
|
||||
0:26 'gl_SubgroupLeMask' ( temp float)
|
||||
0:27 'gl_SubgroupLtMask' ( temp float)
|
||||
0:28 subgroupBroadcast ( global 4-component vector of float)
|
||||
0:28 'f4' ( in 4-component vector of float)
|
||||
0:28 Constant:
|
||||
0:28 0 (const uint)
|
||||
0:29 subgroupBroadcastFirst ( global 4-component vector of float)
|
||||
0:29 'f4' ( in 4-component vector of float)
|
||||
0:30 Sequence
|
||||
0:30 move second child to first child ( temp 4-component vector of uint)
|
||||
0:30 'ballot' ( temp 4-component vector of uint)
|
||||
0:30 subgroupBallot ( global 4-component vector of uint)
|
||||
0:30 Constant:
|
||||
0:30 false (const bool)
|
||||
0:31 subgroupInverseBallot ( global bool)
|
||||
0:31 Constant:
|
||||
0:31 1 (const uint)
|
||||
0:31 1 (const uint)
|
||||
0:31 1 (const uint)
|
||||
0:31 1 (const uint)
|
||||
0:32 subgroupBallotBitExtract ( global bool)
|
||||
0:32 'ballot' ( temp 4-component vector of uint)
|
||||
0:32 Constant:
|
||||
0:32 0 (const uint)
|
||||
0:33 subgroupBallotBitCount ( global uint)
|
||||
0:33 'ballot' ( temp 4-component vector of uint)
|
||||
0:34 subgroupBallotInclusiveBitCount ( global uint)
|
||||
0:34 'ballot' ( temp 4-component vector of uint)
|
||||
0:35 subgroupBallotExclusiveBitCount ( global uint)
|
||||
0:35 'ballot' ( temp 4-component vector of uint)
|
||||
0:36 subgroupBallotFindLSB ( global uint)
|
||||
0:36 'ballot' ( temp 4-component vector of uint)
|
||||
0:37 subgroupBallotFindMSB ( global uint)
|
||||
0:37 'ballot' ( temp 4-component vector of uint)
|
||||
0:39 subgroupShuffle ( global 4-component vector of float)
|
||||
0:39 'f4' ( in 4-component vector of float)
|
||||
0:39 Constant:
|
||||
0:39 0 (const uint)
|
||||
0:40 subgroupShuffleXor ( global 4-component vector of float)
|
||||
0:40 'f4' ( in 4-component vector of float)
|
||||
0:40 Constant:
|
||||
0:40 1 (const uint)
|
||||
0:41 subgroupShuffleUp ( global 4-component vector of float)
|
||||
0:41 'f4' ( in 4-component vector of float)
|
||||
0:41 Constant:
|
||||
0:41 1 (const uint)
|
||||
0:42 subgroupShuffleDown ( global 4-component vector of float)
|
||||
0:42 'f4' ( in 4-component vector of float)
|
||||
0:42 Constant:
|
||||
0:42 1 (const uint)
|
||||
0:44 move second child to first child ( temp 4-component vector of float)
|
||||
0:44 'result' ( temp 4-component vector of float)
|
||||
0:44 subgroupAdd ( global 4-component vector of float)
|
||||
0:44 'f4' ( in 4-component vector of float)
|
||||
0:45 subgroupMul ( global 4-component vector of float)
|
||||
0:45 'f4' ( in 4-component vector of float)
|
||||
0:46 subgroupMin ( global 4-component vector of float)
|
||||
0:46 'f4' ( in 4-component vector of float)
|
||||
0:47 subgroupMax ( global 4-component vector of float)
|
||||
0:47 'f4' ( in 4-component vector of float)
|
||||
0:48 subgroupAnd ( global 4-component vector of uint)
|
||||
0:48 'ballot' ( temp 4-component vector of uint)
|
||||
0:49 subgroupOr ( global 4-component vector of uint)
|
||||
0:49 'ballot' ( temp 4-component vector of uint)
|
||||
0:50 subgroupXor ( global 4-component vector of uint)
|
||||
0:50 'ballot' ( temp 4-component vector of uint)
|
||||
0:51 subgroupInclusiveAdd ( global 4-component vector of float)
|
||||
0:51 'f4' ( in 4-component vector of float)
|
||||
0:52 subgroupInclusiveMul ( global 4-component vector of float)
|
||||
0:52 'f4' ( in 4-component vector of float)
|
||||
0:53 subgroupInclusiveMin ( global 4-component vector of float)
|
||||
0:53 'f4' ( in 4-component vector of float)
|
||||
0:54 subgroupInclusiveMax ( global 4-component vector of float)
|
||||
0:54 'f4' ( in 4-component vector of float)
|
||||
0:55 subgroupInclusiveAnd ( global 4-component vector of uint)
|
||||
0:55 'ballot' ( temp 4-component vector of uint)
|
||||
0:56 subgroupInclusiveOr ( global 4-component vector of uint)
|
||||
0:56 'ballot' ( temp 4-component vector of uint)
|
||||
0:57 subgroupInclusiveXor ( global 4-component vector of uint)
|
||||
0:57 'ballot' ( temp 4-component vector of uint)
|
||||
0:58 subgroupExclusiveAdd ( global 4-component vector of float)
|
||||
0:58 'f4' ( in 4-component vector of float)
|
||||
0:59 subgroupExclusiveMul ( global 4-component vector of float)
|
||||
0:59 'f4' ( in 4-component vector of float)
|
||||
0:60 subgroupExclusiveMin ( global 4-component vector of float)
|
||||
0:60 'f4' ( in 4-component vector of float)
|
||||
0:61 subgroupExclusiveMax ( global 4-component vector of float)
|
||||
0:61 'f4' ( in 4-component vector of float)
|
||||
0:62 subgroupExclusiveAnd ( global 4-component vector of uint)
|
||||
0:62 'ballot' ( temp 4-component vector of uint)
|
||||
0:63 subgroupExclusiveOr ( global 4-component vector of uint)
|
||||
0:63 'ballot' ( temp 4-component vector of uint)
|
||||
0:64 subgroupExclusiveXor ( global 4-component vector of uint)
|
||||
0:64 'ballot' ( temp 4-component vector of uint)
|
||||
0:66 subgroupClusteredAdd ( global 4-component vector of float)
|
||||
0:66 'f4' ( in 4-component vector of float)
|
||||
0:66 Constant:
|
||||
0:66 2 (const uint)
|
||||
0:67 subgroupClusteredMul ( global 4-component vector of float)
|
||||
0:67 'f4' ( in 4-component vector of float)
|
||||
0:67 Constant:
|
||||
0:67 2 (const uint)
|
||||
0:68 subgroupClusteredMin ( global 4-component vector of float)
|
||||
0:68 'f4' ( in 4-component vector of float)
|
||||
0:68 Constant:
|
||||
0:68 2 (const uint)
|
||||
0:69 subgroupClusteredMax ( global 4-component vector of float)
|
||||
0:69 'f4' ( in 4-component vector of float)
|
||||
0:69 Constant:
|
||||
0:69 2 (const uint)
|
||||
0:70 subgroupClusteredAnd ( global 4-component vector of uint)
|
||||
0:70 'ballot' ( temp 4-component vector of uint)
|
||||
0:70 Constant:
|
||||
0:70 2 (const uint)
|
||||
0:71 subgroupClusteredOr ( global 4-component vector of uint)
|
||||
0:71 'ballot' ( temp 4-component vector of uint)
|
||||
0:71 Constant:
|
||||
0:71 2 (const uint)
|
||||
0:72 subgroupClusteredXor ( global 4-component vector of uint)
|
||||
0:72 'ballot' ( temp 4-component vector of uint)
|
||||
0:72 Constant:
|
||||
0:72 2 (const uint)
|
||||
0:74 subgroupQuadBroadcast ( global 4-component vector of float)
|
||||
0:74 'f4' ( in 4-component vector of float)
|
||||
0:74 Constant:
|
||||
0:74 0 (const uint)
|
||||
0:75 subgroupQuadSwapHorizontal ( global 4-component vector of float)
|
||||
0:75 'f4' ( in 4-component vector of float)
|
||||
0:76 subgroupQuadSwapVertical ( global 4-component vector of float)
|
||||
0:76 'f4' ( in 4-component vector of float)
|
||||
0:77 subgroupQuadSwapDiagonal ( global 4-component vector of float)
|
||||
0:77 'f4' ( in 4-component vector of float)
|
||||
0:79 Sequence
|
||||
0:79 move second child to first child ( temp 4-component vector of uint)
|
||||
0:79 'parti' ( temp 4-component vector of uint)
|
||||
0:79 subgroupPartitionNV ( global 4-component vector of uint)
|
||||
0:79 'f4' ( in 4-component vector of float)
|
||||
0:80 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:80 'f4' ( in 4-component vector of float)
|
||||
0:80 'parti' ( temp 4-component vector of uint)
|
||||
0:81 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:81 'f4' ( in 4-component vector of float)
|
||||
0:81 'parti' ( temp 4-component vector of uint)
|
||||
0:82 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:82 'f4' ( in 4-component vector of float)
|
||||
0:82 'parti' ( temp 4-component vector of uint)
|
||||
0:83 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:83 'f4' ( in 4-component vector of float)
|
||||
0:83 'parti' ( temp 4-component vector of uint)
|
||||
0:84 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:84 'ballot' ( temp 4-component vector of uint)
|
||||
0:84 'parti' ( temp 4-component vector of uint)
|
||||
0:85 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:85 'ballot' ( temp 4-component vector of uint)
|
||||
0:85 'parti' ( temp 4-component vector of uint)
|
||||
0:86 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:86 'ballot' ( temp 4-component vector of uint)
|
||||
0:86 'parti' ( temp 4-component vector of uint)
|
||||
0:87 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:87 'f4' ( in 4-component vector of float)
|
||||
0:87 'parti' ( temp 4-component vector of uint)
|
||||
0:88 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:88 'f4' ( in 4-component vector of float)
|
||||
0:88 'parti' ( temp 4-component vector of uint)
|
||||
0:89 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:89 'f4' ( in 4-component vector of float)
|
||||
0:89 'parti' ( temp 4-component vector of uint)
|
||||
0:90 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:90 'f4' ( in 4-component vector of float)
|
||||
0:90 'parti' ( temp 4-component vector of uint)
|
||||
0:91 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:91 'ballot' ( temp 4-component vector of uint)
|
||||
0:91 'parti' ( temp 4-component vector of uint)
|
||||
0:92 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:92 'ballot' ( temp 4-component vector of uint)
|
||||
0:92 'parti' ( temp 4-component vector of uint)
|
||||
0:93 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:93 'ballot' ( temp 4-component vector of uint)
|
||||
0:93 'parti' ( temp 4-component vector of uint)
|
||||
0:94 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:94 'f4' ( in 4-component vector of float)
|
||||
0:94 'parti' ( temp 4-component vector of uint)
|
||||
0:95 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:95 'f4' ( in 4-component vector of float)
|
||||
0:95 'parti' ( temp 4-component vector of uint)
|
||||
0:96 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:96 'f4' ( in 4-component vector of float)
|
||||
0:96 'parti' ( temp 4-component vector of uint)
|
||||
0:97 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:97 'f4' ( in 4-component vector of float)
|
||||
0:97 'parti' ( temp 4-component vector of uint)
|
||||
0:98 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:98 'ballot' ( temp 4-component vector of uint)
|
||||
0:98 'parti' ( temp 4-component vector of uint)
|
||||
0:99 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:99 'ballot' ( temp 4-component vector of uint)
|
||||
0:99 'parti' ( temp 4-component vector of uint)
|
||||
0:100 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:100 'ballot' ( temp 4-component vector of uint)
|
||||
0:100 'parti' ( temp 4-component vector of uint)
|
||||
0:102 Branch: Return with expression
|
||||
0:102 'result' ( temp 4-component vector of float)
|
||||
0:108 Function Definition: main( ( global void)
|
||||
0:108 Function Parameters:
|
||||
0:110 Sequence
|
||||
0:110 Sequence
|
||||
0:110 move second child to first child ( temp 3-component vector of uint)
|
||||
0:110 'v0' ( temp 3-component vector of uint)
|
||||
0:110 'gl_LaunchIDNV' ( in 3-component vector of uint LaunchIdNV)
|
||||
0:111 Sequence
|
||||
0:111 move second child to first child ( temp 3-component vector of uint)
|
||||
0:111 'v1' ( temp 3-component vector of uint)
|
||||
0:111 'gl_LaunchSizeNV' ( in 3-component vector of uint LaunchSizeNV)
|
||||
0:112 Sequence
|
||||
0:112 move second child to first child ( temp int)
|
||||
0:112 'v2' ( temp int)
|
||||
0:112 'gl_PrimitiveID' ( in int PrimitiveID)
|
||||
0:113 Sequence
|
||||
0:113 move second child to first child ( temp int)
|
||||
0:113 'v3' ( temp int)
|
||||
0:113 'gl_InstanceID' ( in int InstanceId)
|
||||
0:114 Sequence
|
||||
0:114 move second child to first child ( temp int)
|
||||
0:114 'v4' ( temp int)
|
||||
0:114 'gl_InstanceCustomIndexNV' ( in int InstanceCustomIndexNV)
|
||||
0:115 Sequence
|
||||
0:115 move second child to first child ( temp 3-component vector of float)
|
||||
0:115 'v5' ( temp 3-component vector of float)
|
||||
0:115 'gl_WorldRayOriginNV' ( in 3-component vector of float WorldRayOriginNV)
|
||||
0:116 Sequence
|
||||
0:116 move second child to first child ( temp 3-component vector of float)
|
||||
0:116 'v6' ( temp 3-component vector of float)
|
||||
0:116 'gl_WorldRayDirectionNV' ( in 3-component vector of float WorldRayDirectionNV)
|
||||
0:117 Sequence
|
||||
0:117 move second child to first child ( temp 3-component vector of float)
|
||||
0:117 'v7' ( temp 3-component vector of float)
|
||||
0:117 'gl_ObjectRayOriginNV' ( in 3-component vector of float ObjectRayOriginNV)
|
||||
0:118 Sequence
|
||||
0:118 move second child to first child ( temp 3-component vector of float)
|
||||
0:118 'v8' ( temp 3-component vector of float)
|
||||
0:118 'gl_ObjectRayDirectionNV' ( in 3-component vector of float ObjectRayDirectionNV)
|
||||
0:119 Sequence
|
||||
0:119 move second child to first child ( temp float)
|
||||
0:119 'v9' ( temp float)
|
||||
0:119 'gl_RayTminNV' ( in float ObjectRayTminNV)
|
||||
0:120 Sequence
|
||||
0:120 move second child to first child ( temp float)
|
||||
0:120 'v10' ( temp float)
|
||||
0:120 'gl_RayTmaxNV' ( in float ObjectRayTmaxNV)
|
||||
0:121 Sequence
|
||||
0:121 move second child to first child ( temp 4X3 matrix of float)
|
||||
0:121 'v11' ( temp 4X3 matrix of float)
|
||||
0:121 'gl_ObjectToWorldNV' ( in 4X3 matrix of float ObjectToWorldNV)
|
||||
0:122 Sequence
|
||||
0:122 move second child to first child ( temp 4X3 matrix of float)
|
||||
0:122 'v12' ( temp 4X3 matrix of float)
|
||||
0:122 'gl_WorldToObjectNV' ( in 4X3 matrix of float WorldToObjectNV)
|
||||
0:123 move second child to first child ( temp 4-component vector of float)
|
||||
0:123 'iAttr' ( hitAttributeNV 4-component vector of float)
|
||||
0:123 Constant:
|
||||
0:123 0.500000
|
||||
0:123 0.500000
|
||||
0:123 0.000000
|
||||
0:123 1.000000
|
||||
0:124 reportIntersectionNV ( global bool)
|
||||
0:124 Constant:
|
||||
0:124 0.500000
|
||||
0:124 Constant:
|
||||
0:124 1 (const uint)
|
||||
0:129 Function Definition: basic_works( ( global void)
|
||||
0:129 Function Parameters:
|
||||
0:131 Sequence
|
||||
0:131 'gl_SubgroupSize' ( temp float)
|
||||
0:132 'gl_SubgroupInvocationID' ( temp float)
|
||||
0:133 subgroupBarrier ( global void)
|
||||
0:134 subgroupMemoryBarrier ( global void)
|
||||
0:135 subgroupMemoryBarrierBuffer ( global void)
|
||||
0:136 subgroupMemoryBarrierImage ( global void)
|
||||
0:137 subgroupElect ( global bool)
|
||||
0:141 Function Definition: ballot_works(vf4; ( global void)
|
||||
0:141 Function Parameters:
|
||||
0:141 'f4' ( in 4-component vector of float)
|
||||
0:142 Sequence
|
||||
0:142 'gl_SubgroupEqMask' ( temp float)
|
||||
0:143 'gl_SubgroupGeMask' ( temp float)
|
||||
0:144 'gl_SubgroupGtMask' ( temp float)
|
||||
0:145 'gl_SubgroupLeMask' ( temp float)
|
||||
0:146 'gl_SubgroupLtMask' ( temp float)
|
||||
0:147 subgroupBroadcast ( global 4-component vector of float)
|
||||
0:147 'f4' ( in 4-component vector of float)
|
||||
0:147 Constant:
|
||||
0:147 0 (const uint)
|
||||
0:148 subgroupBroadcastFirst ( global 4-component vector of float)
|
||||
0:148 'f4' ( in 4-component vector of float)
|
||||
0:149 Sequence
|
||||
0:149 move second child to first child ( temp 4-component vector of uint)
|
||||
0:149 'ballot' ( temp 4-component vector of uint)
|
||||
0:149 subgroupBallot ( global 4-component vector of uint)
|
||||
0:149 Constant:
|
||||
0:149 false (const bool)
|
||||
0:150 subgroupInverseBallot ( global bool)
|
||||
0:150 Constant:
|
||||
0:150 1 (const uint)
|
||||
0:150 1 (const uint)
|
||||
0:150 1 (const uint)
|
||||
0:150 1 (const uint)
|
||||
0:151 subgroupBallotBitExtract ( global bool)
|
||||
0:151 'ballot' ( temp 4-component vector of uint)
|
||||
0:151 Constant:
|
||||
0:151 0 (const uint)
|
||||
0:152 subgroupBallotBitCount ( global uint)
|
||||
0:152 'ballot' ( temp 4-component vector of uint)
|
||||
0:153 subgroupBallotInclusiveBitCount ( global uint)
|
||||
0:153 'ballot' ( temp 4-component vector of uint)
|
||||
0:154 subgroupBallotExclusiveBitCount ( global uint)
|
||||
0:154 'ballot' ( temp 4-component vector of uint)
|
||||
0:155 subgroupBallotFindLSB ( global uint)
|
||||
0:155 'ballot' ( temp 4-component vector of uint)
|
||||
0:156 subgroupBallotFindMSB ( global uint)
|
||||
0:156 'ballot' ( temp 4-component vector of uint)
|
||||
0:160 Function Definition: vote_works(vf4; ( global void)
|
||||
0:160 Function Parameters:
|
||||
0:160 'f4' ( in 4-component vector of float)
|
||||
0:162 Sequence
|
||||
0:162 subgroupAll ( global bool)
|
||||
0:162 Constant:
|
||||
0:162 true (const bool)
|
||||
0:163 subgroupAny ( global bool)
|
||||
0:163 Constant:
|
||||
0:163 false (const bool)
|
||||
0:164 subgroupAllEqual ( global bool)
|
||||
0:164 'f4' ( in 4-component vector of float)
|
||||
0:169 Function Definition: shuffle_works(vf4; ( global void)
|
||||
0:169 Function Parameters:
|
||||
0:169 'f4' ( in 4-component vector of float)
|
||||
0:171 Sequence
|
||||
0:171 subgroupShuffle ( global 4-component vector of float)
|
||||
0:171 'f4' ( in 4-component vector of float)
|
||||
0:171 Constant:
|
||||
0:171 0 (const uint)
|
||||
0:172 subgroupShuffleXor ( global 4-component vector of float)
|
||||
0:172 'f4' ( in 4-component vector of float)
|
||||
0:172 Constant:
|
||||
0:172 1 (const uint)
|
||||
0:173 subgroupShuffleUp ( global 4-component vector of float)
|
||||
0:173 'f4' ( in 4-component vector of float)
|
||||
0:173 Constant:
|
||||
0:173 1 (const uint)
|
||||
0:174 subgroupShuffleDown ( global 4-component vector of float)
|
||||
0:174 'f4' ( in 4-component vector of float)
|
||||
0:174 Constant:
|
||||
0:174 1 (const uint)
|
||||
0:178 Function Definition: arith_works(vf4; ( global void)
|
||||
0:178 Function Parameters:
|
||||
0:178 'f4' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:181 subgroupAdd ( global 4-component vector of float)
|
||||
0:181 'f4' ( in 4-component vector of float)
|
||||
0:182 subgroupMul ( global 4-component vector of float)
|
||||
0:182 'f4' ( in 4-component vector of float)
|
||||
0:183 subgroupMin ( global 4-component vector of float)
|
||||
0:183 'f4' ( in 4-component vector of float)
|
||||
0:184 subgroupMax ( global 4-component vector of float)
|
||||
0:184 'f4' ( in 4-component vector of float)
|
||||
0:185 subgroupAnd ( global 4-component vector of uint)
|
||||
0:185 'ballot' ( temp 4-component vector of uint)
|
||||
0:186 subgroupOr ( global 4-component vector of uint)
|
||||
0:186 'ballot' ( temp 4-component vector of uint)
|
||||
0:187 subgroupXor ( global 4-component vector of uint)
|
||||
0:187 'ballot' ( temp 4-component vector of uint)
|
||||
0:188 subgroupInclusiveAdd ( global 4-component vector of float)
|
||||
0:188 'f4' ( in 4-component vector of float)
|
||||
0:189 subgroupInclusiveMul ( global 4-component vector of float)
|
||||
0:189 'f4' ( in 4-component vector of float)
|
||||
0:190 subgroupInclusiveMin ( global 4-component vector of float)
|
||||
0:190 'f4' ( in 4-component vector of float)
|
||||
0:191 subgroupInclusiveMax ( global 4-component vector of float)
|
||||
0:191 'f4' ( in 4-component vector of float)
|
||||
0:192 subgroupInclusiveAnd ( global 4-component vector of uint)
|
||||
0:192 'ballot' ( temp 4-component vector of uint)
|
||||
0:193 subgroupInclusiveOr ( global 4-component vector of uint)
|
||||
0:193 'ballot' ( temp 4-component vector of uint)
|
||||
0:194 subgroupInclusiveXor ( global 4-component vector of uint)
|
||||
0:194 'ballot' ( temp 4-component vector of uint)
|
||||
0:195 subgroupExclusiveAdd ( global 4-component vector of float)
|
||||
0:195 'f4' ( in 4-component vector of float)
|
||||
0:196 subgroupExclusiveMul ( global 4-component vector of float)
|
||||
0:196 'f4' ( in 4-component vector of float)
|
||||
0:197 subgroupExclusiveMin ( global 4-component vector of float)
|
||||
0:197 'f4' ( in 4-component vector of float)
|
||||
0:198 subgroupExclusiveMax ( global 4-component vector of float)
|
||||
0:198 'f4' ( in 4-component vector of float)
|
||||
0:199 subgroupExclusiveAnd ( global 4-component vector of uint)
|
||||
0:199 'ballot' ( temp 4-component vector of uint)
|
||||
0:200 subgroupExclusiveOr ( global 4-component vector of uint)
|
||||
0:200 'ballot' ( temp 4-component vector of uint)
|
||||
0:201 subgroupExclusiveXor ( global 4-component vector of uint)
|
||||
0:201 'ballot' ( temp 4-component vector of uint)
|
||||
0:205 Function Definition: clustered_works(vf4; ( global void)
|
||||
0:205 Function Parameters:
|
||||
0:205 'f4' ( in 4-component vector of float)
|
||||
0:207 Sequence
|
||||
0:207 Sequence
|
||||
0:207 move second child to first child ( temp 4-component vector of uint)
|
||||
0:207 'ballot' ( temp 4-component vector of uint)
|
||||
0:207 Constant:
|
||||
0:207 85 (const uint)
|
||||
0:207 0 (const uint)
|
||||
0:207 0 (const uint)
|
||||
0:207 0 (const uint)
|
||||
0:208 subgroupClusteredAdd ( global 4-component vector of float)
|
||||
0:208 'f4' ( in 4-component vector of float)
|
||||
0:208 Constant:
|
||||
0:208 2 (const uint)
|
||||
0:209 subgroupClusteredMul ( global 4-component vector of float)
|
||||
0:209 'f4' ( in 4-component vector of float)
|
||||
0:209 Constant:
|
||||
0:209 2 (const uint)
|
||||
0:210 subgroupClusteredMin ( global 4-component vector of float)
|
||||
0:210 'f4' ( in 4-component vector of float)
|
||||
0:210 Constant:
|
||||
0:210 2 (const uint)
|
||||
0:211 subgroupClusteredMax ( global 4-component vector of float)
|
||||
0:211 'f4' ( in 4-component vector of float)
|
||||
0:211 Constant:
|
||||
0:211 2 (const uint)
|
||||
0:212 subgroupClusteredAnd ( global 4-component vector of uint)
|
||||
0:212 'ballot' ( temp 4-component vector of uint)
|
||||
0:212 Constant:
|
||||
0:212 2 (const uint)
|
||||
0:213 subgroupClusteredOr ( global 4-component vector of uint)
|
||||
0:213 'ballot' ( temp 4-component vector of uint)
|
||||
0:213 Constant:
|
||||
0:213 2 (const uint)
|
||||
0:214 subgroupClusteredXor ( global 4-component vector of uint)
|
||||
0:214 'ballot' ( temp 4-component vector of uint)
|
||||
0:214 Constant:
|
||||
0:214 2 (const uint)
|
||||
0:218 Function Definition: quad_works(vf4; ( global void)
|
||||
0:218 Function Parameters:
|
||||
0:218 'f4' ( in 4-component vector of float)
|
||||
0:220 Sequence
|
||||
0:220 subgroupQuadBroadcast ( global 4-component vector of float)
|
||||
0:220 'f4' ( in 4-component vector of float)
|
||||
0:220 Constant:
|
||||
0:220 0 (const uint)
|
||||
0:221 subgroupQuadSwapHorizontal ( global 4-component vector of float)
|
||||
0:221 'f4' ( in 4-component vector of float)
|
||||
0:222 subgroupQuadSwapVertical ( global 4-component vector of float)
|
||||
0:222 'f4' ( in 4-component vector of float)
|
||||
0:223 subgroupQuadSwapDiagonal ( global 4-component vector of float)
|
||||
0:223 'f4' ( in 4-component vector of float)
|
||||
0:227 Function Definition: partitioned_works(vf4; ( global void)
|
||||
0:227 Function Parameters:
|
||||
0:227 'f4' ( in 4-component vector of float)
|
||||
0:229 Sequence
|
||||
0:229 Sequence
|
||||
0:229 move second child to first child ( temp 4-component vector of uint)
|
||||
0:229 'parti' ( temp 4-component vector of uint)
|
||||
0:229 subgroupPartitionNV ( global 4-component vector of uint)
|
||||
0:229 'f4' ( in 4-component vector of float)
|
||||
0:230 Sequence
|
||||
0:230 move second child to first child ( temp 4-component vector of uint)
|
||||
0:230 'ballot' ( temp 4-component vector of uint)
|
||||
0:230 Constant:
|
||||
0:230 85 (const uint)
|
||||
0:230 0 (const uint)
|
||||
0:230 0 (const uint)
|
||||
0:230 0 (const uint)
|
||||
0:231 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:231 'f4' ( in 4-component vector of float)
|
||||
0:231 'parti' ( temp 4-component vector of uint)
|
||||
0:232 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:232 'f4' ( in 4-component vector of float)
|
||||
0:232 'parti' ( temp 4-component vector of uint)
|
||||
0:233 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:233 'f4' ( in 4-component vector of float)
|
||||
0:233 'parti' ( temp 4-component vector of uint)
|
||||
0:234 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:234 'f4' ( in 4-component vector of float)
|
||||
0:234 'parti' ( temp 4-component vector of uint)
|
||||
0:235 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:235 'ballot' ( temp 4-component vector of uint)
|
||||
0:235 'parti' ( temp 4-component vector of uint)
|
||||
0:236 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:236 'ballot' ( temp 4-component vector of uint)
|
||||
0:236 'parti' ( temp 4-component vector of uint)
|
||||
0:237 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:237 'ballot' ( temp 4-component vector of uint)
|
||||
0:237 'parti' ( temp 4-component vector of uint)
|
||||
0:238 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:238 'f4' ( in 4-component vector of float)
|
||||
0:238 'parti' ( temp 4-component vector of uint)
|
||||
0:239 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:239 'f4' ( in 4-component vector of float)
|
||||
0:239 'parti' ( temp 4-component vector of uint)
|
||||
0:240 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:240 'f4' ( in 4-component vector of float)
|
||||
0:240 'parti' ( temp 4-component vector of uint)
|
||||
0:241 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:241 'f4' ( in 4-component vector of float)
|
||||
0:241 'parti' ( temp 4-component vector of uint)
|
||||
0:242 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:242 'ballot' ( temp 4-component vector of uint)
|
||||
0:242 'parti' ( temp 4-component vector of uint)
|
||||
0:243 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:243 'ballot' ( temp 4-component vector of uint)
|
||||
0:243 'parti' ( temp 4-component vector of uint)
|
||||
0:244 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:244 'ballot' ( temp 4-component vector of uint)
|
||||
0:244 'parti' ( temp 4-component vector of uint)
|
||||
0:245 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:245 'f4' ( in 4-component vector of float)
|
||||
0:245 'parti' ( temp 4-component vector of uint)
|
||||
0:246 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:246 'f4' ( in 4-component vector of float)
|
||||
0:246 'parti' ( temp 4-component vector of uint)
|
||||
0:247 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:247 'f4' ( in 4-component vector of float)
|
||||
0:247 'parti' ( temp 4-component vector of uint)
|
||||
0:248 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:248 'f4' ( in 4-component vector of float)
|
||||
0:248 'parti' ( temp 4-component vector of uint)
|
||||
0:249 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:249 'ballot' ( temp 4-component vector of uint)
|
||||
0:249 'parti' ( temp 4-component vector of uint)
|
||||
0:250 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:250 'ballot' ( temp 4-component vector of uint)
|
||||
0:250 'parti' ( temp 4-component vector of uint)
|
||||
0:251 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:251 'ballot' ( temp 4-component vector of uint)
|
||||
0:251 'parti' ( temp 4-component vector of uint)
|
||||
0:? Linker Objects
|
||||
0:? 'iAttr' ( hitAttributeNV 4-component vector of float)
|
||||
|
||||
|
||||
Linked intersection stage:
|
||||
|
||||
|
||||
Shader version: 460
|
||||
Requested GL_KHR_shader_subgroup_arithmetic
|
||||
Requested GL_KHR_shader_subgroup_ballot
|
||||
Requested GL_KHR_shader_subgroup_basic
|
||||
Requested GL_KHR_shader_subgroup_clustered
|
||||
Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:108 Function Definition: main( ( global void)
|
||||
0:108 Function Parameters:
|
||||
0:110 Sequence
|
||||
0:110 Sequence
|
||||
0:110 move second child to first child ( temp 3-component vector of uint)
|
||||
0:110 'v0' ( temp 3-component vector of uint)
|
||||
0:110 'gl_LaunchIDNV' ( in 3-component vector of uint LaunchIdNV)
|
||||
0:111 Sequence
|
||||
0:111 move second child to first child ( temp 3-component vector of uint)
|
||||
0:111 'v1' ( temp 3-component vector of uint)
|
||||
0:111 'gl_LaunchSizeNV' ( in 3-component vector of uint LaunchSizeNV)
|
||||
0:112 Sequence
|
||||
0:112 move second child to first child ( temp int)
|
||||
0:112 'v2' ( temp int)
|
||||
0:112 'gl_PrimitiveID' ( in int PrimitiveID)
|
||||
0:113 Sequence
|
||||
0:113 move second child to first child ( temp int)
|
||||
0:113 'v3' ( temp int)
|
||||
0:113 'gl_InstanceID' ( in int InstanceId)
|
||||
0:114 Sequence
|
||||
0:114 move second child to first child ( temp int)
|
||||
0:114 'v4' ( temp int)
|
||||
0:114 'gl_InstanceCustomIndexNV' ( in int InstanceCustomIndexNV)
|
||||
0:115 Sequence
|
||||
0:115 move second child to first child ( temp 3-component vector of float)
|
||||
0:115 'v5' ( temp 3-component vector of float)
|
||||
0:115 'gl_WorldRayOriginNV' ( in 3-component vector of float WorldRayOriginNV)
|
||||
0:116 Sequence
|
||||
0:116 move second child to first child ( temp 3-component vector of float)
|
||||
0:116 'v6' ( temp 3-component vector of float)
|
||||
0:116 'gl_WorldRayDirectionNV' ( in 3-component vector of float WorldRayDirectionNV)
|
||||
0:117 Sequence
|
||||
0:117 move second child to first child ( temp 3-component vector of float)
|
||||
0:117 'v7' ( temp 3-component vector of float)
|
||||
0:117 'gl_ObjectRayOriginNV' ( in 3-component vector of float ObjectRayOriginNV)
|
||||
0:118 Sequence
|
||||
0:118 move second child to first child ( temp 3-component vector of float)
|
||||
0:118 'v8' ( temp 3-component vector of float)
|
||||
0:118 'gl_ObjectRayDirectionNV' ( in 3-component vector of float ObjectRayDirectionNV)
|
||||
0:119 Sequence
|
||||
0:119 move second child to first child ( temp float)
|
||||
0:119 'v9' ( temp float)
|
||||
0:119 'gl_RayTminNV' ( in float ObjectRayTminNV)
|
||||
0:120 Sequence
|
||||
0:120 move second child to first child ( temp float)
|
||||
0:120 'v10' ( temp float)
|
||||
0:120 'gl_RayTmaxNV' ( in float ObjectRayTmaxNV)
|
||||
0:121 Sequence
|
||||
0:121 move second child to first child ( temp 4X3 matrix of float)
|
||||
0:121 'v11' ( temp 4X3 matrix of float)
|
||||
0:121 'gl_ObjectToWorldNV' ( in 4X3 matrix of float ObjectToWorldNV)
|
||||
0:122 Sequence
|
||||
0:122 move second child to first child ( temp 4X3 matrix of float)
|
||||
0:122 'v12' ( temp 4X3 matrix of float)
|
||||
0:122 'gl_WorldToObjectNV' ( in 4X3 matrix of float WorldToObjectNV)
|
||||
0:123 move second child to first child ( temp 4-component vector of float)
|
||||
0:123 'iAttr' ( hitAttributeNV 4-component vector of float)
|
||||
0:123 Constant:
|
||||
0:123 0.500000
|
||||
0:123 0.500000
|
||||
0:123 0.000000
|
||||
0:123 1.000000
|
||||
0:124 reportIntersectionNV ( global bool)
|
||||
0:124 Constant:
|
||||
0:124 0.500000
|
||||
0:124 Constant:
|
||||
0:124 1 (const uint)
|
||||
0:? Linker Objects
|
||||
0:? 'iAttr' ( hitAttributeNV 4-component vector of float)
|
||||
|
790
Test/baseResults/glsl.460.subgroup.rmiss.out
Normal file
790
Test/baseResults/glsl.460.subgroup.rmiss.out
Normal file
@ -0,0 +1,790 @@
|
||||
glsl.460.subgroup.rmiss
|
||||
ERROR: 0:8: 'gl_SubgroupSize' : undeclared identifier
|
||||
ERROR: 0:9: 'gl_SubgroupInvocationID' : undeclared identifier
|
||||
ERROR: 0:10: 'subgroupBarrier' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:11: 'subgroupMemoryBarrier' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:12: 'subgroupMemoryBarrierBuffer' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:13: 'subgroupMemoryBarrierImage' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:14: 'subgroupElect' : required extension not requested: GL_KHR_shader_subgroup_basic
|
||||
ERROR: 0:15: 'gl_NumSubgroups' : undeclared identifier
|
||||
ERROR: 0:16: 'gl_SubgroupID' : undeclared identifier
|
||||
ERROR: 0:17: 'subgroupMemoryBarrierShared' : no matching overloaded function found
|
||||
ERROR: 0:19: 'subgroupAll' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:20: 'subgroupAny' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:21: 'subgroupAllEqual' : required extension not requested: GL_KHR_shader_subgroup_vote
|
||||
ERROR: 0:23: 'gl_SubgroupEqMask' : undeclared identifier
|
||||
ERROR: 0:24: 'gl_SubgroupGeMask' : undeclared identifier
|
||||
ERROR: 0:25: 'gl_SubgroupGtMask' : undeclared identifier
|
||||
ERROR: 0:26: 'gl_SubgroupLeMask' : undeclared identifier
|
||||
ERROR: 0:27: 'gl_SubgroupLtMask' : undeclared identifier
|
||||
ERROR: 0:28: 'subgroupBroadcast' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:29: 'subgroupBroadcastFirst' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:30: 'subgroupBallot' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:31: 'subgroupInverseBallot' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:32: 'subgroupBallotBitExtract' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:33: 'subgroupBallotBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:34: 'subgroupBallotInclusiveBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:35: 'subgroupBallotExclusiveBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:36: 'subgroupBallotFindLSB' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:37: 'subgroupBallotFindMSB' : required extension not requested: GL_KHR_shader_subgroup_ballot
|
||||
ERROR: 0:39: 'subgroupShuffle' : required extension not requested: GL_KHR_shader_subgroup_shuffle
|
||||
ERROR: 0:40: 'subgroupShuffleXor' : required extension not requested: GL_KHR_shader_subgroup_shuffle
|
||||
ERROR: 0:41: 'subgroupShuffleUp' : required extension not requested: GL_KHR_shader_subgroup_shuffle_relative
|
||||
ERROR: 0:42: 'subgroupShuffleDown' : required extension not requested: GL_KHR_shader_subgroup_shuffle_relative
|
||||
ERROR: 0:44: 'subgroupAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:45: 'subgroupMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:46: 'subgroupMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:47: 'subgroupMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:48: 'subgroupAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:49: 'subgroupOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:50: 'subgroupXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:51: 'subgroupInclusiveAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:52: 'subgroupInclusiveMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:53: 'subgroupInclusiveMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:54: 'subgroupInclusiveMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:55: 'subgroupInclusiveAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:56: 'subgroupInclusiveOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:57: 'subgroupInclusiveXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:58: 'subgroupExclusiveAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:59: 'subgroupExclusiveMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:60: 'subgroupExclusiveMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:61: 'subgroupExclusiveMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:62: 'subgroupExclusiveAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:63: 'subgroupExclusiveOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:64: 'subgroupExclusiveXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
|
||||
ERROR: 0:66: 'subgroupClusteredAdd' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:67: 'subgroupClusteredMul' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:68: 'subgroupClusteredMin' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:69: 'subgroupClusteredMax' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:70: 'subgroupClusteredAnd' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:71: 'subgroupClusteredOr' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:72: 'subgroupClusteredXor' : required extension not requested: GL_KHR_shader_subgroup_clustered
|
||||
ERROR: 0:74: 'subgroupQuadBroadcast' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:75: 'subgroupQuadSwapHorizontal' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:76: 'subgroupQuadSwapVertical' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:77: 'subgroupQuadSwapDiagonal' : required extension not requested: GL_KHR_shader_subgroup_quad
|
||||
ERROR: 0:79: 'subgroupPartitionNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:80: 'subgroupPartitionedAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:81: 'subgroupPartitionedMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:82: 'subgroupPartitionedMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:83: 'subgroupPartitionedMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:84: 'subgroupPartitionedAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:85: 'subgroupPartitionedOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:86: 'subgroupPartitionedXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:87: 'subgroupPartitionedInclusiveAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:88: 'subgroupPartitionedInclusiveMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:89: 'subgroupPartitionedInclusiveMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:90: 'subgroupPartitionedInclusiveMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:91: 'subgroupPartitionedInclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:92: 'subgroupPartitionedInclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:93: 'subgroupPartitionedInclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:94: 'subgroupPartitionedExclusiveAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:95: 'subgroupPartitionedExclusiveMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:96: 'subgroupPartitionedExclusiveMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:97: 'subgroupPartitionedExclusiveMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:98: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:99: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:100: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
|
||||
ERROR: 0:125: 'gl_SubgroupSize' : undeclared identifier
|
||||
ERROR: 0:126: 'gl_SubgroupInvocationID' : undeclared identifier
|
||||
ERROR: 0:136: 'gl_SubgroupEqMask' : undeclared identifier
|
||||
ERROR: 0:137: 'gl_SubgroupGeMask' : undeclared identifier
|
||||
ERROR: 0:138: 'gl_SubgroupGtMask' : undeclared identifier
|
||||
ERROR: 0:139: 'gl_SubgroupLeMask' : undeclared identifier
|
||||
ERROR: 0:140: 'gl_SubgroupLtMask' : undeclared identifier
|
||||
ERROR: 93 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 460
|
||||
Requested GL_KHR_shader_subgroup_arithmetic
|
||||
Requested GL_KHR_shader_subgroup_ballot
|
||||
Requested GL_KHR_shader_subgroup_basic
|
||||
Requested GL_KHR_shader_subgroup_clustered
|
||||
Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:5 Function Definition: undeclared_errors(vf4; ( global 4-component vector of float)
|
||||
0:5 Function Parameters:
|
||||
0:5 'f4' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:8 'gl_SubgroupSize' ( temp float)
|
||||
0:9 'gl_SubgroupInvocationID' ( temp float)
|
||||
0:10 subgroupBarrier ( global void)
|
||||
0:11 subgroupMemoryBarrier ( global void)
|
||||
0:12 subgroupMemoryBarrierBuffer ( global void)
|
||||
0:13 subgroupMemoryBarrierImage ( global void)
|
||||
0:14 subgroupElect ( global bool)
|
||||
0:15 'gl_NumSubgroups' ( temp float)
|
||||
0:16 'gl_SubgroupID' ( temp float)
|
||||
0:17 Constant:
|
||||
0:17 0.000000
|
||||
0:19 subgroupAll ( global bool)
|
||||
0:19 Constant:
|
||||
0:19 true (const bool)
|
||||
0:20 subgroupAny ( global bool)
|
||||
0:20 Constant:
|
||||
0:20 false (const bool)
|
||||
0:21 subgroupAllEqual ( global bool)
|
||||
0:21 'f4' ( in 4-component vector of float)
|
||||
0:23 'gl_SubgroupEqMask' ( temp float)
|
||||
0:24 'gl_SubgroupGeMask' ( temp float)
|
||||
0:25 'gl_SubgroupGtMask' ( temp float)
|
||||
0:26 'gl_SubgroupLeMask' ( temp float)
|
||||
0:27 'gl_SubgroupLtMask' ( temp float)
|
||||
0:28 subgroupBroadcast ( global 4-component vector of float)
|
||||
0:28 'f4' ( in 4-component vector of float)
|
||||
0:28 Constant:
|
||||
0:28 0 (const uint)
|
||||
0:29 subgroupBroadcastFirst ( global 4-component vector of float)
|
||||
0:29 'f4' ( in 4-component vector of float)
|
||||
0:30 Sequence
|
||||
0:30 move second child to first child ( temp 4-component vector of uint)
|
||||
0:30 'ballot' ( temp 4-component vector of uint)
|
||||
0:30 subgroupBallot ( global 4-component vector of uint)
|
||||
0:30 Constant:
|
||||
0:30 false (const bool)
|
||||
0:31 subgroupInverseBallot ( global bool)
|
||||
0:31 Constant:
|
||||
0:31 1 (const uint)
|
||||
0:31 1 (const uint)
|
||||
0:31 1 (const uint)
|
||||
0:31 1 (const uint)
|
||||
0:32 subgroupBallotBitExtract ( global bool)
|
||||
0:32 'ballot' ( temp 4-component vector of uint)
|
||||
0:32 Constant:
|
||||
0:32 0 (const uint)
|
||||
0:33 subgroupBallotBitCount ( global uint)
|
||||
0:33 'ballot' ( temp 4-component vector of uint)
|
||||
0:34 subgroupBallotInclusiveBitCount ( global uint)
|
||||
0:34 'ballot' ( temp 4-component vector of uint)
|
||||
0:35 subgroupBallotExclusiveBitCount ( global uint)
|
||||
0:35 'ballot' ( temp 4-component vector of uint)
|
||||
0:36 subgroupBallotFindLSB ( global uint)
|
||||
0:36 'ballot' ( temp 4-component vector of uint)
|
||||
0:37 subgroupBallotFindMSB ( global uint)
|
||||
0:37 'ballot' ( temp 4-component vector of uint)
|
||||
0:39 subgroupShuffle ( global 4-component vector of float)
|
||||
0:39 'f4' ( in 4-component vector of float)
|
||||
0:39 Constant:
|
||||
0:39 0 (const uint)
|
||||
0:40 subgroupShuffleXor ( global 4-component vector of float)
|
||||
0:40 'f4' ( in 4-component vector of float)
|
||||
0:40 Constant:
|
||||
0:40 1 (const uint)
|
||||
0:41 subgroupShuffleUp ( global 4-component vector of float)
|
||||
0:41 'f4' ( in 4-component vector of float)
|
||||
0:41 Constant:
|
||||
0:41 1 (const uint)
|
||||
0:42 subgroupShuffleDown ( global 4-component vector of float)
|
||||
0:42 'f4' ( in 4-component vector of float)
|
||||
0:42 Constant:
|
||||
0:42 1 (const uint)
|
||||
0:44 move second child to first child ( temp 4-component vector of float)
|
||||
0:44 'result' ( temp 4-component vector of float)
|
||||
0:44 subgroupAdd ( global 4-component vector of float)
|
||||
0:44 'f4' ( in 4-component vector of float)
|
||||
0:45 subgroupMul ( global 4-component vector of float)
|
||||
0:45 'f4' ( in 4-component vector of float)
|
||||
0:46 subgroupMin ( global 4-component vector of float)
|
||||
0:46 'f4' ( in 4-component vector of float)
|
||||
0:47 subgroupMax ( global 4-component vector of float)
|
||||
0:47 'f4' ( in 4-component vector of float)
|
||||
0:48 subgroupAnd ( global 4-component vector of uint)
|
||||
0:48 'ballot' ( temp 4-component vector of uint)
|
||||
0:49 subgroupOr ( global 4-component vector of uint)
|
||||
0:49 'ballot' ( temp 4-component vector of uint)
|
||||
0:50 subgroupXor ( global 4-component vector of uint)
|
||||
0:50 'ballot' ( temp 4-component vector of uint)
|
||||
0:51 subgroupInclusiveAdd ( global 4-component vector of float)
|
||||
0:51 'f4' ( in 4-component vector of float)
|
||||
0:52 subgroupInclusiveMul ( global 4-component vector of float)
|
||||
0:52 'f4' ( in 4-component vector of float)
|
||||
0:53 subgroupInclusiveMin ( global 4-component vector of float)
|
||||
0:53 'f4' ( in 4-component vector of float)
|
||||
0:54 subgroupInclusiveMax ( global 4-component vector of float)
|
||||
0:54 'f4' ( in 4-component vector of float)
|
||||
0:55 subgroupInclusiveAnd ( global 4-component vector of uint)
|
||||
0:55 'ballot' ( temp 4-component vector of uint)
|
||||
0:56 subgroupInclusiveOr ( global 4-component vector of uint)
|
||||
0:56 'ballot' ( temp 4-component vector of uint)
|
||||
0:57 subgroupInclusiveXor ( global 4-component vector of uint)
|
||||
0:57 'ballot' ( temp 4-component vector of uint)
|
||||
0:58 subgroupExclusiveAdd ( global 4-component vector of float)
|
||||
0:58 'f4' ( in 4-component vector of float)
|
||||
0:59 subgroupExclusiveMul ( global 4-component vector of float)
|
||||
0:59 'f4' ( in 4-component vector of float)
|
||||
0:60 subgroupExclusiveMin ( global 4-component vector of float)
|
||||
0:60 'f4' ( in 4-component vector of float)
|
||||
0:61 subgroupExclusiveMax ( global 4-component vector of float)
|
||||
0:61 'f4' ( in 4-component vector of float)
|
||||
0:62 subgroupExclusiveAnd ( global 4-component vector of uint)
|
||||
0:62 'ballot' ( temp 4-component vector of uint)
|
||||
0:63 subgroupExclusiveOr ( global 4-component vector of uint)
|
||||
0:63 'ballot' ( temp 4-component vector of uint)
|
||||
0:64 subgroupExclusiveXor ( global 4-component vector of uint)
|
||||
0:64 'ballot' ( temp 4-component vector of uint)
|
||||
0:66 subgroupClusteredAdd ( global 4-component vector of float)
|
||||
0:66 'f4' ( in 4-component vector of float)
|
||||
0:66 Constant:
|
||||
0:66 2 (const uint)
|
||||
0:67 subgroupClusteredMul ( global 4-component vector of float)
|
||||
0:67 'f4' ( in 4-component vector of float)
|
||||
0:67 Constant:
|
||||
0:67 2 (const uint)
|
||||
0:68 subgroupClusteredMin ( global 4-component vector of float)
|
||||
0:68 'f4' ( in 4-component vector of float)
|
||||
0:68 Constant:
|
||||
0:68 2 (const uint)
|
||||
0:69 subgroupClusteredMax ( global 4-component vector of float)
|
||||
0:69 'f4' ( in 4-component vector of float)
|
||||
0:69 Constant:
|
||||
0:69 2 (const uint)
|
||||
0:70 subgroupClusteredAnd ( global 4-component vector of uint)
|
||||
0:70 'ballot' ( temp 4-component vector of uint)
|
||||
0:70 Constant:
|
||||
0:70 2 (const uint)
|
||||
0:71 subgroupClusteredOr ( global 4-component vector of uint)
|
||||
0:71 'ballot' ( temp 4-component vector of uint)
|
||||
0:71 Constant:
|
||||
0:71 2 (const uint)
|
||||
0:72 subgroupClusteredXor ( global 4-component vector of uint)
|
||||
0:72 'ballot' ( temp 4-component vector of uint)
|
||||
0:72 Constant:
|
||||
0:72 2 (const uint)
|
||||
0:74 subgroupQuadBroadcast ( global 4-component vector of float)
|
||||
0:74 'f4' ( in 4-component vector of float)
|
||||
0:74 Constant:
|
||||
0:74 0 (const uint)
|
||||
0:75 subgroupQuadSwapHorizontal ( global 4-component vector of float)
|
||||
0:75 'f4' ( in 4-component vector of float)
|
||||
0:76 subgroupQuadSwapVertical ( global 4-component vector of float)
|
||||
0:76 'f4' ( in 4-component vector of float)
|
||||
0:77 subgroupQuadSwapDiagonal ( global 4-component vector of float)
|
||||
0:77 'f4' ( in 4-component vector of float)
|
||||
0:79 Sequence
|
||||
0:79 move second child to first child ( temp 4-component vector of uint)
|
||||
0:79 'parti' ( temp 4-component vector of uint)
|
||||
0:79 subgroupPartitionNV ( global 4-component vector of uint)
|
||||
0:79 'f4' ( in 4-component vector of float)
|
||||
0:80 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:80 'f4' ( in 4-component vector of float)
|
||||
0:80 'parti' ( temp 4-component vector of uint)
|
||||
0:81 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:81 'f4' ( in 4-component vector of float)
|
||||
0:81 'parti' ( temp 4-component vector of uint)
|
||||
0:82 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:82 'f4' ( in 4-component vector of float)
|
||||
0:82 'parti' ( temp 4-component vector of uint)
|
||||
0:83 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:83 'f4' ( in 4-component vector of float)
|
||||
0:83 'parti' ( temp 4-component vector of uint)
|
||||
0:84 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:84 'ballot' ( temp 4-component vector of uint)
|
||||
0:84 'parti' ( temp 4-component vector of uint)
|
||||
0:85 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:85 'ballot' ( temp 4-component vector of uint)
|
||||
0:85 'parti' ( temp 4-component vector of uint)
|
||||
0:86 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:86 'ballot' ( temp 4-component vector of uint)
|
||||
0:86 'parti' ( temp 4-component vector of uint)
|
||||
0:87 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:87 'f4' ( in 4-component vector of float)
|
||||
0:87 'parti' ( temp 4-component vector of uint)
|
||||
0:88 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:88 'f4' ( in 4-component vector of float)
|
||||
0:88 'parti' ( temp 4-component vector of uint)
|
||||
0:89 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:89 'f4' ( in 4-component vector of float)
|
||||
0:89 'parti' ( temp 4-component vector of uint)
|
||||
0:90 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:90 'f4' ( in 4-component vector of float)
|
||||
0:90 'parti' ( temp 4-component vector of uint)
|
||||
0:91 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:91 'ballot' ( temp 4-component vector of uint)
|
||||
0:91 'parti' ( temp 4-component vector of uint)
|
||||
0:92 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:92 'ballot' ( temp 4-component vector of uint)
|
||||
0:92 'parti' ( temp 4-component vector of uint)
|
||||
0:93 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:93 'ballot' ( temp 4-component vector of uint)
|
||||
0:93 'parti' ( temp 4-component vector of uint)
|
||||
0:94 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:94 'f4' ( in 4-component vector of float)
|
||||
0:94 'parti' ( temp 4-component vector of uint)
|
||||
0:95 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:95 'f4' ( in 4-component vector of float)
|
||||
0:95 'parti' ( temp 4-component vector of uint)
|
||||
0:96 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:96 'f4' ( in 4-component vector of float)
|
||||
0:96 'parti' ( temp 4-component vector of uint)
|
||||
0:97 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:97 'f4' ( in 4-component vector of float)
|
||||
0:97 'parti' ( temp 4-component vector of uint)
|
||||
0:98 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:98 'ballot' ( temp 4-component vector of uint)
|
||||
0:98 'parti' ( temp 4-component vector of uint)
|
||||
0:99 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:99 'ballot' ( temp 4-component vector of uint)
|
||||
0:99 'parti' ( temp 4-component vector of uint)
|
||||
0:100 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:100 'ballot' ( temp 4-component vector of uint)
|
||||
0:100 'parti' ( temp 4-component vector of uint)
|
||||
0:102 Branch: Return with expression
|
||||
0:102 'result' ( temp 4-component vector of float)
|
||||
0:109 Function Definition: main( ( global void)
|
||||
0:109 Function Parameters:
|
||||
0:111 Sequence
|
||||
0:111 Sequence
|
||||
0:111 move second child to first child ( temp 3-component vector of uint)
|
||||
0:111 'v0' ( temp 3-component vector of uint)
|
||||
0:111 'gl_LaunchIDNV' ( in 3-component vector of uint LaunchIdNV)
|
||||
0:112 Sequence
|
||||
0:112 move second child to first child ( temp 3-component vector of uint)
|
||||
0:112 'v1' ( temp 3-component vector of uint)
|
||||
0:112 'gl_LaunchSizeNV' ( in 3-component vector of uint LaunchSizeNV)
|
||||
0:113 Sequence
|
||||
0:113 move second child to first child ( temp 3-component vector of float)
|
||||
0:113 'v2' ( temp 3-component vector of float)
|
||||
0:113 'gl_WorldRayOriginNV' ( in 3-component vector of float WorldRayOriginNV)
|
||||
0:114 Sequence
|
||||
0:114 move second child to first child ( temp 3-component vector of float)
|
||||
0:114 'v3' ( temp 3-component vector of float)
|
||||
0:114 'gl_WorldRayDirectionNV' ( in 3-component vector of float WorldRayDirectionNV)
|
||||
0:115 Sequence
|
||||
0:115 move second child to first child ( temp 3-component vector of float)
|
||||
0:115 'v4' ( temp 3-component vector of float)
|
||||
0:115 'gl_ObjectRayOriginNV' ( in 3-component vector of float ObjectRayOriginNV)
|
||||
0:116 Sequence
|
||||
0:116 move second child to first child ( temp 3-component vector of float)
|
||||
0:116 'v5' ( temp 3-component vector of float)
|
||||
0:116 'gl_ObjectRayDirectionNV' ( in 3-component vector of float ObjectRayDirectionNV)
|
||||
0:117 Sequence
|
||||
0:117 move second child to first child ( temp float)
|
||||
0:117 'v6' ( temp float)
|
||||
0:117 'gl_RayTminNV' ( in float ObjectRayTminNV)
|
||||
0:118 Sequence
|
||||
0:118 move second child to first child ( temp float)
|
||||
0:118 'v7' ( temp float)
|
||||
0:118 'gl_RayTmaxNV' ( in float ObjectRayTmaxNV)
|
||||
0:119 traceNV ( global void)
|
||||
0:119 'accNV' (layout( set=0 binding=0) uniform accelerationStructureNV)
|
||||
0:119 Constant:
|
||||
0:119 0 (const uint)
|
||||
0:119 Constant:
|
||||
0:119 1 (const uint)
|
||||
0:119 Constant:
|
||||
0:119 2 (const uint)
|
||||
0:119 Constant:
|
||||
0:119 3 (const uint)
|
||||
0:119 Constant:
|
||||
0:119 0 (const uint)
|
||||
0:119 Constant:
|
||||
0:119 0.500000
|
||||
0:119 0.500000
|
||||
0:119 0.500000
|
||||
0:119 Constant:
|
||||
0:119 0.500000
|
||||
0:119 Constant:
|
||||
0:119 1.000000
|
||||
0:119 1.000000
|
||||
0:119 1.000000
|
||||
0:119 Constant:
|
||||
0:119 0.750000
|
||||
0:119 Constant:
|
||||
0:119 1 (const int)
|
||||
0:123 Function Definition: basic_works( ( global void)
|
||||
0:123 Function Parameters:
|
||||
0:125 Sequence
|
||||
0:125 'gl_SubgroupSize' ( temp float)
|
||||
0:126 'gl_SubgroupInvocationID' ( temp float)
|
||||
0:127 subgroupBarrier ( global void)
|
||||
0:128 subgroupMemoryBarrier ( global void)
|
||||
0:129 subgroupMemoryBarrierBuffer ( global void)
|
||||
0:130 subgroupMemoryBarrierImage ( global void)
|
||||
0:131 subgroupElect ( global bool)
|
||||
0:135 Function Definition: ballot_works(vf4; ( global void)
|
||||
0:135 Function Parameters:
|
||||
0:135 'f4' ( in 4-component vector of float)
|
||||
0:136 Sequence
|
||||
0:136 'gl_SubgroupEqMask' ( temp float)
|
||||
0:137 'gl_SubgroupGeMask' ( temp float)
|
||||
0:138 'gl_SubgroupGtMask' ( temp float)
|
||||
0:139 'gl_SubgroupLeMask' ( temp float)
|
||||
0:140 'gl_SubgroupLtMask' ( temp float)
|
||||
0:141 subgroupBroadcast ( global 4-component vector of float)
|
||||
0:141 'f4' ( in 4-component vector of float)
|
||||
0:141 Constant:
|
||||
0:141 0 (const uint)
|
||||
0:142 subgroupBroadcastFirst ( global 4-component vector of float)
|
||||
0:142 'f4' ( in 4-component vector of float)
|
||||
0:143 Sequence
|
||||
0:143 move second child to first child ( temp 4-component vector of uint)
|
||||
0:143 'ballot' ( temp 4-component vector of uint)
|
||||
0:143 subgroupBallot ( global 4-component vector of uint)
|
||||
0:143 Constant:
|
||||
0:143 false (const bool)
|
||||
0:144 subgroupInverseBallot ( global bool)
|
||||
0:144 Constant:
|
||||
0:144 1 (const uint)
|
||||
0:144 1 (const uint)
|
||||
0:144 1 (const uint)
|
||||
0:144 1 (const uint)
|
||||
0:145 subgroupBallotBitExtract ( global bool)
|
||||
0:145 'ballot' ( temp 4-component vector of uint)
|
||||
0:145 Constant:
|
||||
0:145 0 (const uint)
|
||||
0:146 subgroupBallotBitCount ( global uint)
|
||||
0:146 'ballot' ( temp 4-component vector of uint)
|
||||
0:147 subgroupBallotInclusiveBitCount ( global uint)
|
||||
0:147 'ballot' ( temp 4-component vector of uint)
|
||||
0:148 subgroupBallotExclusiveBitCount ( global uint)
|
||||
0:148 'ballot' ( temp 4-component vector of uint)
|
||||
0:149 subgroupBallotFindLSB ( global uint)
|
||||
0:149 'ballot' ( temp 4-component vector of uint)
|
||||
0:150 subgroupBallotFindMSB ( global uint)
|
||||
0:150 'ballot' ( temp 4-component vector of uint)
|
||||
0:154 Function Definition: vote_works(vf4; ( global void)
|
||||
0:154 Function Parameters:
|
||||
0:154 'f4' ( in 4-component vector of float)
|
||||
0:156 Sequence
|
||||
0:156 subgroupAll ( global bool)
|
||||
0:156 Constant:
|
||||
0:156 true (const bool)
|
||||
0:157 subgroupAny ( global bool)
|
||||
0:157 Constant:
|
||||
0:157 false (const bool)
|
||||
0:158 subgroupAllEqual ( global bool)
|
||||
0:158 'f4' ( in 4-component vector of float)
|
||||
0:163 Function Definition: shuffle_works(vf4; ( global void)
|
||||
0:163 Function Parameters:
|
||||
0:163 'f4' ( in 4-component vector of float)
|
||||
0:165 Sequence
|
||||
0:165 subgroupShuffle ( global 4-component vector of float)
|
||||
0:165 'f4' ( in 4-component vector of float)
|
||||
0:165 Constant:
|
||||
0:165 0 (const uint)
|
||||
0:166 subgroupShuffleXor ( global 4-component vector of float)
|
||||
0:166 'f4' ( in 4-component vector of float)
|
||||
0:166 Constant:
|
||||
0:166 1 (const uint)
|
||||
0:167 subgroupShuffleUp ( global 4-component vector of float)
|
||||
0:167 'f4' ( in 4-component vector of float)
|
||||
0:167 Constant:
|
||||
0:167 1 (const uint)
|
||||
0:168 subgroupShuffleDown ( global 4-component vector of float)
|
||||
0:168 'f4' ( in 4-component vector of float)
|
||||
0:168 Constant:
|
||||
0:168 1 (const uint)
|
||||
0:172 Function Definition: arith_works(vf4; ( global void)
|
||||
0:172 Function Parameters:
|
||||
0:172 'f4' ( in 4-component vector of float)
|
||||
0:? Sequence
|
||||
0:175 subgroupAdd ( global 4-component vector of float)
|
||||
0:175 'f4' ( in 4-component vector of float)
|
||||
0:176 subgroupMul ( global 4-component vector of float)
|
||||
0:176 'f4' ( in 4-component vector of float)
|
||||
0:177 subgroupMin ( global 4-component vector of float)
|
||||
0:177 'f4' ( in 4-component vector of float)
|
||||
0:178 subgroupMax ( global 4-component vector of float)
|
||||
0:178 'f4' ( in 4-component vector of float)
|
||||
0:179 subgroupAnd ( global 4-component vector of uint)
|
||||
0:179 'ballot' ( temp 4-component vector of uint)
|
||||
0:180 subgroupOr ( global 4-component vector of uint)
|
||||
0:180 'ballot' ( temp 4-component vector of uint)
|
||||
0:181 subgroupXor ( global 4-component vector of uint)
|
||||
0:181 'ballot' ( temp 4-component vector of uint)
|
||||
0:182 subgroupInclusiveAdd ( global 4-component vector of float)
|
||||
0:182 'f4' ( in 4-component vector of float)
|
||||
0:183 subgroupInclusiveMul ( global 4-component vector of float)
|
||||
0:183 'f4' ( in 4-component vector of float)
|
||||
0:184 subgroupInclusiveMin ( global 4-component vector of float)
|
||||
0:184 'f4' ( in 4-component vector of float)
|
||||
0:185 subgroupInclusiveMax ( global 4-component vector of float)
|
||||
0:185 'f4' ( in 4-component vector of float)
|
||||
0:186 subgroupInclusiveAnd ( global 4-component vector of uint)
|
||||
0:186 'ballot' ( temp 4-component vector of uint)
|
||||
0:187 subgroupInclusiveOr ( global 4-component vector of uint)
|
||||
0:187 'ballot' ( temp 4-component vector of uint)
|
||||
0:188 subgroupInclusiveXor ( global 4-component vector of uint)
|
||||
0:188 'ballot' ( temp 4-component vector of uint)
|
||||
0:189 subgroupExclusiveAdd ( global 4-component vector of float)
|
||||
0:189 'f4' ( in 4-component vector of float)
|
||||
0:190 subgroupExclusiveMul ( global 4-component vector of float)
|
||||
0:190 'f4' ( in 4-component vector of float)
|
||||
0:191 subgroupExclusiveMin ( global 4-component vector of float)
|
||||
0:191 'f4' ( in 4-component vector of float)
|
||||
0:192 subgroupExclusiveMax ( global 4-component vector of float)
|
||||
0:192 'f4' ( in 4-component vector of float)
|
||||
0:193 subgroupExclusiveAnd ( global 4-component vector of uint)
|
||||
0:193 'ballot' ( temp 4-component vector of uint)
|
||||
0:194 subgroupExclusiveOr ( global 4-component vector of uint)
|
||||
0:194 'ballot' ( temp 4-component vector of uint)
|
||||
0:195 subgroupExclusiveXor ( global 4-component vector of uint)
|
||||
0:195 'ballot' ( temp 4-component vector of uint)
|
||||
0:199 Function Definition: clustered_works(vf4; ( global void)
|
||||
0:199 Function Parameters:
|
||||
0:199 'f4' ( in 4-component vector of float)
|
||||
0:201 Sequence
|
||||
0:201 Sequence
|
||||
0:201 move second child to first child ( temp 4-component vector of uint)
|
||||
0:201 'ballot' ( temp 4-component vector of uint)
|
||||
0:201 Constant:
|
||||
0:201 85 (const uint)
|
||||
0:201 0 (const uint)
|
||||
0:201 0 (const uint)
|
||||
0:201 0 (const uint)
|
||||
0:202 subgroupClusteredAdd ( global 4-component vector of float)
|
||||
0:202 'f4' ( in 4-component vector of float)
|
||||
0:202 Constant:
|
||||
0:202 2 (const uint)
|
||||
0:203 subgroupClusteredMul ( global 4-component vector of float)
|
||||
0:203 'f4' ( in 4-component vector of float)
|
||||
0:203 Constant:
|
||||
0:203 2 (const uint)
|
||||
0:204 subgroupClusteredMin ( global 4-component vector of float)
|
||||
0:204 'f4' ( in 4-component vector of float)
|
||||
0:204 Constant:
|
||||
0:204 2 (const uint)
|
||||
0:205 subgroupClusteredMax ( global 4-component vector of float)
|
||||
0:205 'f4' ( in 4-component vector of float)
|
||||
0:205 Constant:
|
||||
0:205 2 (const uint)
|
||||
0:206 subgroupClusteredAnd ( global 4-component vector of uint)
|
||||
0:206 'ballot' ( temp 4-component vector of uint)
|
||||
0:206 Constant:
|
||||
0:206 2 (const uint)
|
||||
0:207 subgroupClusteredOr ( global 4-component vector of uint)
|
||||
0:207 'ballot' ( temp 4-component vector of uint)
|
||||
0:207 Constant:
|
||||
0:207 2 (const uint)
|
||||
0:208 subgroupClusteredXor ( global 4-component vector of uint)
|
||||
0:208 'ballot' ( temp 4-component vector of uint)
|
||||
0:208 Constant:
|
||||
0:208 2 (const uint)
|
||||
0:212 Function Definition: quad_works(vf4; ( global void)
|
||||
0:212 Function Parameters:
|
||||
0:212 'f4' ( in 4-component vector of float)
|
||||
0:214 Sequence
|
||||
0:214 subgroupQuadBroadcast ( global 4-component vector of float)
|
||||
0:214 'f4' ( in 4-component vector of float)
|
||||
0:214 Constant:
|
||||
0:214 0 (const uint)
|
||||
0:215 subgroupQuadSwapHorizontal ( global 4-component vector of float)
|
||||
0:215 'f4' ( in 4-component vector of float)
|
||||
0:216 subgroupQuadSwapVertical ( global 4-component vector of float)
|
||||
0:216 'f4' ( in 4-component vector of float)
|
||||
0:217 subgroupQuadSwapDiagonal ( global 4-component vector of float)
|
||||
0:217 'f4' ( in 4-component vector of float)
|
||||
0:221 Function Definition: partitioned_works(vf4; ( global void)
|
||||
0:221 Function Parameters:
|
||||
0:221 'f4' ( in 4-component vector of float)
|
||||
0:223 Sequence
|
||||
0:223 Sequence
|
||||
0:223 move second child to first child ( temp 4-component vector of uint)
|
||||
0:223 'parti' ( temp 4-component vector of uint)
|
||||
0:223 subgroupPartitionNV ( global 4-component vector of uint)
|
||||
0:223 'f4' ( in 4-component vector of float)
|
||||
0:224 Sequence
|
||||
0:224 move second child to first child ( temp 4-component vector of uint)
|
||||
0:224 'ballot' ( temp 4-component vector of uint)
|
||||
0:224 Constant:
|
||||
0:224 85 (const uint)
|
||||
0:224 0 (const uint)
|
||||
0:224 0 (const uint)
|
||||
0:224 0 (const uint)
|
||||
0:225 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:225 'f4' ( in 4-component vector of float)
|
||||
0:225 'parti' ( temp 4-component vector of uint)
|
||||
0:226 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:226 'f4' ( in 4-component vector of float)
|
||||
0:226 'parti' ( temp 4-component vector of uint)
|
||||
0:227 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:227 'f4' ( in 4-component vector of float)
|
||||
0:227 'parti' ( temp 4-component vector of uint)
|
||||
0:228 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:228 'f4' ( in 4-component vector of float)
|
||||
0:228 'parti' ( temp 4-component vector of uint)
|
||||
0:229 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:229 'ballot' ( temp 4-component vector of uint)
|
||||
0:229 'parti' ( temp 4-component vector of uint)
|
||||
0:230 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:230 'ballot' ( temp 4-component vector of uint)
|
||||
0:230 'parti' ( temp 4-component vector of uint)
|
||||
0:231 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:231 'ballot' ( temp 4-component vector of uint)
|
||||
0:231 'parti' ( temp 4-component vector of uint)
|
||||
0:232 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:232 'f4' ( in 4-component vector of float)
|
||||
0:232 'parti' ( temp 4-component vector of uint)
|
||||
0:233 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:233 'f4' ( in 4-component vector of float)
|
||||
0:233 'parti' ( temp 4-component vector of uint)
|
||||
0:234 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:234 'f4' ( in 4-component vector of float)
|
||||
0:234 'parti' ( temp 4-component vector of uint)
|
||||
0:235 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:235 'f4' ( in 4-component vector of float)
|
||||
0:235 'parti' ( temp 4-component vector of uint)
|
||||
0:236 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:236 'ballot' ( temp 4-component vector of uint)
|
||||
0:236 'parti' ( temp 4-component vector of uint)
|
||||
0:237 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:237 'ballot' ( temp 4-component vector of uint)
|
||||
0:237 'parti' ( temp 4-component vector of uint)
|
||||
0:238 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:238 'ballot' ( temp 4-component vector of uint)
|
||||
0:238 'parti' ( temp 4-component vector of uint)
|
||||
0:239 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:239 'f4' ( in 4-component vector of float)
|
||||
0:239 'parti' ( temp 4-component vector of uint)
|
||||
0:240 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:240 'f4' ( in 4-component vector of float)
|
||||
0:240 'parti' ( temp 4-component vector of uint)
|
||||
0:241 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:241 'f4' ( in 4-component vector of float)
|
||||
0:241 'parti' ( temp 4-component vector of uint)
|
||||
0:242 ERROR: Bad aggregation op
|
||||
( global 4-component vector of float)
|
||||
0:242 'f4' ( in 4-component vector of float)
|
||||
0:242 'parti' ( temp 4-component vector of uint)
|
||||
0:243 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:243 'ballot' ( temp 4-component vector of uint)
|
||||
0:243 'parti' ( temp 4-component vector of uint)
|
||||
0:244 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:244 'ballot' ( temp 4-component vector of uint)
|
||||
0:244 'parti' ( temp 4-component vector of uint)
|
||||
0:245 ERROR: Bad aggregation op
|
||||
( global 4-component vector of uint)
|
||||
0:245 'ballot' ( temp 4-component vector of uint)
|
||||
0:245 'parti' ( temp 4-component vector of uint)
|
||||
0:? Linker Objects
|
||||
0:? 'accNV' (layout( set=0 binding=0) uniform accelerationStructureNV)
|
||||
0:? 'localPayload' (layout( location=0) rayPayloadNV 4-component vector of float)
|
||||
0:? 'incomingPayload' (layout( location=1) rayPayloadInNV 4-component vector of float)
|
||||
|
||||
|
||||
Linked miss stage:
|
||||
|
||||
|
||||
Shader version: 460
|
||||
Requested GL_KHR_shader_subgroup_arithmetic
|
||||
Requested GL_KHR_shader_subgroup_ballot
|
||||
Requested GL_KHR_shader_subgroup_basic
|
||||
Requested GL_KHR_shader_subgroup_clustered
|
||||
Requested GL_KHR_shader_subgroup_quad
|
||||
Requested GL_KHR_shader_subgroup_shuffle
|
||||
Requested GL_KHR_shader_subgroup_shuffle_relative
|
||||
Requested GL_KHR_shader_subgroup_vote
|
||||
Requested GL_NV_ray_tracing
|
||||
Requested GL_NV_shader_subgroup_partitioned
|
||||
ERROR: node is still EOpNull!
|
||||
0:109 Function Definition: main( ( global void)
|
||||
0:109 Function Parameters:
|
||||
0:111 Sequence
|
||||
0:111 Sequence
|
||||
0:111 move second child to first child ( temp 3-component vector of uint)
|
||||
0:111 'v0' ( temp 3-component vector of uint)
|
||||
0:111 'gl_LaunchIDNV' ( in 3-component vector of uint LaunchIdNV)
|
||||
0:112 Sequence
|
||||
0:112 move second child to first child ( temp 3-component vector of uint)
|
||||
0:112 'v1' ( temp 3-component vector of uint)
|
||||
0:112 'gl_LaunchSizeNV' ( in 3-component vector of uint LaunchSizeNV)
|
||||
0:113 Sequence
|
||||
0:113 move second child to first child ( temp 3-component vector of float)
|
||||
0:113 'v2' ( temp 3-component vector of float)
|
||||
0:113 'gl_WorldRayOriginNV' ( in 3-component vector of float WorldRayOriginNV)
|
||||
0:114 Sequence
|
||||
0:114 move second child to first child ( temp 3-component vector of float)
|
||||
0:114 'v3' ( temp 3-component vector of float)
|
||||
0:114 'gl_WorldRayDirectionNV' ( in 3-component vector of float WorldRayDirectionNV)
|
||||
0:115 Sequence
|
||||
0:115 move second child to first child ( temp 3-component vector of float)
|
||||
0:115 'v4' ( temp 3-component vector of float)
|
||||
0:115 'gl_ObjectRayOriginNV' ( in 3-component vector of float ObjectRayOriginNV)
|
||||
0:116 Sequence
|
||||
0:116 move second child to first child ( temp 3-component vector of float)
|
||||
0:116 'v5' ( temp 3-component vector of float)
|
||||
0:116 'gl_ObjectRayDirectionNV' ( in 3-component vector of float ObjectRayDirectionNV)
|
||||
0:117 Sequence
|
||||
0:117 move second child to first child ( temp float)
|
||||
0:117 'v6' ( temp float)
|
||||
0:117 'gl_RayTminNV' ( in float ObjectRayTminNV)
|
||||
0:118 Sequence
|
||||
0:118 move second child to first child ( temp float)
|
||||
0:118 'v7' ( temp float)
|
||||
0:118 'gl_RayTmaxNV' ( in float ObjectRayTmaxNV)
|
||||
0:119 traceNV ( global void)
|
||||
0:119 'accNV' (layout( set=0 binding=0) uniform accelerationStructureNV)
|
||||
0:119 Constant:
|
||||
0:119 0 (const uint)
|
||||
0:119 Constant:
|
||||
0:119 1 (const uint)
|
||||
0:119 Constant:
|
||||
0:119 2 (const uint)
|
||||
0:119 Constant:
|
||||
0:119 3 (const uint)
|
||||
0:119 Constant:
|
||||
0:119 0 (const uint)
|
||||
0:119 Constant:
|
||||
0:119 0.500000
|
||||
0:119 0.500000
|
||||
0:119 0.500000
|
||||
0:119 Constant:
|
||||
0:119 0.500000
|
||||
0:119 Constant:
|
||||
0:119 1.000000
|
||||
0:119 1.000000
|
||||
0:119 1.000000
|
||||
0:119 Constant:
|
||||
0:119 0.750000
|
||||
0:119 Constant:
|
||||
0:119 1 (const int)
|
||||
0:? Linker Objects
|
||||
0:? 'accNV' (layout( set=0 binding=0) uniform accelerationStructureNV)
|
||||
0:? 'localPayload' (layout( location=0) rayPayloadNV 4-component vector of float)
|
||||
0:? 'incomingPayload' (layout( location=1) rayPayloadInNV 4-component vector of float)
|
||||
|
255
Test/glsl.460.subgroup.rahit
Normal file
255
Test/glsl.460.subgroup.rahit
Normal file
@ -0,0 +1,255 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : enable
|
||||
|
||||
vec4 undeclared_errors(vec4 f4)
|
||||
{
|
||||
vec4 result;
|
||||
gl_SubgroupSize; // ERROR, extension not enabled (basic)
|
||||
gl_SubgroupInvocationID; // ERROR, extension not enabled (basic)
|
||||
subgroupBarrier(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrier(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrierBuffer(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrierImage(); // ERROR, extension not enabled (basic)
|
||||
subgroupElect(); // ERROR, extension not enabled (basic)
|
||||
gl_NumSubgroups; // ERROR, only defined in compute
|
||||
gl_SubgroupID; // ERROR, only defined in compute
|
||||
subgroupMemoryBarrierShared(); // ERROR, only defined in compute
|
||||
|
||||
subgroupAll(true); // ERROR extension not enabled (vote)
|
||||
subgroupAny(false); // ERROR extension not enabled (vote)
|
||||
subgroupAllEqual(f4); // ERROR extension not enabled (vote)
|
||||
|
||||
gl_SubgroupEqMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupGeMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupGtMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupLeMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupLtMask; // ERROR extension not enabled (ballot)
|
||||
subgroupBroadcast(f4, 0); // ERROR extension not enabled (ballot)
|
||||
subgroupBroadcastFirst(f4); // ERROR extension not enabled (ballot)
|
||||
uvec4 ballot = subgroupBallot(false); // ERROR extension not enabled (ballot)
|
||||
subgroupInverseBallot(uvec4(0x1)); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotBitExtract(ballot, 0); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotInclusiveBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotExclusiveBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotFindLSB(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotFindMSB(ballot); // ERROR extension not enabled (ballot)
|
||||
|
||||
subgroupShuffle(f4, 0); // ERROR extension not enabled (shuffle)
|
||||
subgroupShuffleXor(f4, 0x1); // ERROR extension not enabled (shuffle)
|
||||
subgroupShuffleUp(f4, 1); // ERROR extension not enabled (shuffle_relative)
|
||||
subgroupShuffleDown(f4, 1); // ERROR extension not enabled (shuffle_relative)
|
||||
|
||||
result = subgroupAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupXor(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveXor(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveXor(ballot); // ERROR, extension not enabled (arith)
|
||||
|
||||
subgroupClusteredAdd(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMul(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMin(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMax(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredAnd(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredOr(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredXor(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
|
||||
subgroupQuadBroadcast(f4, 0); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapHorizontal(f4); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapVertical(f4); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapDiagonal(f4); // ERROR, extension not enabled (quad)
|
||||
|
||||
uvec4 parti = subgroupPartitionNV(f4); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
layout(location = 1) rayPayloadInNV vec4 incomingPayload;
|
||||
void main()
|
||||
{
|
||||
uvec3 v0 = gl_LaunchIDNV;
|
||||
uvec3 v1 = gl_LaunchSizeNV;
|
||||
int v2 = gl_PrimitiveID;
|
||||
int v3 = gl_InstanceID;
|
||||
int v4 = gl_InstanceCustomIndexNV;
|
||||
vec3 v5 = gl_WorldRayOriginNV;
|
||||
vec3 v6 = gl_WorldRayDirectionNV;
|
||||
vec3 v7 = gl_ObjectRayOriginNV;
|
||||
vec3 v8 = gl_ObjectRayDirectionNV;
|
||||
float v9 = gl_RayTminNV;
|
||||
float v10 = gl_RayTmaxNV;
|
||||
float v11 = gl_HitTNV;
|
||||
uint v12 = gl_HitKindNV;
|
||||
mat4x3 v13 = gl_ObjectToWorldNV;
|
||||
mat4x3 v14 = gl_WorldToObjectNV;
|
||||
incomingPayload = vec4(0.5f);
|
||||
if (v2 == 1)
|
||||
ignoreIntersectionNV();
|
||||
else
|
||||
terminateRayNV();
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_basic: enable
|
||||
void basic_works (void)
|
||||
{
|
||||
gl_SubgroupSize;
|
||||
gl_SubgroupInvocationID;
|
||||
subgroupBarrier();
|
||||
subgroupMemoryBarrier();
|
||||
subgroupMemoryBarrierBuffer();
|
||||
subgroupMemoryBarrierImage();
|
||||
subgroupElect();
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_ballot: enable
|
||||
void ballot_works(vec4 f4) {
|
||||
gl_SubgroupEqMask;
|
||||
gl_SubgroupGeMask;
|
||||
gl_SubgroupGtMask;
|
||||
gl_SubgroupLeMask;
|
||||
gl_SubgroupLtMask;
|
||||
subgroupBroadcast(f4, 0);
|
||||
subgroupBroadcastFirst(f4);
|
||||
uvec4 ballot = subgroupBallot(false);
|
||||
subgroupInverseBallot(uvec4(0x1));
|
||||
subgroupBallotBitExtract(ballot, 0);
|
||||
subgroupBallotBitCount(ballot);
|
||||
subgroupBallotInclusiveBitCount(ballot);
|
||||
subgroupBallotExclusiveBitCount(ballot);
|
||||
subgroupBallotFindLSB(ballot);
|
||||
subgroupBallotFindMSB(ballot);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_vote: enable
|
||||
void vote_works(vec4 f4)
|
||||
{
|
||||
subgroupAll(true);
|
||||
subgroupAny(false);
|
||||
subgroupAllEqual(f4);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_shuffle: enable
|
||||
#extension GL_KHR_shader_subgroup_shuffle_relative: enable
|
||||
void shuffle_works(vec4 f4)
|
||||
{
|
||||
subgroupShuffle(f4, 0);
|
||||
subgroupShuffleXor(f4, 0x1);
|
||||
subgroupShuffleUp(f4, 1);
|
||||
subgroupShuffleDown(f4, 1);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_arithmetic: enable
|
||||
void arith_works(vec4 f4)
|
||||
{
|
||||
uvec4 ballot;
|
||||
subgroupAdd(f4);
|
||||
subgroupMul(f4);
|
||||
subgroupMin(f4);
|
||||
subgroupMax(f4);
|
||||
subgroupAnd(ballot);
|
||||
subgroupOr(ballot);
|
||||
subgroupXor(ballot);
|
||||
subgroupInclusiveAdd(f4);
|
||||
subgroupInclusiveMul(f4);
|
||||
subgroupInclusiveMin(f4);
|
||||
subgroupInclusiveMax(f4);
|
||||
subgroupInclusiveAnd(ballot);
|
||||
subgroupInclusiveOr(ballot);
|
||||
subgroupInclusiveXor(ballot);
|
||||
subgroupExclusiveAdd(f4);
|
||||
subgroupExclusiveMul(f4);
|
||||
subgroupExclusiveMin(f4);
|
||||
subgroupExclusiveMax(f4);
|
||||
subgroupExclusiveAnd(ballot);
|
||||
subgroupExclusiveOr(ballot);
|
||||
subgroupExclusiveXor(ballot);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_clustered: enable
|
||||
void clustered_works(vec4 f4)
|
||||
{
|
||||
uvec4 ballot = uvec4(0x55,0,0,0);
|
||||
subgroupClusteredAdd(f4, 2);
|
||||
subgroupClusteredMul(f4, 2);
|
||||
subgroupClusteredMin(f4, 2);
|
||||
subgroupClusteredMax(f4, 2);
|
||||
subgroupClusteredAnd(ballot, 2);
|
||||
subgroupClusteredOr(ballot, 2);
|
||||
subgroupClusteredXor(ballot, 2);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_quad: enable
|
||||
void quad_works(vec4 f4)
|
||||
{
|
||||
subgroupQuadBroadcast(f4, 0);
|
||||
subgroupQuadSwapHorizontal(f4);
|
||||
subgroupQuadSwapVertical(f4);
|
||||
subgroupQuadSwapDiagonal(f4);
|
||||
}
|
||||
|
||||
#extension GL_NV_shader_subgroup_partitioned: enable
|
||||
void partitioned_works(vec4 f4)
|
||||
{
|
||||
uvec4 parti = subgroupPartitionNV(f4);
|
||||
uvec4 ballot = uvec4(0x55,0,0,0);
|
||||
subgroupPartitionedAddNV(f4, parti);
|
||||
subgroupPartitionedMulNV(f4, parti);
|
||||
subgroupPartitionedMinNV(f4, parti);
|
||||
subgroupPartitionedMaxNV(f4, parti);
|
||||
subgroupPartitionedAndNV(ballot, parti);
|
||||
subgroupPartitionedOrNV(ballot, parti);
|
||||
subgroupPartitionedXorNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveAddNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMulNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMinNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMaxNV(f4, parti);
|
||||
subgroupPartitionedInclusiveAndNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveOrNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveXorNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveAddNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMulNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMinNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMaxNV(f4, parti);
|
||||
subgroupPartitionedExclusiveAndNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveOrNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
243
Test/glsl.460.subgroup.rcall
Normal file
243
Test/glsl.460.subgroup.rcall
Normal file
@ -0,0 +1,243 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : enable
|
||||
|
||||
vec4 undeclared_errors(vec4 f4)
|
||||
{
|
||||
vec4 result;
|
||||
gl_SubgroupSize; // ERROR, extension not enabled (basic)
|
||||
gl_SubgroupInvocationID; // ERROR, extension not enabled (basic)
|
||||
subgroupBarrier(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrier(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrierBuffer(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrierImage(); // ERROR, extension not enabled (basic)
|
||||
subgroupElect(); // ERROR, extension not enabled (basic)
|
||||
gl_NumSubgroups; // ERROR, only defined in compute
|
||||
gl_SubgroupID; // ERROR, only defined in compute
|
||||
subgroupMemoryBarrierShared(); // ERROR, only defined in compute
|
||||
|
||||
subgroupAll(true); // ERROR extension not enabled (vote)
|
||||
subgroupAny(false); // ERROR extension not enabled (vote)
|
||||
subgroupAllEqual(f4); // ERROR extension not enabled (vote)
|
||||
|
||||
gl_SubgroupEqMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupGeMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupGtMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupLeMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupLtMask; // ERROR extension not enabled (ballot)
|
||||
subgroupBroadcast(f4, 0); // ERROR extension not enabled (ballot)
|
||||
subgroupBroadcastFirst(f4); // ERROR extension not enabled (ballot)
|
||||
uvec4 ballot = subgroupBallot(false); // ERROR extension not enabled (ballot)
|
||||
subgroupInverseBallot(uvec4(0x1)); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotBitExtract(ballot, 0); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotInclusiveBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotExclusiveBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotFindLSB(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotFindMSB(ballot); // ERROR extension not enabled (ballot)
|
||||
|
||||
subgroupShuffle(f4, 0); // ERROR extension not enabled (shuffle)
|
||||
subgroupShuffleXor(f4, 0x1); // ERROR extension not enabled (shuffle)
|
||||
subgroupShuffleUp(f4, 1); // ERROR extension not enabled (shuffle_relative)
|
||||
subgroupShuffleDown(f4, 1); // ERROR extension not enabled (shuffle_relative)
|
||||
|
||||
result = subgroupAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupXor(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveXor(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveXor(ballot); // ERROR, extension not enabled (arith)
|
||||
|
||||
subgroupClusteredAdd(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMul(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMin(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMax(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredAnd(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredOr(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredXor(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
|
||||
subgroupQuadBroadcast(f4, 0); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapHorizontal(f4); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapVertical(f4); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapDiagonal(f4); // ERROR, extension not enabled (quad)
|
||||
|
||||
uvec4 parti = subgroupPartitionNV(f4); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
layout(location = 0) callableDataNV vec4 data0;
|
||||
layout(location = 1) callableDataInNV dataBlock {
|
||||
uint data1;
|
||||
};
|
||||
void main()
|
||||
{
|
||||
uvec3 id = gl_LaunchIDNV;
|
||||
uvec3 size = gl_LaunchSizeNV;
|
||||
data1 = 256U;
|
||||
executeCallableNV(2,1);
|
||||
}
|
||||
|
||||
|
||||
#extension GL_KHR_shader_subgroup_basic: enable
|
||||
void basic_works (void)
|
||||
{
|
||||
gl_SubgroupSize;
|
||||
gl_SubgroupInvocationID;
|
||||
subgroupBarrier();
|
||||
subgroupMemoryBarrier();
|
||||
subgroupMemoryBarrierBuffer();
|
||||
subgroupMemoryBarrierImage();
|
||||
subgroupElect();
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_ballot: enable
|
||||
void ballot_works(vec4 f4) {
|
||||
gl_SubgroupEqMask;
|
||||
gl_SubgroupGeMask;
|
||||
gl_SubgroupGtMask;
|
||||
gl_SubgroupLeMask;
|
||||
gl_SubgroupLtMask;
|
||||
subgroupBroadcast(f4, 0);
|
||||
subgroupBroadcastFirst(f4);
|
||||
uvec4 ballot = subgroupBallot(false);
|
||||
subgroupInverseBallot(uvec4(0x1));
|
||||
subgroupBallotBitExtract(ballot, 0);
|
||||
subgroupBallotBitCount(ballot);
|
||||
subgroupBallotInclusiveBitCount(ballot);
|
||||
subgroupBallotExclusiveBitCount(ballot);
|
||||
subgroupBallotFindLSB(ballot);
|
||||
subgroupBallotFindMSB(ballot);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_vote: enable
|
||||
void vote_works(vec4 f4)
|
||||
{
|
||||
subgroupAll(true);
|
||||
subgroupAny(false);
|
||||
subgroupAllEqual(f4);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_shuffle: enable
|
||||
#extension GL_KHR_shader_subgroup_shuffle_relative: enable
|
||||
void shuffle_works(vec4 f4)
|
||||
{
|
||||
subgroupShuffle(f4, 0);
|
||||
subgroupShuffleXor(f4, 0x1);
|
||||
subgroupShuffleUp(f4, 1);
|
||||
subgroupShuffleDown(f4, 1);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_arithmetic: enable
|
||||
void arith_works(vec4 f4)
|
||||
{
|
||||
uvec4 ballot;
|
||||
subgroupAdd(f4);
|
||||
subgroupMul(f4);
|
||||
subgroupMin(f4);
|
||||
subgroupMax(f4);
|
||||
subgroupAnd(ballot);
|
||||
subgroupOr(ballot);
|
||||
subgroupXor(ballot);
|
||||
subgroupInclusiveAdd(f4);
|
||||
subgroupInclusiveMul(f4);
|
||||
subgroupInclusiveMin(f4);
|
||||
subgroupInclusiveMax(f4);
|
||||
subgroupInclusiveAnd(ballot);
|
||||
subgroupInclusiveOr(ballot);
|
||||
subgroupInclusiveXor(ballot);
|
||||
subgroupExclusiveAdd(f4);
|
||||
subgroupExclusiveMul(f4);
|
||||
subgroupExclusiveMin(f4);
|
||||
subgroupExclusiveMax(f4);
|
||||
subgroupExclusiveAnd(ballot);
|
||||
subgroupExclusiveOr(ballot);
|
||||
subgroupExclusiveXor(ballot);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_clustered: enable
|
||||
void clustered_works(vec4 f4)
|
||||
{
|
||||
uvec4 ballot = uvec4(0x55,0,0,0);
|
||||
subgroupClusteredAdd(f4, 2);
|
||||
subgroupClusteredMul(f4, 2);
|
||||
subgroupClusteredMin(f4, 2);
|
||||
subgroupClusteredMax(f4, 2);
|
||||
subgroupClusteredAnd(ballot, 2);
|
||||
subgroupClusteredOr(ballot, 2);
|
||||
subgroupClusteredXor(ballot, 2);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_quad: enable
|
||||
void quad_works(vec4 f4)
|
||||
{
|
||||
subgroupQuadBroadcast(f4, 0);
|
||||
subgroupQuadSwapHorizontal(f4);
|
||||
subgroupQuadSwapVertical(f4);
|
||||
subgroupQuadSwapDiagonal(f4);
|
||||
}
|
||||
|
||||
#extension GL_NV_shader_subgroup_partitioned: enable
|
||||
void partitioned_works(vec4 f4)
|
||||
{
|
||||
uvec4 parti = subgroupPartitionNV(f4);
|
||||
uvec4 ballot = uvec4(0x55,0,0,0);
|
||||
subgroupPartitionedAddNV(f4, parti);
|
||||
subgroupPartitionedMulNV(f4, parti);
|
||||
subgroupPartitionedMinNV(f4, parti);
|
||||
subgroupPartitionedMaxNV(f4, parti);
|
||||
subgroupPartitionedAndNV(ballot, parti);
|
||||
subgroupPartitionedOrNV(ballot, parti);
|
||||
subgroupPartitionedXorNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveAddNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMulNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMinNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMaxNV(f4, parti);
|
||||
subgroupPartitionedInclusiveAndNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveOrNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveXorNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveAddNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMulNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMinNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMaxNV(f4, parti);
|
||||
subgroupPartitionedExclusiveAndNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveOrNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
253
Test/glsl.460.subgroup.rchit
Normal file
253
Test/glsl.460.subgroup.rchit
Normal file
@ -0,0 +1,253 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : enable
|
||||
|
||||
vec4 undeclared_errors(vec4 f4)
|
||||
{
|
||||
vec4 result;
|
||||
gl_SubgroupSize; // ERROR, extension not enabled (basic)
|
||||
gl_SubgroupInvocationID; // ERROR, extension not enabled (basic)
|
||||
subgroupBarrier(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrier(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrierBuffer(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrierImage(); // ERROR, extension not enabled (basic)
|
||||
subgroupElect(); // ERROR, extension not enabled (basic)
|
||||
gl_NumSubgroups; // ERROR, only defined in compute
|
||||
gl_SubgroupID; // ERROR, only defined in compute
|
||||
subgroupMemoryBarrierShared(); // ERROR, only defined in compute
|
||||
|
||||
subgroupAll(true); // ERROR extension not enabled (vote)
|
||||
subgroupAny(false); // ERROR extension not enabled (vote)
|
||||
subgroupAllEqual(f4); // ERROR extension not enabled (vote)
|
||||
|
||||
gl_SubgroupEqMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupGeMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupGtMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupLeMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupLtMask; // ERROR extension not enabled (ballot)
|
||||
subgroupBroadcast(f4, 0); // ERROR extension not enabled (ballot)
|
||||
subgroupBroadcastFirst(f4); // ERROR extension not enabled (ballot)
|
||||
uvec4 ballot = subgroupBallot(false); // ERROR extension not enabled (ballot)
|
||||
subgroupInverseBallot(uvec4(0x1)); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotBitExtract(ballot, 0); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotInclusiveBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotExclusiveBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotFindLSB(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotFindMSB(ballot); // ERROR extension not enabled (ballot)
|
||||
|
||||
subgroupShuffle(f4, 0); // ERROR extension not enabled (shuffle)
|
||||
subgroupShuffleXor(f4, 0x1); // ERROR extension not enabled (shuffle)
|
||||
subgroupShuffleUp(f4, 1); // ERROR extension not enabled (shuffle_relative)
|
||||
subgroupShuffleDown(f4, 1); // ERROR extension not enabled (shuffle_relative)
|
||||
|
||||
result = subgroupAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupXor(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveXor(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveXor(ballot); // ERROR, extension not enabled (arith)
|
||||
|
||||
subgroupClusteredAdd(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMul(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMin(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMax(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredAnd(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredOr(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredXor(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
|
||||
subgroupQuadBroadcast(f4, 0); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapHorizontal(f4); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapVertical(f4); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapDiagonal(f4); // ERROR, extension not enabled (quad)
|
||||
|
||||
uvec4 parti = subgroupPartitionNV(f4); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
layout(binding = 0, set = 0) uniform accelerationStructureNV accNV;
|
||||
layout(location = 0) rayPayloadNV vec4 localPayload;
|
||||
layout(location = 1) rayPayloadInNV vec4 incomingPayload;
|
||||
void main()
|
||||
{
|
||||
uvec3 v0 = gl_LaunchIDNV;
|
||||
uvec3 v1 = gl_LaunchSizeNV;
|
||||
int v2 = gl_PrimitiveID;
|
||||
int v3 = gl_InstanceID;
|
||||
int v4 = gl_InstanceCustomIndexNV;
|
||||
vec3 v5 = gl_WorldRayOriginNV;
|
||||
vec3 v6 = gl_WorldRayDirectionNV;
|
||||
vec3 v7 = gl_ObjectRayOriginNV;
|
||||
vec3 v8 = gl_ObjectRayDirectionNV;
|
||||
float v9 = gl_RayTminNV;
|
||||
float v10 = gl_RayTmaxNV;
|
||||
float v11 = gl_HitTNV;
|
||||
uint v12 = gl_HitKindNV;
|
||||
mat4x3 v13 = gl_ObjectToWorldNV;
|
||||
mat4x3 v14 = gl_WorldToObjectNV;
|
||||
traceNV(accNV, 0u, 1u, 2u, 3u, 0u, vec3(0.5f), 0.5f, vec3(1.0f), 0.75f, 1);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_basic: enable
|
||||
void basic_works (void)
|
||||
{
|
||||
gl_SubgroupSize;
|
||||
gl_SubgroupInvocationID;
|
||||
subgroupBarrier();
|
||||
subgroupMemoryBarrier();
|
||||
subgroupMemoryBarrierBuffer();
|
||||
subgroupMemoryBarrierImage();
|
||||
subgroupElect();
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_ballot: enable
|
||||
void ballot_works(vec4 f4) {
|
||||
gl_SubgroupEqMask;
|
||||
gl_SubgroupGeMask;
|
||||
gl_SubgroupGtMask;
|
||||
gl_SubgroupLeMask;
|
||||
gl_SubgroupLtMask;
|
||||
subgroupBroadcast(f4, 0);
|
||||
subgroupBroadcastFirst(f4);
|
||||
uvec4 ballot = subgroupBallot(false);
|
||||
subgroupInverseBallot(uvec4(0x1));
|
||||
subgroupBallotBitExtract(ballot, 0);
|
||||
subgroupBallotBitCount(ballot);
|
||||
subgroupBallotInclusiveBitCount(ballot);
|
||||
subgroupBallotExclusiveBitCount(ballot);
|
||||
subgroupBallotFindLSB(ballot);
|
||||
subgroupBallotFindMSB(ballot);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_vote: enable
|
||||
void vote_works(vec4 f4)
|
||||
{
|
||||
subgroupAll(true);
|
||||
subgroupAny(false);
|
||||
subgroupAllEqual(f4);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_shuffle: enable
|
||||
#extension GL_KHR_shader_subgroup_shuffle_relative: enable
|
||||
void shuffle_works(vec4 f4)
|
||||
{
|
||||
subgroupShuffle(f4, 0);
|
||||
subgroupShuffleXor(f4, 0x1);
|
||||
subgroupShuffleUp(f4, 1);
|
||||
subgroupShuffleDown(f4, 1);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_arithmetic: enable
|
||||
void arith_works(vec4 f4)
|
||||
{
|
||||
uvec4 ballot;
|
||||
subgroupAdd(f4);
|
||||
subgroupMul(f4);
|
||||
subgroupMin(f4);
|
||||
subgroupMax(f4);
|
||||
subgroupAnd(ballot);
|
||||
subgroupOr(ballot);
|
||||
subgroupXor(ballot);
|
||||
subgroupInclusiveAdd(f4);
|
||||
subgroupInclusiveMul(f4);
|
||||
subgroupInclusiveMin(f4);
|
||||
subgroupInclusiveMax(f4);
|
||||
subgroupInclusiveAnd(ballot);
|
||||
subgroupInclusiveOr(ballot);
|
||||
subgroupInclusiveXor(ballot);
|
||||
subgroupExclusiveAdd(f4);
|
||||
subgroupExclusiveMul(f4);
|
||||
subgroupExclusiveMin(f4);
|
||||
subgroupExclusiveMax(f4);
|
||||
subgroupExclusiveAnd(ballot);
|
||||
subgroupExclusiveOr(ballot);
|
||||
subgroupExclusiveXor(ballot);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_clustered: enable
|
||||
void clustered_works(vec4 f4)
|
||||
{
|
||||
uvec4 ballot = uvec4(0x55,0,0,0);
|
||||
subgroupClusteredAdd(f4, 2);
|
||||
subgroupClusteredMul(f4, 2);
|
||||
subgroupClusteredMin(f4, 2);
|
||||
subgroupClusteredMax(f4, 2);
|
||||
subgroupClusteredAnd(ballot, 2);
|
||||
subgroupClusteredOr(ballot, 2);
|
||||
subgroupClusteredXor(ballot, 2);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_quad: enable
|
||||
void quad_works(vec4 f4)
|
||||
{
|
||||
subgroupQuadBroadcast(f4, 0);
|
||||
subgroupQuadSwapHorizontal(f4);
|
||||
subgroupQuadSwapVertical(f4);
|
||||
subgroupQuadSwapDiagonal(f4);
|
||||
}
|
||||
|
||||
#extension GL_NV_shader_subgroup_partitioned: enable
|
||||
void partitioned_works(vec4 f4)
|
||||
{
|
||||
uvec4 parti = subgroupPartitionNV(f4);
|
||||
uvec4 ballot = uvec4(0x55,0,0,0);
|
||||
subgroupPartitionedAddNV(f4, parti);
|
||||
subgroupPartitionedMulNV(f4, parti);
|
||||
subgroupPartitionedMinNV(f4, parti);
|
||||
subgroupPartitionedMaxNV(f4, parti);
|
||||
subgroupPartitionedAndNV(ballot, parti);
|
||||
subgroupPartitionedOrNV(ballot, parti);
|
||||
subgroupPartitionedXorNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveAddNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMulNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMinNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMaxNV(f4, parti);
|
||||
subgroupPartitionedInclusiveAndNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveOrNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveXorNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveAddNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMulNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMinNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMaxNV(f4, parti);
|
||||
subgroupPartitionedExclusiveAndNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveOrNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
247
Test/glsl.460.subgroup.rgen
Normal file
247
Test/glsl.460.subgroup.rgen
Normal file
@ -0,0 +1,247 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : enable
|
||||
|
||||
vec4 undeclared_errors(vec4 f4)
|
||||
{
|
||||
vec4 result;
|
||||
gl_SubgroupSize; // ERROR, extension not enabled (basic)
|
||||
gl_SubgroupInvocationID; // ERROR, extension not enabled (basic)
|
||||
subgroupBarrier(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrier(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrierBuffer(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrierImage(); // ERROR, extension not enabled (basic)
|
||||
subgroupElect(); // ERROR, extension not enabled (basic)
|
||||
gl_NumSubgroups; // ERROR, only defined in compute
|
||||
gl_SubgroupID; // ERROR, only defined in compute
|
||||
subgroupMemoryBarrierShared(); // ERROR, only defined in compute
|
||||
|
||||
subgroupAll(true); // ERROR extension not enabled (vote)
|
||||
subgroupAny(false); // ERROR extension not enabled (vote)
|
||||
subgroupAllEqual(f4); // ERROR extension not enabled (vote)
|
||||
|
||||
gl_SubgroupEqMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupGeMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupGtMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupLeMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupLtMask; // ERROR extension not enabled (ballot)
|
||||
subgroupBroadcast(f4, 0); // ERROR extension not enabled (ballot)
|
||||
subgroupBroadcastFirst(f4); // ERROR extension not enabled (ballot)
|
||||
uvec4 ballot = subgroupBallot(false); // ERROR extension not enabled (ballot)
|
||||
subgroupInverseBallot(uvec4(0x1)); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotBitExtract(ballot, 0); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotInclusiveBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotExclusiveBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotFindLSB(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotFindMSB(ballot); // ERROR extension not enabled (ballot)
|
||||
|
||||
subgroupShuffle(f4, 0); // ERROR extension not enabled (shuffle)
|
||||
subgroupShuffleXor(f4, 0x1); // ERROR extension not enabled (shuffle)
|
||||
subgroupShuffleUp(f4, 1); // ERROR extension not enabled (shuffle_relative)
|
||||
subgroupShuffleDown(f4, 1); // ERROR extension not enabled (shuffle_relative)
|
||||
|
||||
result = subgroupAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupXor(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveXor(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveXor(ballot); // ERROR, extension not enabled (arith)
|
||||
|
||||
subgroupClusteredAdd(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMul(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMin(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMax(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredAnd(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredOr(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredXor(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
|
||||
subgroupQuadBroadcast(f4, 0); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapHorizontal(f4); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapVertical(f4); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapDiagonal(f4); // ERROR, extension not enabled (quad)
|
||||
|
||||
uvec4 parti = subgroupPartitionNV(f4); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
layout(binding = 0, set = 0) uniform accelerationStructureNV accNV0;
|
||||
layout(binding = 1, set = 0) uniform accelerationStructureNV accNV1; // Unused
|
||||
layout(location = 0) rayPayloadNV vec4 payload;
|
||||
layout(shaderRecordNV) buffer block
|
||||
{
|
||||
vec3 dir;
|
||||
vec3 origin;
|
||||
|
||||
};
|
||||
void main()
|
||||
{
|
||||
uint lx = gl_LaunchIDNV.x;
|
||||
uint ly = gl_LaunchIDNV.y;
|
||||
uint sx = gl_LaunchSizeNV.x;
|
||||
uint sy = gl_LaunchSizeNV.y;
|
||||
traceNV(accNV0, lx, ly, sx, sy, 0u, origin, 0.5f, dir, 0.75f, 1);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_basic: enable
|
||||
void basic_works (void)
|
||||
{
|
||||
gl_SubgroupSize;
|
||||
gl_SubgroupInvocationID;
|
||||
subgroupBarrier();
|
||||
subgroupMemoryBarrier();
|
||||
subgroupMemoryBarrierBuffer();
|
||||
subgroupMemoryBarrierImage();
|
||||
subgroupElect();
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_ballot: enable
|
||||
void ballot_works(vec4 f4) {
|
||||
gl_SubgroupEqMask;
|
||||
gl_SubgroupGeMask;
|
||||
gl_SubgroupGtMask;
|
||||
gl_SubgroupLeMask;
|
||||
gl_SubgroupLtMask;
|
||||
subgroupBroadcast(f4, 0);
|
||||
subgroupBroadcastFirst(f4);
|
||||
uvec4 ballot = subgroupBallot(false);
|
||||
subgroupInverseBallot(uvec4(0x1));
|
||||
subgroupBallotBitExtract(ballot, 0);
|
||||
subgroupBallotBitCount(ballot);
|
||||
subgroupBallotInclusiveBitCount(ballot);
|
||||
subgroupBallotExclusiveBitCount(ballot);
|
||||
subgroupBallotFindLSB(ballot);
|
||||
subgroupBallotFindMSB(ballot);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_vote: enable
|
||||
void vote_works(vec4 f4)
|
||||
{
|
||||
subgroupAll(true);
|
||||
subgroupAny(false);
|
||||
subgroupAllEqual(f4);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_shuffle: enable
|
||||
#extension GL_KHR_shader_subgroup_shuffle_relative: enable
|
||||
void shuffle_works(vec4 f4)
|
||||
{
|
||||
subgroupShuffle(f4, 0);
|
||||
subgroupShuffleXor(f4, 0x1);
|
||||
subgroupShuffleUp(f4, 1);
|
||||
subgroupShuffleDown(f4, 1);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_arithmetic: enable
|
||||
void arith_works(vec4 f4)
|
||||
{
|
||||
uvec4 ballot;
|
||||
subgroupAdd(f4);
|
||||
subgroupMul(f4);
|
||||
subgroupMin(f4);
|
||||
subgroupMax(f4);
|
||||
subgroupAnd(ballot);
|
||||
subgroupOr(ballot);
|
||||
subgroupXor(ballot);
|
||||
subgroupInclusiveAdd(f4);
|
||||
subgroupInclusiveMul(f4);
|
||||
subgroupInclusiveMin(f4);
|
||||
subgroupInclusiveMax(f4);
|
||||
subgroupInclusiveAnd(ballot);
|
||||
subgroupInclusiveOr(ballot);
|
||||
subgroupInclusiveXor(ballot);
|
||||
subgroupExclusiveAdd(f4);
|
||||
subgroupExclusiveMul(f4);
|
||||
subgroupExclusiveMin(f4);
|
||||
subgroupExclusiveMax(f4);
|
||||
subgroupExclusiveAnd(ballot);
|
||||
subgroupExclusiveOr(ballot);
|
||||
subgroupExclusiveXor(ballot);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_clustered: enable
|
||||
void clustered_works(vec4 f4)
|
||||
{
|
||||
uvec4 ballot = uvec4(0x55,0,0,0);
|
||||
subgroupClusteredAdd(f4, 2);
|
||||
subgroupClusteredMul(f4, 2);
|
||||
subgroupClusteredMin(f4, 2);
|
||||
subgroupClusteredMax(f4, 2);
|
||||
subgroupClusteredAnd(ballot, 2);
|
||||
subgroupClusteredOr(ballot, 2);
|
||||
subgroupClusteredXor(ballot, 2);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_quad: enable
|
||||
void quad_works(vec4 f4)
|
||||
{
|
||||
subgroupQuadBroadcast(f4, 0);
|
||||
subgroupQuadSwapHorizontal(f4);
|
||||
subgroupQuadSwapVertical(f4);
|
||||
subgroupQuadSwapDiagonal(f4);
|
||||
}
|
||||
|
||||
#extension GL_NV_shader_subgroup_partitioned: enable
|
||||
void partitioned_works(vec4 f4)
|
||||
{
|
||||
uvec4 parti = subgroupPartitionNV(f4);
|
||||
uvec4 ballot = uvec4(0x55,0,0,0);
|
||||
subgroupPartitionedAddNV(f4, parti);
|
||||
subgroupPartitionedMulNV(f4, parti);
|
||||
subgroupPartitionedMinNV(f4, parti);
|
||||
subgroupPartitionedMaxNV(f4, parti);
|
||||
subgroupPartitionedAndNV(ballot, parti);
|
||||
subgroupPartitionedOrNV(ballot, parti);
|
||||
subgroupPartitionedXorNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveAddNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMulNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMinNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMaxNV(f4, parti);
|
||||
subgroupPartitionedInclusiveAndNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveOrNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveXorNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveAddNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMulNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMinNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMaxNV(f4, parti);
|
||||
subgroupPartitionedExclusiveAndNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveOrNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
253
Test/glsl.460.subgroup.rint
Normal file
253
Test/glsl.460.subgroup.rint
Normal file
@ -0,0 +1,253 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : enable
|
||||
|
||||
|
||||
vec4 undeclared_errors(vec4 f4)
|
||||
{
|
||||
vec4 result;
|
||||
gl_SubgroupSize; // ERROR, extension not enabled (basic)
|
||||
gl_SubgroupInvocationID; // ERROR, extension not enabled (basic)
|
||||
subgroupBarrier(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrier(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrierBuffer(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrierImage(); // ERROR, extension not enabled (basic)
|
||||
subgroupElect(); // ERROR, extension not enabled (basic)
|
||||
gl_NumSubgroups; // ERROR, only defined in compute
|
||||
gl_SubgroupID; // ERROR, only defined in compute
|
||||
subgroupMemoryBarrierShared(); // ERROR, only defined in compute
|
||||
|
||||
subgroupAll(true); // ERROR extension not enabled (vote)
|
||||
subgroupAny(false); // ERROR extension not enabled (vote)
|
||||
subgroupAllEqual(f4); // ERROR extension not enabled (vote)
|
||||
|
||||
gl_SubgroupEqMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupGeMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupGtMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupLeMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupLtMask; // ERROR extension not enabled (ballot)
|
||||
subgroupBroadcast(f4, 0); // ERROR extension not enabled (ballot)
|
||||
subgroupBroadcastFirst(f4); // ERROR extension not enabled (ballot)
|
||||
uvec4 ballot = subgroupBallot(false); // ERROR extension not enabled (ballot)
|
||||
subgroupInverseBallot(uvec4(0x1)); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotBitExtract(ballot, 0); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotInclusiveBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotExclusiveBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotFindLSB(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotFindMSB(ballot); // ERROR extension not enabled (ballot)
|
||||
|
||||
subgroupShuffle(f4, 0); // ERROR extension not enabled (shuffle)
|
||||
subgroupShuffleXor(f4, 0x1); // ERROR extension not enabled (shuffle)
|
||||
subgroupShuffleUp(f4, 1); // ERROR extension not enabled (shuffle_relative)
|
||||
subgroupShuffleDown(f4, 1); // ERROR extension not enabled (shuffle_relative)
|
||||
|
||||
result = subgroupAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupXor(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveXor(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveXor(ballot); // ERROR, extension not enabled (arith)
|
||||
|
||||
subgroupClusteredAdd(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMul(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMin(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMax(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredAnd(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredOr(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredXor(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
|
||||
subgroupQuadBroadcast(f4, 0); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapHorizontal(f4); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapVertical(f4); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapDiagonal(f4); // ERROR, extension not enabled (quad)
|
||||
|
||||
uvec4 parti = subgroupPartitionNV(f4); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
|
||||
hitAttributeNV vec4 iAttr;
|
||||
void main()
|
||||
{
|
||||
uvec3 v0 = gl_LaunchIDNV;
|
||||
uvec3 v1 = gl_LaunchSizeNV;
|
||||
int v2 = gl_PrimitiveID;
|
||||
int v3 = gl_InstanceID;
|
||||
int v4 = gl_InstanceCustomIndexNV;
|
||||
vec3 v5 = gl_WorldRayOriginNV;
|
||||
vec3 v6 = gl_WorldRayDirectionNV;
|
||||
vec3 v7 = gl_ObjectRayOriginNV;
|
||||
vec3 v8 = gl_ObjectRayDirectionNV;
|
||||
float v9 = gl_RayTminNV;
|
||||
float v10 = gl_RayTmaxNV;
|
||||
mat4x3 v11 = gl_ObjectToWorldNV;
|
||||
mat4x3 v12 = gl_WorldToObjectNV;
|
||||
iAttr = vec4(0.5f,0.5f,0.0f,1.0f);
|
||||
reportIntersectionNV(0.5, 1U);
|
||||
}
|
||||
|
||||
|
||||
#extension GL_KHR_shader_subgroup_basic: enable
|
||||
void basic_works (void)
|
||||
{
|
||||
gl_SubgroupSize;
|
||||
gl_SubgroupInvocationID;
|
||||
subgroupBarrier();
|
||||
subgroupMemoryBarrier();
|
||||
subgroupMemoryBarrierBuffer();
|
||||
subgroupMemoryBarrierImage();
|
||||
subgroupElect();
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_ballot: enable
|
||||
void ballot_works(vec4 f4) {
|
||||
gl_SubgroupEqMask;
|
||||
gl_SubgroupGeMask;
|
||||
gl_SubgroupGtMask;
|
||||
gl_SubgroupLeMask;
|
||||
gl_SubgroupLtMask;
|
||||
subgroupBroadcast(f4, 0);
|
||||
subgroupBroadcastFirst(f4);
|
||||
uvec4 ballot = subgroupBallot(false);
|
||||
subgroupInverseBallot(uvec4(0x1));
|
||||
subgroupBallotBitExtract(ballot, 0);
|
||||
subgroupBallotBitCount(ballot);
|
||||
subgroupBallotInclusiveBitCount(ballot);
|
||||
subgroupBallotExclusiveBitCount(ballot);
|
||||
subgroupBallotFindLSB(ballot);
|
||||
subgroupBallotFindMSB(ballot);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_vote: enable
|
||||
void vote_works(vec4 f4)
|
||||
{
|
||||
subgroupAll(true);
|
||||
subgroupAny(false);
|
||||
subgroupAllEqual(f4);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_shuffle: enable
|
||||
#extension GL_KHR_shader_subgroup_shuffle_relative: enable
|
||||
void shuffle_works(vec4 f4)
|
||||
{
|
||||
subgroupShuffle(f4, 0);
|
||||
subgroupShuffleXor(f4, 0x1);
|
||||
subgroupShuffleUp(f4, 1);
|
||||
subgroupShuffleDown(f4, 1);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_arithmetic: enable
|
||||
void arith_works(vec4 f4)
|
||||
{
|
||||
uvec4 ballot;
|
||||
subgroupAdd(f4);
|
||||
subgroupMul(f4);
|
||||
subgroupMin(f4);
|
||||
subgroupMax(f4);
|
||||
subgroupAnd(ballot);
|
||||
subgroupOr(ballot);
|
||||
subgroupXor(ballot);
|
||||
subgroupInclusiveAdd(f4);
|
||||
subgroupInclusiveMul(f4);
|
||||
subgroupInclusiveMin(f4);
|
||||
subgroupInclusiveMax(f4);
|
||||
subgroupInclusiveAnd(ballot);
|
||||
subgroupInclusiveOr(ballot);
|
||||
subgroupInclusiveXor(ballot);
|
||||
subgroupExclusiveAdd(f4);
|
||||
subgroupExclusiveMul(f4);
|
||||
subgroupExclusiveMin(f4);
|
||||
subgroupExclusiveMax(f4);
|
||||
subgroupExclusiveAnd(ballot);
|
||||
subgroupExclusiveOr(ballot);
|
||||
subgroupExclusiveXor(ballot);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_clustered: enable
|
||||
void clustered_works(vec4 f4)
|
||||
{
|
||||
uvec4 ballot = uvec4(0x55,0,0,0);
|
||||
subgroupClusteredAdd(f4, 2);
|
||||
subgroupClusteredMul(f4, 2);
|
||||
subgroupClusteredMin(f4, 2);
|
||||
subgroupClusteredMax(f4, 2);
|
||||
subgroupClusteredAnd(ballot, 2);
|
||||
subgroupClusteredOr(ballot, 2);
|
||||
subgroupClusteredXor(ballot, 2);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_quad: enable
|
||||
void quad_works(vec4 f4)
|
||||
{
|
||||
subgroupQuadBroadcast(f4, 0);
|
||||
subgroupQuadSwapHorizontal(f4);
|
||||
subgroupQuadSwapVertical(f4);
|
||||
subgroupQuadSwapDiagonal(f4);
|
||||
}
|
||||
|
||||
#extension GL_NV_shader_subgroup_partitioned: enable
|
||||
void partitioned_works(vec4 f4)
|
||||
{
|
||||
uvec4 parti = subgroupPartitionNV(f4);
|
||||
uvec4 ballot = uvec4(0x55,0,0,0);
|
||||
subgroupPartitionedAddNV(f4, parti);
|
||||
subgroupPartitionedMulNV(f4, parti);
|
||||
subgroupPartitionedMinNV(f4, parti);
|
||||
subgroupPartitionedMaxNV(f4, parti);
|
||||
subgroupPartitionedAndNV(ballot, parti);
|
||||
subgroupPartitionedOrNV(ballot, parti);
|
||||
subgroupPartitionedXorNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveAddNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMulNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMinNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMaxNV(f4, parti);
|
||||
subgroupPartitionedInclusiveAndNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveOrNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveXorNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveAddNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMulNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMinNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMaxNV(f4, parti);
|
||||
subgroupPartitionedExclusiveAndNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveOrNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
247
Test/glsl.460.subgroup.rmiss
Normal file
247
Test/glsl.460.subgroup.rmiss
Normal file
@ -0,0 +1,247 @@
|
||||
#version 460
|
||||
#extension GL_NV_ray_tracing : enable
|
||||
|
||||
|
||||
vec4 undeclared_errors(vec4 f4)
|
||||
{
|
||||
vec4 result;
|
||||
gl_SubgroupSize; // ERROR, extension not enabled (basic)
|
||||
gl_SubgroupInvocationID; // ERROR, extension not enabled (basic)
|
||||
subgroupBarrier(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrier(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrierBuffer(); // ERROR, extension not enabled (basic)
|
||||
subgroupMemoryBarrierImage(); // ERROR, extension not enabled (basic)
|
||||
subgroupElect(); // ERROR, extension not enabled (basic)
|
||||
gl_NumSubgroups; // ERROR, only defined in compute
|
||||
gl_SubgroupID; // ERROR, only defined in compute
|
||||
subgroupMemoryBarrierShared(); // ERROR, only defined in compute
|
||||
|
||||
subgroupAll(true); // ERROR extension not enabled (vote)
|
||||
subgroupAny(false); // ERROR extension not enabled (vote)
|
||||
subgroupAllEqual(f4); // ERROR extension not enabled (vote)
|
||||
|
||||
gl_SubgroupEqMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupGeMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupGtMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupLeMask; // ERROR extension not enabled (ballot)
|
||||
gl_SubgroupLtMask; // ERROR extension not enabled (ballot)
|
||||
subgroupBroadcast(f4, 0); // ERROR extension not enabled (ballot)
|
||||
subgroupBroadcastFirst(f4); // ERROR extension not enabled (ballot)
|
||||
uvec4 ballot = subgroupBallot(false); // ERROR extension not enabled (ballot)
|
||||
subgroupInverseBallot(uvec4(0x1)); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotBitExtract(ballot, 0); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotInclusiveBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotExclusiveBitCount(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotFindLSB(ballot); // ERROR extension not enabled (ballot)
|
||||
subgroupBallotFindMSB(ballot); // ERROR extension not enabled (ballot)
|
||||
|
||||
subgroupShuffle(f4, 0); // ERROR extension not enabled (shuffle)
|
||||
subgroupShuffleXor(f4, 0x1); // ERROR extension not enabled (shuffle)
|
||||
subgroupShuffleUp(f4, 1); // ERROR extension not enabled (shuffle_relative)
|
||||
subgroupShuffleDown(f4, 1); // ERROR extension not enabled (shuffle_relative)
|
||||
|
||||
result = subgroupAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupXor(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupInclusiveXor(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveAdd(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMul(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMin(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveMax(f4); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveAnd(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveOr(ballot); // ERROR, extension not enabled (arith)
|
||||
subgroupExclusiveXor(ballot); // ERROR, extension not enabled (arith)
|
||||
|
||||
subgroupClusteredAdd(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMul(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMin(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredMax(f4, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredAnd(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredOr(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
subgroupClusteredXor(ballot, 2); // ERROR, extension not enabled (clustered)
|
||||
|
||||
subgroupQuadBroadcast(f4, 0); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapHorizontal(f4); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapVertical(f4); // ERROR, extension not enabled (quad)
|
||||
subgroupQuadSwapDiagonal(f4); // ERROR, extension not enabled (quad)
|
||||
|
||||
uvec4 parti = subgroupPartitionNV(f4); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedInclusiveXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveAddNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMulNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMinNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveMaxNV(f4, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveAndNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveOrNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti); // ERROR, extension not enabled (partitioned)
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
layout(binding = 0, set = 0) uniform accelerationStructureNV accNV;
|
||||
layout(location = 0) rayPayloadNV vec4 localPayload;
|
||||
layout(location = 1) rayPayloadInNV vec4 incomingPayload;
|
||||
void main()
|
||||
{
|
||||
uvec3 v0 = gl_LaunchIDNV;
|
||||
uvec3 v1 = gl_LaunchSizeNV;
|
||||
vec3 v2 = gl_WorldRayOriginNV;
|
||||
vec3 v3 = gl_WorldRayDirectionNV;
|
||||
vec3 v4 = gl_ObjectRayOriginNV;
|
||||
vec3 v5 = gl_ObjectRayDirectionNV;
|
||||
float v6 = gl_RayTminNV;
|
||||
float v7 = gl_RayTmaxNV;
|
||||
traceNV(accNV, 0u, 1u, 2u, 3u, 0u, vec3(0.5f), 0.5f, vec3(1.0f), 0.75f, 1);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_basic: enable
|
||||
void basic_works (void)
|
||||
{
|
||||
gl_SubgroupSize;
|
||||
gl_SubgroupInvocationID;
|
||||
subgroupBarrier();
|
||||
subgroupMemoryBarrier();
|
||||
subgroupMemoryBarrierBuffer();
|
||||
subgroupMemoryBarrierImage();
|
||||
subgroupElect();
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_ballot: enable
|
||||
void ballot_works(vec4 f4) {
|
||||
gl_SubgroupEqMask;
|
||||
gl_SubgroupGeMask;
|
||||
gl_SubgroupGtMask;
|
||||
gl_SubgroupLeMask;
|
||||
gl_SubgroupLtMask;
|
||||
subgroupBroadcast(f4, 0);
|
||||
subgroupBroadcastFirst(f4);
|
||||
uvec4 ballot = subgroupBallot(false);
|
||||
subgroupInverseBallot(uvec4(0x1));
|
||||
subgroupBallotBitExtract(ballot, 0);
|
||||
subgroupBallotBitCount(ballot);
|
||||
subgroupBallotInclusiveBitCount(ballot);
|
||||
subgroupBallotExclusiveBitCount(ballot);
|
||||
subgroupBallotFindLSB(ballot);
|
||||
subgroupBallotFindMSB(ballot);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_vote: enable
|
||||
void vote_works(vec4 f4)
|
||||
{
|
||||
subgroupAll(true);
|
||||
subgroupAny(false);
|
||||
subgroupAllEqual(f4);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_shuffle: enable
|
||||
#extension GL_KHR_shader_subgroup_shuffle_relative: enable
|
||||
void shuffle_works(vec4 f4)
|
||||
{
|
||||
subgroupShuffle(f4, 0);
|
||||
subgroupShuffleXor(f4, 0x1);
|
||||
subgroupShuffleUp(f4, 1);
|
||||
subgroupShuffleDown(f4, 1);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_arithmetic: enable
|
||||
void arith_works(vec4 f4)
|
||||
{
|
||||
uvec4 ballot;
|
||||
subgroupAdd(f4);
|
||||
subgroupMul(f4);
|
||||
subgroupMin(f4);
|
||||
subgroupMax(f4);
|
||||
subgroupAnd(ballot);
|
||||
subgroupOr(ballot);
|
||||
subgroupXor(ballot);
|
||||
subgroupInclusiveAdd(f4);
|
||||
subgroupInclusiveMul(f4);
|
||||
subgroupInclusiveMin(f4);
|
||||
subgroupInclusiveMax(f4);
|
||||
subgroupInclusiveAnd(ballot);
|
||||
subgroupInclusiveOr(ballot);
|
||||
subgroupInclusiveXor(ballot);
|
||||
subgroupExclusiveAdd(f4);
|
||||
subgroupExclusiveMul(f4);
|
||||
subgroupExclusiveMin(f4);
|
||||
subgroupExclusiveMax(f4);
|
||||
subgroupExclusiveAnd(ballot);
|
||||
subgroupExclusiveOr(ballot);
|
||||
subgroupExclusiveXor(ballot);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_clustered: enable
|
||||
void clustered_works(vec4 f4)
|
||||
{
|
||||
uvec4 ballot = uvec4(0x55,0,0,0);
|
||||
subgroupClusteredAdd(f4, 2);
|
||||
subgroupClusteredMul(f4, 2);
|
||||
subgroupClusteredMin(f4, 2);
|
||||
subgroupClusteredMax(f4, 2);
|
||||
subgroupClusteredAnd(ballot, 2);
|
||||
subgroupClusteredOr(ballot, 2);
|
||||
subgroupClusteredXor(ballot, 2);
|
||||
}
|
||||
|
||||
#extension GL_KHR_shader_subgroup_quad: enable
|
||||
void quad_works(vec4 f4)
|
||||
{
|
||||
subgroupQuadBroadcast(f4, 0);
|
||||
subgroupQuadSwapHorizontal(f4);
|
||||
subgroupQuadSwapVertical(f4);
|
||||
subgroupQuadSwapDiagonal(f4);
|
||||
}
|
||||
|
||||
#extension GL_NV_shader_subgroup_partitioned: enable
|
||||
void partitioned_works(vec4 f4)
|
||||
{
|
||||
uvec4 parti = subgroupPartitionNV(f4);
|
||||
uvec4 ballot = uvec4(0x55,0,0,0);
|
||||
subgroupPartitionedAddNV(f4, parti);
|
||||
subgroupPartitionedMulNV(f4, parti);
|
||||
subgroupPartitionedMinNV(f4, parti);
|
||||
subgroupPartitionedMaxNV(f4, parti);
|
||||
subgroupPartitionedAndNV(ballot, parti);
|
||||
subgroupPartitionedOrNV(ballot, parti);
|
||||
subgroupPartitionedXorNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveAddNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMulNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMinNV(f4, parti);
|
||||
subgroupPartitionedInclusiveMaxNV(f4, parti);
|
||||
subgroupPartitionedInclusiveAndNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveOrNV(ballot, parti);
|
||||
subgroupPartitionedInclusiveXorNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveAddNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMulNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMinNV(f4, parti);
|
||||
subgroupPartitionedExclusiveMaxNV(f4, parti);
|
||||
subgroupPartitionedExclusiveAndNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveOrNV(ballot, parti);
|
||||
subgroupPartitionedExclusiveXorNV(ballot, parti);
|
||||
}
|
||||
|
@ -255,6 +255,12 @@ INSTANTIATE_TEST_CASE_P(
|
||||
"glsl.450.subgroupVote.comp",
|
||||
"glsl.460.subgroup.mesh",
|
||||
"glsl.460.subgroup.task",
|
||||
"glsl.460.subgroup.rahit",
|
||||
"glsl.460.subgroup.rcall",
|
||||
"glsl.460.subgroup.rchit",
|
||||
"glsl.460.subgroup.rgen",
|
||||
"glsl.460.subgroup.rint",
|
||||
"glsl.460.subgroup.rmiss",
|
||||
"glsl.es320.subgroup.frag",
|
||||
"glsl.es320.subgroup.geom",
|
||||
"glsl.es320.subgroup.tesc",
|
||||
|
Loading…
x
Reference in New Issue
Block a user