1glsl.460.subgroup.task
2ERROR: 0:6: 'gl_SubgroupSize' : required extension not requested: GL_KHR_shader_subgroup_basic
3ERROR: 0:7: 'gl_SubgroupInvocationID' : required extension not requested: GL_KHR_shader_subgroup_basic
4ERROR: 0:8: 'subgroupBarrier' : required extension not requested: GL_KHR_shader_subgroup_basic
5ERROR: 0:9: 'subgroupMemoryBarrier' : required extension not requested: GL_KHR_shader_subgroup_basic
6ERROR: 0:10: 'subgroupMemoryBarrierBuffer' : required extension not requested: GL_KHR_shader_subgroup_basic
7ERROR: 0:11: 'subgroupMemoryBarrierImage' : required extension not requested: GL_KHR_shader_subgroup_basic
8ERROR: 0:12: 'subgroupElect' : required extension not requested: GL_KHR_shader_subgroup_basic
9ERROR: 0:13: 'gl_NumSubgroups' : required extension not requested: GL_KHR_shader_subgroup_basic
10ERROR: 0:14: 'gl_SubgroupID' : required extension not requested: GL_KHR_shader_subgroup_basic
11ERROR: 0:15: 'subgroupMemoryBarrierShared' : required extension not requested: GL_KHR_shader_subgroup_basic
12ERROR: 0:17: 'subgroupAll' : required extension not requested: GL_KHR_shader_subgroup_vote
13ERROR: 0:18: 'subgroupAny' : required extension not requested: GL_KHR_shader_subgroup_vote
14ERROR: 0:19: 'subgroupAllEqual' : required extension not requested: GL_KHR_shader_subgroup_vote
15ERROR: 0:21: 'gl_SubgroupEqMask' : required extension not requested: GL_KHR_shader_subgroup_ballot
16ERROR: 0:22: 'gl_SubgroupGeMask' : required extension not requested: GL_KHR_shader_subgroup_ballot
17ERROR: 0:23: 'gl_SubgroupGtMask' : required extension not requested: GL_KHR_shader_subgroup_ballot
18ERROR: 0:24: 'gl_SubgroupLeMask' : required extension not requested: GL_KHR_shader_subgroup_ballot
19ERROR: 0:25: 'gl_SubgroupLtMask' : required extension not requested: GL_KHR_shader_subgroup_ballot
20ERROR: 0:26: 'subgroupBroadcast' : required extension not requested: GL_KHR_shader_subgroup_ballot
21ERROR: 0:27: 'subgroupBroadcastFirst' : required extension not requested: GL_KHR_shader_subgroup_ballot
22ERROR: 0:28: 'subgroupBallot' : required extension not requested: GL_KHR_shader_subgroup_ballot
23ERROR: 0:29: 'subgroupInverseBallot' : required extension not requested: GL_KHR_shader_subgroup_ballot
24ERROR: 0:30: 'subgroupBallotBitExtract' : required extension not requested: GL_KHR_shader_subgroup_ballot
25ERROR: 0:31: 'subgroupBallotBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
26ERROR: 0:32: 'subgroupBallotInclusiveBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
27ERROR: 0:33: 'subgroupBallotExclusiveBitCount' : required extension not requested: GL_KHR_shader_subgroup_ballot
28ERROR: 0:34: 'subgroupBallotFindLSB' : required extension not requested: GL_KHR_shader_subgroup_ballot
29ERROR: 0:35: 'subgroupBallotFindMSB' : required extension not requested: GL_KHR_shader_subgroup_ballot
30ERROR: 0:37: 'subgroupShuffle' : required extension not requested: GL_KHR_shader_subgroup_shuffle
31ERROR: 0:38: 'subgroupShuffleXor' : required extension not requested: GL_KHR_shader_subgroup_shuffle
32ERROR: 0:39: 'subgroupShuffleUp' : required extension not requested: GL_KHR_shader_subgroup_shuffle_relative
33ERROR: 0:40: 'subgroupShuffleDown' : required extension not requested: GL_KHR_shader_subgroup_shuffle_relative
34ERROR: 0:42: 'subgroupAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
35ERROR: 0:43: 'subgroupMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
36ERROR: 0:44: 'subgroupMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
37ERROR: 0:45: 'subgroupMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
38ERROR: 0:46: 'subgroupAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
39ERROR: 0:47: 'subgroupOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
40ERROR: 0:48: 'subgroupXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
41ERROR: 0:49: 'subgroupInclusiveAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
42ERROR: 0:50: 'subgroupInclusiveMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
43ERROR: 0:51: 'subgroupInclusiveMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
44ERROR: 0:52: 'subgroupInclusiveMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
45ERROR: 0:53: 'subgroupInclusiveAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
46ERROR: 0:54: 'subgroupInclusiveOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
47ERROR: 0:55: 'subgroupInclusiveXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
48ERROR: 0:56: 'subgroupExclusiveAdd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
49ERROR: 0:57: 'subgroupExclusiveMul' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
50ERROR: 0:58: 'subgroupExclusiveMin' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
51ERROR: 0:59: 'subgroupExclusiveMax' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
52ERROR: 0:60: 'subgroupExclusiveAnd' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
53ERROR: 0:61: 'subgroupExclusiveOr' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
54ERROR: 0:62: 'subgroupExclusiveXor' : required extension not requested: GL_KHR_shader_subgroup_arithmetic
55ERROR: 0:64: 'subgroupClusteredAdd' : required extension not requested: GL_KHR_shader_subgroup_clustered
56ERROR: 0:65: 'subgroupClusteredMul' : required extension not requested: GL_KHR_shader_subgroup_clustered
57ERROR: 0:66: 'subgroupClusteredMin' : required extension not requested: GL_KHR_shader_subgroup_clustered
58ERROR: 0:67: 'subgroupClusteredMax' : required extension not requested: GL_KHR_shader_subgroup_clustered
59ERROR: 0:68: 'subgroupClusteredAnd' : required extension not requested: GL_KHR_shader_subgroup_clustered
60ERROR: 0:69: 'subgroupClusteredOr' : required extension not requested: GL_KHR_shader_subgroup_clustered
61ERROR: 0:70: 'subgroupClusteredXor' : required extension not requested: GL_KHR_shader_subgroup_clustered
62ERROR: 0:72: 'subgroupQuadBroadcast' : required extension not requested: GL_KHR_shader_subgroup_quad
63ERROR: 0:73: 'subgroupQuadSwapHorizontal' : required extension not requested: GL_KHR_shader_subgroup_quad
64ERROR: 0:74: 'subgroupQuadSwapVertical' : required extension not requested: GL_KHR_shader_subgroup_quad
65ERROR: 0:75: 'subgroupQuadSwapDiagonal' : required extension not requested: GL_KHR_shader_subgroup_quad
66ERROR: 0:77: 'subgroupPartitionNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
67ERROR: 0:78: 'subgroupPartitionedAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
68ERROR: 0:79: 'subgroupPartitionedMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
69ERROR: 0:80: 'subgroupPartitionedMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
70ERROR: 0:81: 'subgroupPartitionedMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
71ERROR: 0:82: 'subgroupPartitionedAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
72ERROR: 0:83: 'subgroupPartitionedOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
73ERROR: 0:84: 'subgroupPartitionedXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
74ERROR: 0:85: 'subgroupPartitionedInclusiveAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
75ERROR: 0:86: 'subgroupPartitionedInclusiveMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
76ERROR: 0:87: 'subgroupPartitionedInclusiveMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
77ERROR: 0:88: 'subgroupPartitionedInclusiveMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
78ERROR: 0:89: 'subgroupPartitionedInclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
79ERROR: 0:90: 'subgroupPartitionedInclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
80ERROR: 0:91: 'subgroupPartitionedInclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
81ERROR: 0:92: 'subgroupPartitionedExclusiveAddNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
82ERROR: 0:93: 'subgroupPartitionedExclusiveMulNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
83ERROR: 0:94: 'subgroupPartitionedExclusiveMinNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
84ERROR: 0:95: 'subgroupPartitionedExclusiveMaxNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
85ERROR: 0:96: 'subgroupPartitionedExclusiveAndNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
86ERROR: 0:97: 'subgroupPartitionedExclusiveOrNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
87ERROR: 0:98: 'subgroupPartitionedExclusiveXorNV' : required extension not requested: GL_NV_shader_subgroup_partitioned
88ERROR: 0:288: 'gl_WarpsPerSMNV' : required extension not requested: GL_NV_shader_sm_builtins
89ERROR: 0:289: 'gl_SMCountNV' : required extension not requested: GL_NV_shader_sm_builtins
90ERROR: 0:290: 'gl_WarpIDNV' : required extension not requested: GL_NV_shader_sm_builtins
91ERROR: 0:291: 'gl_SMIDNV' : required extension not requested: GL_NV_shader_sm_builtins
92ERROR: 90 compilation errors.  No code generated.
93
94
95Shader version: 460
96Requested GL_KHR_shader_subgroup_arithmetic
97Requested GL_KHR_shader_subgroup_ballot
98Requested GL_KHR_shader_subgroup_basic
99Requested GL_KHR_shader_subgroup_clustered
100Requested GL_KHR_shader_subgroup_quad
101Requested GL_KHR_shader_subgroup_shuffle
102Requested GL_KHR_shader_subgroup_shuffle_relative
103Requested GL_KHR_shader_subgroup_vote
104Requested GL_NV_mesh_shader
105Requested GL_NV_shader_sm_builtins
106Requested GL_NV_shader_subgroup_partitioned
107local_size = (32, 1, 1)
108ERROR: node is still EOpNull!
1090:3  Function Definition: undeclared_errors(vf4; ( global 4-component vector of float)
1100:3    Function Parameters:
1110:3      'f4' ( in 4-component vector of float)
1120:?     Sequence
1130:6      'gl_SubgroupSize' ( in uint SubgroupSize)
1140:7      'gl_SubgroupInvocationID' ( in uint SubgroupInvocationID)
1150:8      subgroupBarrier ( global void)
1160:9      subgroupMemoryBarrier ( global void)
1170:10      subgroupMemoryBarrierBuffer ( global void)
1180:11      subgroupMemoryBarrierImage ( global void)
1190:12      subgroupElect ( global bool)
1200:13      'gl_NumSubgroups' ( in uint NumSubgroups)
1210:14      'gl_SubgroupID' ( in uint SubgroupID)
1220:15      subgroupMemoryBarrierShared ( global void)
1230:17      subgroupAll ( global bool)
1240:17        Constant:
1250:17          true (const bool)
1260:18      subgroupAny ( global bool)
1270:18        Constant:
1280:18          false (const bool)
1290:19      subgroupAllEqual ( global bool)
1300:19        'f4' ( in 4-component vector of float)
1310:21      'gl_SubgroupEqMask' ( in 4-component vector of uint SubgroupEqMask)
1320:22      'gl_SubgroupGeMask' ( in 4-component vector of uint SubgroupGeMask)
1330:23      'gl_SubgroupGtMask' ( in 4-component vector of uint SubgroupGtMask)
1340:24      'gl_SubgroupLeMask' ( in 4-component vector of uint SubgroupLeMask)
1350:25      'gl_SubgroupLtMask' ( in 4-component vector of uint SubgroupLtMask)
1360:26      subgroupBroadcast ( global 4-component vector of float)
1370:26        'f4' ( in 4-component vector of float)
1380:26        Constant:
1390:26          0 (const uint)
1400:27      subgroupBroadcastFirst ( global 4-component vector of float)
1410:27        'f4' ( in 4-component vector of float)
1420:28      Sequence
1430:28        move second child to first child ( temp 4-component vector of uint)
1440:28          'ballot' ( temp 4-component vector of uint)
1450:28          subgroupBallot ( global 4-component vector of uint)
1460:28            Constant:
1470:28              false (const bool)
1480:29      subgroupInverseBallot ( global bool)
1490:29        Constant:
1500:29          1 (const uint)
1510:29          1 (const uint)
1520:29          1 (const uint)
1530:29          1 (const uint)
1540:30      subgroupBallotBitExtract ( global bool)
1550:30        'ballot' ( temp 4-component vector of uint)
1560:30        Constant:
1570:30          0 (const uint)
1580:31      subgroupBallotBitCount ( global uint)
1590:31        'ballot' ( temp 4-component vector of uint)
1600:32      subgroupBallotInclusiveBitCount ( global uint)
1610:32        'ballot' ( temp 4-component vector of uint)
1620:33      subgroupBallotExclusiveBitCount ( global uint)
1630:33        'ballot' ( temp 4-component vector of uint)
1640:34      subgroupBallotFindLSB ( global uint)
1650:34        'ballot' ( temp 4-component vector of uint)
1660:35      subgroupBallotFindMSB ( global uint)
1670:35        'ballot' ( temp 4-component vector of uint)
1680:37      subgroupShuffle ( global 4-component vector of float)
1690:37        'f4' ( in 4-component vector of float)
1700:37        Constant:
1710:37          0 (const uint)
1720:38      subgroupShuffleXor ( global 4-component vector of float)
1730:38        'f4' ( in 4-component vector of float)
1740:38        Constant:
1750:38          1 (const uint)
1760:39      subgroupShuffleUp ( global 4-component vector of float)
1770:39        'f4' ( in 4-component vector of float)
1780:39        Constant:
1790:39          1 (const uint)
1800:40      subgroupShuffleDown ( global 4-component vector of float)
1810:40        'f4' ( in 4-component vector of float)
1820:40        Constant:
1830:40          1 (const uint)
1840:42      move second child to first child ( temp 4-component vector of float)
1850:42        'result' ( temp 4-component vector of float)
1860:42        subgroupAdd ( global 4-component vector of float)
1870:42          'f4' ( in 4-component vector of float)
1880:43      subgroupMul ( global 4-component vector of float)
1890:43        'f4' ( in 4-component vector of float)
1900:44      subgroupMin ( global 4-component vector of float)
1910:44        'f4' ( in 4-component vector of float)
1920:45      subgroupMax ( global 4-component vector of float)
1930:45        'f4' ( in 4-component vector of float)
1940:46      subgroupAnd ( global 4-component vector of uint)
1950:46        'ballot' ( temp 4-component vector of uint)
1960:47      subgroupOr ( global 4-component vector of uint)
1970:47        'ballot' ( temp 4-component vector of uint)
1980:48      subgroupXor ( global 4-component vector of uint)
1990:48        'ballot' ( temp 4-component vector of uint)
2000:49      subgroupInclusiveAdd ( global 4-component vector of float)
2010:49        'f4' ( in 4-component vector of float)
2020:50      subgroupInclusiveMul ( global 4-component vector of float)
2030:50        'f4' ( in 4-component vector of float)
2040:51      subgroupInclusiveMin ( global 4-component vector of float)
2050:51        'f4' ( in 4-component vector of float)
2060:52      subgroupInclusiveMax ( global 4-component vector of float)
2070:52        'f4' ( in 4-component vector of float)
2080:53      subgroupInclusiveAnd ( global 4-component vector of uint)
2090:53        'ballot' ( temp 4-component vector of uint)
2100:54      subgroupInclusiveOr ( global 4-component vector of uint)
2110:54        'ballot' ( temp 4-component vector of uint)
2120:55      subgroupInclusiveXor ( global 4-component vector of uint)
2130:55        'ballot' ( temp 4-component vector of uint)
2140:56      subgroupExclusiveAdd ( global 4-component vector of float)
2150:56        'f4' ( in 4-component vector of float)
2160:57      subgroupExclusiveMul ( global 4-component vector of float)
2170:57        'f4' ( in 4-component vector of float)
2180:58      subgroupExclusiveMin ( global 4-component vector of float)
2190:58        'f4' ( in 4-component vector of float)
2200:59      subgroupExclusiveMax ( global 4-component vector of float)
2210:59        'f4' ( in 4-component vector of float)
2220:60      subgroupExclusiveAnd ( global 4-component vector of uint)
2230:60        'ballot' ( temp 4-component vector of uint)
2240:61      subgroupExclusiveOr ( global 4-component vector of uint)
2250:61        'ballot' ( temp 4-component vector of uint)
2260:62      subgroupExclusiveXor ( global 4-component vector of uint)
2270:62        'ballot' ( temp 4-component vector of uint)
2280:64      subgroupClusteredAdd ( global 4-component vector of float)
2290:64        'f4' ( in 4-component vector of float)
2300:64        Constant:
2310:64          2 (const uint)
2320:65      subgroupClusteredMul ( global 4-component vector of float)
2330:65        'f4' ( in 4-component vector of float)
2340:65        Constant:
2350:65          2 (const uint)
2360:66      subgroupClusteredMin ( global 4-component vector of float)
2370:66        'f4' ( in 4-component vector of float)
2380:66        Constant:
2390:66          2 (const uint)
2400:67      subgroupClusteredMax ( global 4-component vector of float)
2410:67        'f4' ( in 4-component vector of float)
2420:67        Constant:
2430:67          2 (const uint)
2440:68      subgroupClusteredAnd ( global 4-component vector of uint)
2450:68        'ballot' ( temp 4-component vector of uint)
2460:68        Constant:
2470:68          2 (const uint)
2480:69      subgroupClusteredOr ( global 4-component vector of uint)
2490:69        'ballot' ( temp 4-component vector of uint)
2500:69        Constant:
2510:69          2 (const uint)
2520:70      subgroupClusteredXor ( global 4-component vector of uint)
2530:70        'ballot' ( temp 4-component vector of uint)
2540:70        Constant:
2550:70          2 (const uint)
2560:72      subgroupQuadBroadcast ( global 4-component vector of float)
2570:72        'f4' ( in 4-component vector of float)
2580:72        Constant:
2590:72          0 (const uint)
2600:73      subgroupQuadSwapHorizontal ( global 4-component vector of float)
2610:73        'f4' ( in 4-component vector of float)
2620:74      subgroupQuadSwapVertical ( global 4-component vector of float)
2630:74        'f4' ( in 4-component vector of float)
2640:75      subgroupQuadSwapDiagonal ( global 4-component vector of float)
2650:75        'f4' ( in 4-component vector of float)
2660:77      Sequence
2670:77        move second child to first child ( temp 4-component vector of uint)
2680:77          'parti' ( temp 4-component vector of uint)
2690:77          subgroupPartitionNV ( global 4-component vector of uint)
2700:77            'f4' ( in 4-component vector of float)
2710:78      subgroupPartitionedAddNV ( global 4-component vector of float)
2720:78        'f4' ( in 4-component vector of float)
2730:78        'parti' ( temp 4-component vector of uint)
2740:79      subgroupPartitionedMulNV ( global 4-component vector of float)
2750:79        'f4' ( in 4-component vector of float)
2760:79        'parti' ( temp 4-component vector of uint)
2770:80      subgroupPartitionedMinNV ( global 4-component vector of float)
2780:80        'f4' ( in 4-component vector of float)
2790:80        'parti' ( temp 4-component vector of uint)
2800:81      subgroupPartitionedMaxNV ( global 4-component vector of float)
2810:81        'f4' ( in 4-component vector of float)
2820:81        'parti' ( temp 4-component vector of uint)
2830:82      subgroupPartitionedAndNV ( global 4-component vector of uint)
2840:82        'ballot' ( temp 4-component vector of uint)
2850:82        'parti' ( temp 4-component vector of uint)
2860:83      subgroupPartitionedOrNV ( global 4-component vector of uint)
2870:83        'ballot' ( temp 4-component vector of uint)
2880:83        'parti' ( temp 4-component vector of uint)
2890:84      subgroupPartitionedXorNV ( global 4-component vector of uint)
2900:84        'ballot' ( temp 4-component vector of uint)
2910:84        'parti' ( temp 4-component vector of uint)
2920:85      subgroupPartitionedInclusiveAddNV ( global 4-component vector of float)
2930:85        'f4' ( in 4-component vector of float)
2940:85        'parti' ( temp 4-component vector of uint)
2950:86      subgroupPartitionedInclusiveMulNV ( global 4-component vector of float)
2960:86        'f4' ( in 4-component vector of float)
2970:86        'parti' ( temp 4-component vector of uint)
2980:87      subgroupPartitionedInclusiveMinNV ( global 4-component vector of float)
2990:87        'f4' ( in 4-component vector of float)
3000:87        'parti' ( temp 4-component vector of uint)
3010:88      subgroupPartitionedInclusiveMaxNV ( global 4-component vector of float)
3020:88        'f4' ( in 4-component vector of float)
3030:88        'parti' ( temp 4-component vector of uint)
3040:89      subgroupPartitionedInclusiveAndNV ( global 4-component vector of uint)
3050:89        'ballot' ( temp 4-component vector of uint)
3060:89        'parti' ( temp 4-component vector of uint)
3070:90      subgroupPartitionedInclusiveOrNV ( global 4-component vector of uint)
3080:90        'ballot' ( temp 4-component vector of uint)
3090:90        'parti' ( temp 4-component vector of uint)
3100:91      subgroupPartitionedInclusiveXorNV ( global 4-component vector of uint)
3110:91        'ballot' ( temp 4-component vector of uint)
3120:91        'parti' ( temp 4-component vector of uint)
3130:92      subgroupPartitionedExclusiveAddNV ( global 4-component vector of float)
3140:92        'f4' ( in 4-component vector of float)
3150:92        'parti' ( temp 4-component vector of uint)
3160:93      subgroupPartitionedExclusiveMulNV ( global 4-component vector of float)
3170:93        'f4' ( in 4-component vector of float)
3180:93        'parti' ( temp 4-component vector of uint)
3190:94      subgroupPartitionedExclusiveMinNV ( global 4-component vector of float)
3200:94        'f4' ( in 4-component vector of float)
3210:94        'parti' ( temp 4-component vector of uint)
3220:95      subgroupPartitionedExclusiveMaxNV ( global 4-component vector of float)
3230:95        'f4' ( in 4-component vector of float)
3240:95        'parti' ( temp 4-component vector of uint)
3250:96      subgroupPartitionedExclusiveAndNV ( global 4-component vector of uint)
3260:96        'ballot' ( temp 4-component vector of uint)
3270:96        'parti' ( temp 4-component vector of uint)
3280:97      subgroupPartitionedExclusiveOrNV ( global 4-component vector of uint)
3290:97        'ballot' ( temp 4-component vector of uint)
3300:97        'parti' ( temp 4-component vector of uint)
3310:98      subgroupPartitionedExclusiveXorNV ( global 4-component vector of uint)
3320:98        'ballot' ( temp 4-component vector of uint)
3330:98        'parti' ( temp 4-component vector of uint)
3340:100      Branch: Return with expression
3350:100        'result' ( temp 4-component vector of float)
3360:127  Function Definition: main( ( global void)
3370:127    Function Parameters:
3380:129    Sequence
3390:129      Sequence
3400:129        move second child to first child ( temp uint)
3410:129          'iid' ( temp uint)
3420:129          direct index ( temp uint)
3430:129            'gl_LocalInvocationID' ( in 3-component vector of uint LocalInvocationID)
3440:129            Constant:
3450:129              0 (const int)
3460:130      Sequence
3470:130        move second child to first child ( temp uint)
3480:130          'gid' ( temp uint)
3490:130          direct index ( temp uint)
3500:130            'gl_WorkGroupID' ( in 3-component vector of uint WorkGroupID)
3510:130            Constant:
3520:130              0 (const int)
3530:131      Sequence
3540:131        move second child to first child ( temp uint)
3550:131          'viewID' ( temp uint)
3560:131          indirect index ( temp uint MeshViewIndicesNV)
3570:131            'gl_MeshViewIndicesNV' ( in 4-element array of uint MeshViewIndicesNV)
3580:131            mod ( temp uint)
3590:131              'gl_MeshViewCountNV' ( in uint MeshViewCountNV)
3600:131              Constant:
3610:131                4 (const uint)
3620:134      Sequence
3630:134        Sequence
3640:134          move second child to first child ( temp uint)
3650:134            'i' ( temp uint)
3660:134            Constant:
3670:134              0 (const uint)
3680:134        Loop with condition tested first
3690:134          Loop Condition
3700:134          Compare Less Than ( temp bool)
3710:134            'i' ( temp uint)
3720:134            Constant:
3730:134              10 (const uint)
3740:134          Loop Body
3750:135          Sequence
3760:135            move second child to first child ( temp 4-component vector of float)
3770:135              indirect index ( temp 4-component vector of float)
3780:135                'mem' ( shared 10-element array of 4-component vector of float)
3790:135                'i' ( temp uint)
3800:135              Construct vec4 ( temp 4-component vector of float)
3810:135                Convert uint to float ( temp float)
3820:135                  add ( temp uint)
3830:135                    'i' ( temp uint)
3840:135                    uni_value: direct index for structure (layout( column_major shared) uniform uint)
3850:135                      'anon@0' (layout( column_major shared) uniform block{layout( column_major shared) uniform uint uni_value})
3860:135                      Constant:
3870:135                        0 (const uint)
3880:134          Loop Terminal Expression
3890:134          Pre-Increment ( temp uint)
3900:134            'i' ( temp uint)
3910:137      imageStore ( global void)
3920:137        'uni_image' (layout( binding=0) writeonly uniform image2D)
3930:137        Construct ivec2 ( temp 2-component vector of int)
3940:137          Convert uint to int ( temp int)
3950:137            'iid' ( temp uint)
3960:137        indirect index ( temp 4-component vector of float)
3970:137          'mem' ( shared 10-element array of 4-component vector of float)
3980:137          'gid' ( temp uint)
3990:138      imageStore ( global void)
4000:138        'uni_image' (layout( binding=0) writeonly uniform image2D)
4010:138        Construct ivec2 ( temp 2-component vector of int)
4020:138          Convert uint to int ( temp int)
4030:138            'iid' ( temp uint)
4040:138        indirect index ( temp 4-component vector of float)
4050:138          'mem' ( shared 10-element array of 4-component vector of float)
4060:138          add ( temp uint)
4070:138            'gid' ( temp uint)
4080:138            Constant:
4090:138              1 (const uint)
4100:140      MemoryBarrierShared ( global void)
4110:140      Barrier ( global void)
4120:144      move second child to first child ( temp 2-component vector of float)
4130:144        dummy: direct index for structure (layout( std430 offset=0) taskNV out 2-component vector of float)
4140:144          'mytask' (layout( std430) taskNV out block{layout( std430 offset=0) taskNV out 2-component vector of float dummy, layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float submesh, layout( std430 offset=32) taskNV out uint viewID})
4150:144          Constant:
4160:144            0 (const int)
4170:144        Constant:
4180:144          30.000000
4190:144          31.000000
4200:145      move second child to first child ( temp 2-component vector of float)
4210:145        direct index (layout( std430 offset=8) taskNV temp 2-component vector of float)
4220:145          submesh: direct index for structure (layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float)
4230:145            'mytask' (layout( std430) taskNV out block{layout( std430 offset=0) taskNV out 2-component vector of float dummy, layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float submesh, layout( std430 offset=32) taskNV out uint viewID})
4240:145            Constant:
4250:145              1 (const int)
4260:145          Constant:
4270:145            0 (const int)
4280:145        Constant:
4290:145          32.000000
4300:145          33.000000
4310:146      move second child to first child ( temp 2-component vector of float)
4320:146        direct index (layout( std430 offset=8) taskNV temp 2-component vector of float)
4330:146          submesh: direct index for structure (layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float)
4340:146            'mytask' (layout( std430) taskNV out block{layout( std430 offset=0) taskNV out 2-component vector of float dummy, layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float submesh, layout( std430 offset=32) taskNV out uint viewID})
4350:146            Constant:
4360:146              1 (const int)
4370:146          Constant:
4380:146            1 (const int)
4390:146        Constant:
4400:146          34.000000
4410:146          35.000000
4420:147      move second child to first child ( temp 2-component vector of float)
4430:147        direct index (layout( std430 offset=8) taskNV temp 2-component vector of float)
4440:147          submesh: direct index for structure (layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float)
4450:147            'mytask' (layout( std430) taskNV out block{layout( std430 offset=0) taskNV out 2-component vector of float dummy, layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float submesh, layout( std430 offset=32) taskNV out uint viewID})
4460:147            Constant:
4470:147              1 (const int)
4480:147          Constant:
4490:147            2 (const int)
4500:147        indirect index (layout( std430 offset=8) taskNV temp 2-component vector of float)
4510:147          submesh: direct index for structure (layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float)
4520:147            'mytask' (layout( std430) taskNV out block{layout( std430 offset=0) taskNV out 2-component vector of float dummy, layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float submesh, layout( std430 offset=32) taskNV out uint viewID})
4530:147            Constant:
4540:147              1 (const int)
4550:147          mod ( temp uint)
4560:147            'gid' ( temp uint)
4570:147            Constant:
4580:147              2 (const uint)
4590:148      move second child to first child ( temp uint)
4600:148        viewID: direct index for structure (layout( std430 offset=32) taskNV out uint)
4610:148          'mytask' (layout( std430) taskNV out block{layout( std430 offset=0) taskNV out 2-component vector of float dummy, layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float submesh, layout( std430 offset=32) taskNV out uint viewID})
4620:148          Constant:
4630:148            2 (const int)
4640:148        'viewID' ( temp uint)
4650:150      MemoryBarrierShared ( global void)
4660:150      Barrier ( global void)
4670:153      move second child to first child ( temp uint)
4680:153        'gl_TaskCountNV' ( out uint TaskCountNV)
4690:153        Constant:
4700:153          3 (const uint)
4710:157  Function Definition: basic_works( ( global void)
4720:157    Function Parameters:
4730:159    Sequence
4740:159      'gl_SubgroupSize' ( in uint SubgroupSize)
4750:160      'gl_SubgroupInvocationID' ( in uint SubgroupInvocationID)
4760:161      subgroupBarrier ( global void)
4770:162      subgroupMemoryBarrier ( global void)
4780:163      subgroupMemoryBarrierBuffer ( global void)
4790:164      subgroupMemoryBarrierImage ( global void)
4800:165      subgroupElect ( global bool)
4810:166      'gl_NumSubgroups' ( in uint NumSubgroups)
4820:167      'gl_SubgroupID' ( in uint SubgroupID)
4830:168      subgroupMemoryBarrierShared ( global void)
4840:172  Function Definition: ballot_works(vf4; ( global void)
4850:172    Function Parameters:
4860:172      'f4' ( in 4-component vector of float)
4870:173    Sequence
4880:173      'gl_SubgroupEqMask' ( in 4-component vector of uint SubgroupEqMask)
4890:174      'gl_SubgroupGeMask' ( in 4-component vector of uint SubgroupGeMask)
4900:175      'gl_SubgroupGtMask' ( in 4-component vector of uint SubgroupGtMask)
4910:176      'gl_SubgroupLeMask' ( in 4-component vector of uint SubgroupLeMask)
4920:177      'gl_SubgroupLtMask' ( in 4-component vector of uint SubgroupLtMask)
4930:178      subgroupBroadcast ( global 4-component vector of float)
4940:178        'f4' ( in 4-component vector of float)
4950:178        Constant:
4960:178          0 (const uint)
4970:179      subgroupBroadcastFirst ( global 4-component vector of float)
4980:179        'f4' ( in 4-component vector of float)
4990:180      Sequence
5000:180        move second child to first child ( temp 4-component vector of uint)
5010:180          'ballot' ( temp 4-component vector of uint)
5020:180          subgroupBallot ( global 4-component vector of uint)
5030:180            Constant:
5040:180              false (const bool)
5050:181      subgroupInverseBallot ( global bool)
5060:181        Constant:
5070:181          1 (const uint)
5080:181          1 (const uint)
5090:181          1 (const uint)
5100:181          1 (const uint)
5110:182      subgroupBallotBitExtract ( global bool)
5120:182        'ballot' ( temp 4-component vector of uint)
5130:182        Constant:
5140:182          0 (const uint)
5150:183      subgroupBallotBitCount ( global uint)
5160:183        'ballot' ( temp 4-component vector of uint)
5170:184      subgroupBallotInclusiveBitCount ( global uint)
5180:184        'ballot' ( temp 4-component vector of uint)
5190:185      subgroupBallotExclusiveBitCount ( global uint)
5200:185        'ballot' ( temp 4-component vector of uint)
5210:186      subgroupBallotFindLSB ( global uint)
5220:186        'ballot' ( temp 4-component vector of uint)
5230:187      subgroupBallotFindMSB ( global uint)
5240:187        'ballot' ( temp 4-component vector of uint)
5250:191  Function Definition: vote_works(vf4; ( global void)
5260:191    Function Parameters:
5270:191      'f4' ( in 4-component vector of float)
5280:193    Sequence
5290:193      subgroupAll ( global bool)
5300:193        Constant:
5310:193          true (const bool)
5320:194      subgroupAny ( global bool)
5330:194        Constant:
5340:194          false (const bool)
5350:195      subgroupAllEqual ( global bool)
5360:195        'f4' ( in 4-component vector of float)
5370:200  Function Definition: shuffle_works(vf4; ( global void)
5380:200    Function Parameters:
5390:200      'f4' ( in 4-component vector of float)
5400:202    Sequence
5410:202      subgroupShuffle ( global 4-component vector of float)
5420:202        'f4' ( in 4-component vector of float)
5430:202        Constant:
5440:202          0 (const uint)
5450:203      subgroupShuffleXor ( global 4-component vector of float)
5460:203        'f4' ( in 4-component vector of float)
5470:203        Constant:
5480:203          1 (const uint)
5490:204      subgroupShuffleUp ( global 4-component vector of float)
5500:204        'f4' ( in 4-component vector of float)
5510:204        Constant:
5520:204          1 (const uint)
5530:205      subgroupShuffleDown ( global 4-component vector of float)
5540:205        'f4' ( in 4-component vector of float)
5550:205        Constant:
5560:205          1 (const uint)
5570:209  Function Definition: arith_works(vf4; ( global void)
5580:209    Function Parameters:
5590:209      'f4' ( in 4-component vector of float)
5600:?     Sequence
5610:212      subgroupAdd ( global 4-component vector of float)
5620:212        'f4' ( in 4-component vector of float)
5630:213      subgroupMul ( global 4-component vector of float)
5640:213        'f4' ( in 4-component vector of float)
5650:214      subgroupMin ( global 4-component vector of float)
5660:214        'f4' ( in 4-component vector of float)
5670:215      subgroupMax ( global 4-component vector of float)
5680:215        'f4' ( in 4-component vector of float)
5690:216      subgroupAnd ( global 4-component vector of uint)
5700:216        'ballot' ( temp 4-component vector of uint)
5710:217      subgroupOr ( global 4-component vector of uint)
5720:217        'ballot' ( temp 4-component vector of uint)
5730:218      subgroupXor ( global 4-component vector of uint)
5740:218        'ballot' ( temp 4-component vector of uint)
5750:219      subgroupInclusiveAdd ( global 4-component vector of float)
5760:219        'f4' ( in 4-component vector of float)
5770:220      subgroupInclusiveMul ( global 4-component vector of float)
5780:220        'f4' ( in 4-component vector of float)
5790:221      subgroupInclusiveMin ( global 4-component vector of float)
5800:221        'f4' ( in 4-component vector of float)
5810:222      subgroupInclusiveMax ( global 4-component vector of float)
5820:222        'f4' ( in 4-component vector of float)
5830:223      subgroupInclusiveAnd ( global 4-component vector of uint)
5840:223        'ballot' ( temp 4-component vector of uint)
5850:224      subgroupInclusiveOr ( global 4-component vector of uint)
5860:224        'ballot' ( temp 4-component vector of uint)
5870:225      subgroupInclusiveXor ( global 4-component vector of uint)
5880:225        'ballot' ( temp 4-component vector of uint)
5890:226      subgroupExclusiveAdd ( global 4-component vector of float)
5900:226        'f4' ( in 4-component vector of float)
5910:227      subgroupExclusiveMul ( global 4-component vector of float)
5920:227        'f4' ( in 4-component vector of float)
5930:228      subgroupExclusiveMin ( global 4-component vector of float)
5940:228        'f4' ( in 4-component vector of float)
5950:229      subgroupExclusiveMax ( global 4-component vector of float)
5960:229        'f4' ( in 4-component vector of float)
5970:230      subgroupExclusiveAnd ( global 4-component vector of uint)
5980:230        'ballot' ( temp 4-component vector of uint)
5990:231      subgroupExclusiveOr ( global 4-component vector of uint)
6000:231        'ballot' ( temp 4-component vector of uint)
6010:232      subgroupExclusiveXor ( global 4-component vector of uint)
6020:232        'ballot' ( temp 4-component vector of uint)
6030:236  Function Definition: clustered_works(vf4; ( global void)
6040:236    Function Parameters:
6050:236      'f4' ( in 4-component vector of float)
6060:238    Sequence
6070:238      Sequence
6080:238        move second child to first child ( temp 4-component vector of uint)
6090:238          'ballot' ( temp 4-component vector of uint)
6100:238          Constant:
6110:238            85 (const uint)
6120:238            0 (const uint)
6130:238            0 (const uint)
6140:238            0 (const uint)
6150:239      subgroupClusteredAdd ( global 4-component vector of float)
6160:239        'f4' ( in 4-component vector of float)
6170:239        Constant:
6180:239          2 (const uint)
6190:240      subgroupClusteredMul ( global 4-component vector of float)
6200:240        'f4' ( in 4-component vector of float)
6210:240        Constant:
6220:240          2 (const uint)
6230:241      subgroupClusteredMin ( global 4-component vector of float)
6240:241        'f4' ( in 4-component vector of float)
6250:241        Constant:
6260:241          2 (const uint)
6270:242      subgroupClusteredMax ( global 4-component vector of float)
6280:242        'f4' ( in 4-component vector of float)
6290:242        Constant:
6300:242          2 (const uint)
6310:243      subgroupClusteredAnd ( global 4-component vector of uint)
6320:243        'ballot' ( temp 4-component vector of uint)
6330:243        Constant:
6340:243          2 (const uint)
6350:244      subgroupClusteredOr ( global 4-component vector of uint)
6360:244        'ballot' ( temp 4-component vector of uint)
6370:244        Constant:
6380:244          2 (const uint)
6390:245      subgroupClusteredXor ( global 4-component vector of uint)
6400:245        'ballot' ( temp 4-component vector of uint)
6410:245        Constant:
6420:245          2 (const uint)
6430:249  Function Definition: quad_works(vf4; ( global void)
6440:249    Function Parameters:
6450:249      'f4' ( in 4-component vector of float)
6460:251    Sequence
6470:251      subgroupQuadBroadcast ( global 4-component vector of float)
6480:251        'f4' ( in 4-component vector of float)
6490:251        Constant:
6500:251          0 (const uint)
6510:252      subgroupQuadSwapHorizontal ( global 4-component vector of float)
6520:252        'f4' ( in 4-component vector of float)
6530:253      subgroupQuadSwapVertical ( global 4-component vector of float)
6540:253        'f4' ( in 4-component vector of float)
6550:254      subgroupQuadSwapDiagonal ( global 4-component vector of float)
6560:254        'f4' ( in 4-component vector of float)
6570:258  Function Definition: partitioned_works(vf4; ( global void)
6580:258    Function Parameters:
6590:258      'f4' ( in 4-component vector of float)
6600:260    Sequence
6610:260      Sequence
6620:260        move second child to first child ( temp 4-component vector of uint)
6630:260          'parti' ( temp 4-component vector of uint)
6640:260          subgroupPartitionNV ( global 4-component vector of uint)
6650:260            'f4' ( in 4-component vector of float)
6660:261      Sequence
6670:261        move second child to first child ( temp 4-component vector of uint)
6680:261          'ballot' ( temp 4-component vector of uint)
6690:261          Constant:
6700:261            85 (const uint)
6710:261            0 (const uint)
6720:261            0 (const uint)
6730:261            0 (const uint)
6740:262      subgroupPartitionedAddNV ( global 4-component vector of float)
6750:262        'f4' ( in 4-component vector of float)
6760:262        'parti' ( temp 4-component vector of uint)
6770:263      subgroupPartitionedMulNV ( global 4-component vector of float)
6780:263        'f4' ( in 4-component vector of float)
6790:263        'parti' ( temp 4-component vector of uint)
6800:264      subgroupPartitionedMinNV ( global 4-component vector of float)
6810:264        'f4' ( in 4-component vector of float)
6820:264        'parti' ( temp 4-component vector of uint)
6830:265      subgroupPartitionedMaxNV ( global 4-component vector of float)
6840:265        'f4' ( in 4-component vector of float)
6850:265        'parti' ( temp 4-component vector of uint)
6860:266      subgroupPartitionedAndNV ( global 4-component vector of uint)
6870:266        'ballot' ( temp 4-component vector of uint)
6880:266        'parti' ( temp 4-component vector of uint)
6890:267      subgroupPartitionedOrNV ( global 4-component vector of uint)
6900:267        'ballot' ( temp 4-component vector of uint)
6910:267        'parti' ( temp 4-component vector of uint)
6920:268      subgroupPartitionedXorNV ( global 4-component vector of uint)
6930:268        'ballot' ( temp 4-component vector of uint)
6940:268        'parti' ( temp 4-component vector of uint)
6950:269      subgroupPartitionedInclusiveAddNV ( global 4-component vector of float)
6960:269        'f4' ( in 4-component vector of float)
6970:269        'parti' ( temp 4-component vector of uint)
6980:270      subgroupPartitionedInclusiveMulNV ( global 4-component vector of float)
6990:270        'f4' ( in 4-component vector of float)
7000:270        'parti' ( temp 4-component vector of uint)
7010:271      subgroupPartitionedInclusiveMinNV ( global 4-component vector of float)
7020:271        'f4' ( in 4-component vector of float)
7030:271        'parti' ( temp 4-component vector of uint)
7040:272      subgroupPartitionedInclusiveMaxNV ( global 4-component vector of float)
7050:272        'f4' ( in 4-component vector of float)
7060:272        'parti' ( temp 4-component vector of uint)
7070:273      subgroupPartitionedInclusiveAndNV ( global 4-component vector of uint)
7080:273        'ballot' ( temp 4-component vector of uint)
7090:273        'parti' ( temp 4-component vector of uint)
7100:274      subgroupPartitionedInclusiveOrNV ( global 4-component vector of uint)
7110:274        'ballot' ( temp 4-component vector of uint)
7120:274        'parti' ( temp 4-component vector of uint)
7130:275      subgroupPartitionedInclusiveXorNV ( global 4-component vector of uint)
7140:275        'ballot' ( temp 4-component vector of uint)
7150:275        'parti' ( temp 4-component vector of uint)
7160:276      subgroupPartitionedExclusiveAddNV ( global 4-component vector of float)
7170:276        'f4' ( in 4-component vector of float)
7180:276        'parti' ( temp 4-component vector of uint)
7190:277      subgroupPartitionedExclusiveMulNV ( global 4-component vector of float)
7200:277        'f4' ( in 4-component vector of float)
7210:277        'parti' ( temp 4-component vector of uint)
7220:278      subgroupPartitionedExclusiveMinNV ( global 4-component vector of float)
7230:278        'f4' ( in 4-component vector of float)
7240:278        'parti' ( temp 4-component vector of uint)
7250:279      subgroupPartitionedExclusiveMaxNV ( global 4-component vector of float)
7260:279        'f4' ( in 4-component vector of float)
7270:279        'parti' ( temp 4-component vector of uint)
7280:280      subgroupPartitionedExclusiveAndNV ( global 4-component vector of uint)
7290:280        'ballot' ( temp 4-component vector of uint)
7300:280        'parti' ( temp 4-component vector of uint)
7310:281      subgroupPartitionedExclusiveOrNV ( global 4-component vector of uint)
7320:281        'ballot' ( temp 4-component vector of uint)
7330:281        'parti' ( temp 4-component vector of uint)
7340:282      subgroupPartitionedExclusiveXorNV ( global 4-component vector of uint)
7350:282        'ballot' ( temp 4-component vector of uint)
7360:282        'parti' ( temp 4-component vector of uint)
7370:286  Function Definition: sm_builtins_err( ( global void)
7380:286    Function Parameters:
7390:288    Sequence
7400:288      'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
7410:289      'gl_SMCountNV' ( in uint SMCountNV)
7420:290      'gl_WarpIDNV' ( in uint WarpIDNV)
7430:291      'gl_SMIDNV' ( in uint SMIDNV)
7440:298  Function Definition: sm_builtins( ( global void)
7450:298    Function Parameters:
7460:300    Sequence
7470:300      'gl_WarpsPerSMNV' ( in uint WarpsPerSMNV)
7480:301      'gl_SMCountNV' ( in uint SMCountNV)
7490:302      'gl_WarpIDNV' ( in uint WarpIDNV)
7500:303      'gl_SMIDNV' ( in uint SMIDNV)
7510:?   Linker Objects
7520:?     'gl_WorkGroupSize' ( const 3-component vector of uint WorkGroupSize)
7530:?       32 (const uint)
7540:?       1 (const uint)
7550:?       1 (const uint)
7560:?     'uni_image' (layout( binding=0) writeonly uniform image2D)
7570:?     'anon@0' (layout( column_major shared) uniform block{layout( column_major shared) uniform uint uni_value})
7580:?     'mem' ( shared 10-element array of 4-component vector of float)
7590:?     'mytask' (layout( std430) taskNV out block{layout( std430 offset=0) taskNV out 2-component vector of float dummy, layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float submesh, layout( std430 offset=32) taskNV out uint viewID})
760
761
762Linked task stage:
763
764
765Shader version: 460
766Requested GL_KHR_shader_subgroup_arithmetic
767Requested GL_KHR_shader_subgroup_ballot
768Requested GL_KHR_shader_subgroup_basic
769Requested GL_KHR_shader_subgroup_clustered
770Requested GL_KHR_shader_subgroup_quad
771Requested GL_KHR_shader_subgroup_shuffle
772Requested GL_KHR_shader_subgroup_shuffle_relative
773Requested GL_KHR_shader_subgroup_vote
774Requested GL_NV_mesh_shader
775Requested GL_NV_shader_sm_builtins
776Requested GL_NV_shader_subgroup_partitioned
777local_size = (32, 1, 1)
778ERROR: node is still EOpNull!
7790:127  Function Definition: main( ( global void)
7800:127    Function Parameters:
7810:129    Sequence
7820:129      Sequence
7830:129        move second child to first child ( temp uint)
7840:129          'iid' ( temp uint)
7850:129          direct index ( temp uint)
7860:129            'gl_LocalInvocationID' ( in 3-component vector of uint LocalInvocationID)
7870:129            Constant:
7880:129              0 (const int)
7890:130      Sequence
7900:130        move second child to first child ( temp uint)
7910:130          'gid' ( temp uint)
7920:130          direct index ( temp uint)
7930:130            'gl_WorkGroupID' ( in 3-component vector of uint WorkGroupID)
7940:130            Constant:
7950:130              0 (const int)
7960:131      Sequence
7970:131        move second child to first child ( temp uint)
7980:131          'viewID' ( temp uint)
7990:131          indirect index ( temp uint MeshViewIndicesNV)
8000:131            'gl_MeshViewIndicesNV' ( in 4-element array of uint MeshViewIndicesNV)
8010:131            mod ( temp uint)
8020:131              'gl_MeshViewCountNV' ( in uint MeshViewCountNV)
8030:131              Constant:
8040:131                4 (const uint)
8050:134      Sequence
8060:134        Sequence
8070:134          move second child to first child ( temp uint)
8080:134            'i' ( temp uint)
8090:134            Constant:
8100:134              0 (const uint)
8110:134        Loop with condition tested first
8120:134          Loop Condition
8130:134          Compare Less Than ( temp bool)
8140:134            'i' ( temp uint)
8150:134            Constant:
8160:134              10 (const uint)
8170:134          Loop Body
8180:135          Sequence
8190:135            move second child to first child ( temp 4-component vector of float)
8200:135              indirect index ( temp 4-component vector of float)
8210:135                'mem' ( shared 10-element array of 4-component vector of float)
8220:135                'i' ( temp uint)
8230:135              Construct vec4 ( temp 4-component vector of float)
8240:135                Convert uint to float ( temp float)
8250:135                  add ( temp uint)
8260:135                    'i' ( temp uint)
8270:135                    uni_value: direct index for structure (layout( column_major shared) uniform uint)
8280:135                      'anon@0' (layout( column_major shared) uniform block{layout( column_major shared) uniform uint uni_value})
8290:135                      Constant:
8300:135                        0 (const uint)
8310:134          Loop Terminal Expression
8320:134          Pre-Increment ( temp uint)
8330:134            'i' ( temp uint)
8340:137      imageStore ( global void)
8350:137        'uni_image' (layout( binding=0) writeonly uniform image2D)
8360:137        Construct ivec2 ( temp 2-component vector of int)
8370:137          Convert uint to int ( temp int)
8380:137            'iid' ( temp uint)
8390:137        indirect index ( temp 4-component vector of float)
8400:137          'mem' ( shared 10-element array of 4-component vector of float)
8410:137          'gid' ( temp uint)
8420:138      imageStore ( global void)
8430:138        'uni_image' (layout( binding=0) writeonly uniform image2D)
8440:138        Construct ivec2 ( temp 2-component vector of int)
8450:138          Convert uint to int ( temp int)
8460:138            'iid' ( temp uint)
8470:138        indirect index ( temp 4-component vector of float)
8480:138          'mem' ( shared 10-element array of 4-component vector of float)
8490:138          add ( temp uint)
8500:138            'gid' ( temp uint)
8510:138            Constant:
8520:138              1 (const uint)
8530:140      MemoryBarrierShared ( global void)
8540:140      Barrier ( global void)
8550:144      move second child to first child ( temp 2-component vector of float)
8560:144        dummy: direct index for structure (layout( std430 offset=0) taskNV out 2-component vector of float)
8570:144          'mytask' (layout( std430) taskNV out block{layout( std430 offset=0) taskNV out 2-component vector of float dummy, layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float submesh, layout( std430 offset=32) taskNV out uint viewID})
8580:144          Constant:
8590:144            0 (const int)
8600:144        Constant:
8610:144          30.000000
8620:144          31.000000
8630:145      move second child to first child ( temp 2-component vector of float)
8640:145        direct index (layout( std430 offset=8) taskNV temp 2-component vector of float)
8650:145          submesh: direct index for structure (layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float)
8660:145            'mytask' (layout( std430) taskNV out block{layout( std430 offset=0) taskNV out 2-component vector of float dummy, layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float submesh, layout( std430 offset=32) taskNV out uint viewID})
8670:145            Constant:
8680:145              1 (const int)
8690:145          Constant:
8700:145            0 (const int)
8710:145        Constant:
8720:145          32.000000
8730:145          33.000000
8740:146      move second child to first child ( temp 2-component vector of float)
8750:146        direct index (layout( std430 offset=8) taskNV temp 2-component vector of float)
8760:146          submesh: direct index for structure (layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float)
8770:146            'mytask' (layout( std430) taskNV out block{layout( std430 offset=0) taskNV out 2-component vector of float dummy, layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float submesh, layout( std430 offset=32) taskNV out uint viewID})
8780:146            Constant:
8790:146              1 (const int)
8800:146          Constant:
8810:146            1 (const int)
8820:146        Constant:
8830:146          34.000000
8840:146          35.000000
8850:147      move second child to first child ( temp 2-component vector of float)
8860:147        direct index (layout( std430 offset=8) taskNV temp 2-component vector of float)
8870:147          submesh: direct index for structure (layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float)
8880:147            'mytask' (layout( std430) taskNV out block{layout( std430 offset=0) taskNV out 2-component vector of float dummy, layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float submesh, layout( std430 offset=32) taskNV out uint viewID})
8890:147            Constant:
8900:147              1 (const int)
8910:147          Constant:
8920:147            2 (const int)
8930:147        indirect index (layout( std430 offset=8) taskNV temp 2-component vector of float)
8940:147          submesh: direct index for structure (layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float)
8950:147            'mytask' (layout( std430) taskNV out block{layout( std430 offset=0) taskNV out 2-component vector of float dummy, layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float submesh, layout( std430 offset=32) taskNV out uint viewID})
8960:147            Constant:
8970:147              1 (const int)
8980:147          mod ( temp uint)
8990:147            'gid' ( temp uint)
9000:147            Constant:
9010:147              2 (const uint)
9020:148      move second child to first child ( temp uint)
9030:148        viewID: direct index for structure (layout( std430 offset=32) taskNV out uint)
9040:148          'mytask' (layout( std430) taskNV out block{layout( std430 offset=0) taskNV out 2-component vector of float dummy, layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float submesh, layout( std430 offset=32) taskNV out uint viewID})
9050:148          Constant:
9060:148            2 (const int)
9070:148        'viewID' ( temp uint)
9080:150      MemoryBarrierShared ( global void)
9090:150      Barrier ( global void)
9100:153      move second child to first child ( temp uint)
9110:153        'gl_TaskCountNV' ( out uint TaskCountNV)
9120:153        Constant:
9130:153          3 (const uint)
9140:?   Linker Objects
9150:?     'gl_WorkGroupSize' ( const 3-component vector of uint WorkGroupSize)
9160:?       32 (const uint)
9170:?       1 (const uint)
9180:?       1 (const uint)
9190:?     'uni_image' (layout( binding=0) writeonly uniform image2D)
9200:?     'anon@0' (layout( column_major shared) uniform block{layout( column_major shared) uniform uint uni_value})
9210:?     'mem' ( shared 10-element array of 4-component vector of float)
9220:?     'mytask' (layout( std430) taskNV out block{layout( std430 offset=0) taskNV out 2-component vector of float dummy, layout( std430 offset=8) taskNV out 3-element array of 2-component vector of float submesh, layout( std430 offset=32) taskNV out uint viewID})
923
924