--- /dev/null
+spv.meshShaderUserDefined.mesh
+// Module Version 10000
+// Generated by (magic number): 80007
+// Id's are bound by 140
+
+ Capability MeshShadingNV
+ Extension "SPV_NV_mesh_shader"
+ 1: ExtInstImport "GLSL.std.450"
+ MemoryModel Logical GLSL450
+ EntryPoint MeshNV 4 "main" 12 19 37 103
+ ExecutionMode 4 LocalSize 32 1 1
+ ExecutionMode 4 OutputVertices 81
+ ExecutionMode 4 OutputPrimitivesNV 32
+ ExecutionMode 4 OutputTrianglesNV
+ Source ESSL 320
+ SourceExtension "GL_NV_mesh_shader"
+ Name 4 "main"
+ Name 8 "iid"
+ Name 12 "gl_LocalInvocationID"
+ Name 18 "gid"
+ Name 19 "gl_WorkGroupID"
+ Name 33 "myblock"
+ MemberName 33(myblock) 0 "f"
+ MemberName 33(myblock) 1 "fArr"
+ MemberName 33(myblock) 2 "pos"
+ MemberName 33(myblock) 3 "posArr"
+ MemberName 33(myblock) 4 "m"
+ MemberName 33(myblock) 5 "mArr"
+ Name 37 "blk"
+ Name 99 "myblock2"
+ MemberName 99(myblock2) 0 "f"
+ MemberName 99(myblock2) 1 "pos"
+ MemberName 99(myblock2) 2 "m"
+ Name 103 "blk2"
+ Decorate 12(gl_LocalInvocationID) BuiltIn LocalInvocationId
+ Decorate 19(gl_WorkGroupID) BuiltIn WorkgroupId
+ MemberDecorate 33(myblock) 0 PerPrimitiveNV
+ MemberDecorate 33(myblock) 1 PerPrimitiveNV
+ MemberDecorate 33(myblock) 2 PerPrimitiveNV
+ MemberDecorate 33(myblock) 3 PerPrimitiveNV
+ MemberDecorate 33(myblock) 4 PerPrimitiveNV
+ MemberDecorate 33(myblock) 5 PerPrimitiveNV
+ Decorate 33(myblock) Block
+ Decorate 37(blk) Location 0
+ Decorate 99(myblock2) Block
+ Decorate 103(blk2) Location 20
+ Decorate 139 BuiltIn WorkgroupSize
+ 2: TypeVoid
+ 3: TypeFunction 2
+ 6: TypeInt 32 1
+ 7: TypePointer Function 6(int)
+ 9: TypeInt 32 0
+ 10: TypeVector 9(int) 3
+ 11: TypePointer Input 10(ivec3)
+12(gl_LocalInvocationID): 11(ptr) Variable Input
+ 13: 9(int) Constant 0
+ 14: TypePointer Input 9(int)
+19(gl_WorkGroupID): 11(ptr) Variable Input
+ 23: TypeFloat 32
+ 24: 9(int) Constant 4
+ 25: TypeArray 23(float) 24
+ 26: TypeVector 23(float) 3
+ 27: TypeVector 23(float) 4
+ 28: TypeArray 27(fvec4) 24
+ 29: TypeMatrix 27(fvec4) 4
+ 30: TypeMatrix 26(fvec3) 3
+ 31: 9(int) Constant 2
+ 32: TypeArray 30 31
+ 33(myblock): TypeStruct 23(float) 25 26(fvec3) 28 29 32
+ 34: 9(int) Constant 32
+ 35: TypeArray 33(myblock) 34
+ 36: TypePointer Output 35
+ 37(blk): 36(ptr) Variable Output
+ 39: 6(int) Constant 0
+ 40: 23(float) Constant 1093664768
+ 41: TypePointer Output 23(float)
+ 44: 6(int) Constant 1
+ 52: 6(int) Constant 2
+ 54: 23(float) Constant 1096810496
+ 55: 23(float) Constant 1097859072
+ 56: 23(float) Constant 1095761920
+ 57: 26(fvec3) ConstantComposite 54 55 56
+ 58: TypePointer Output 26(fvec3)
+ 64: 6(int) Constant 3
+ 69: TypePointer Output 27(fvec4)
+ 74: 6(int) Constant 4
+ 76: 23(float) Constant 1098907648
+ 77: 27(fvec4) ConstantComposite 56 54 55 76
+ 82: 6(int) Constant 5
+ 85: 9(int) Constant 3
+ 88: 9(int) Constant 1
+ 93: 23(float) Constant 1099431936
+ 94: 23(float) Constant 1099956224
+ 95: 23(float) Constant 1100480512
+ 96: 26(fvec3) ConstantComposite 93 94 95
+ 98: 9(int) Constant 264
+ 99(myblock2): TypeStruct 23(float) 27(fvec4) 29
+ 100: 9(int) Constant 81
+ 101: TypeArray 99(myblock2) 100
+ 102: TypePointer Output 101
+ 103(blk2): 102(ptr) Variable Output
+ 109: 23(float) Constant 1101004800
+ 113: 23(float) Constant 1101529088
+ 114: 23(float) Constant 1102053376
+ 115: 23(float) Constant 1102577664
+ 116: 23(float) Constant 1103101952
+ 117: 27(fvec4) ConstantComposite 113 114 115 116
+ 129: 23(float) Constant 1105723392
+ 139: 10(ivec3) ConstantComposite 34 88 88
+ 4(main): 2 Function None 3
+ 5: Label
+ 8(iid): 7(ptr) Variable Function
+ 18(gid): 7(ptr) Variable Function
+ 15: 14(ptr) AccessChain 12(gl_LocalInvocationID) 13
+ 16: 9(int) Load 15
+ 17: 6(int) Bitcast 16
+ Store 8(iid) 17
+ 20: 14(ptr) AccessChain 19(gl_WorkGroupID) 13
+ 21: 9(int) Load 20
+ 22: 6(int) Bitcast 21
+ Store 18(gid) 22
+ 38: 6(int) Load 8(iid)
+ 42: 41(ptr) AccessChain 37(blk) 38 39
+ Store 42 40
+ 43: 6(int) Load 8(iid)
+ 45: 6(int) IAdd 43 44
+ 46: 6(int) Load 18(gid)
+ 47: 6(int) Load 8(iid)
+ 48: 41(ptr) AccessChain 37(blk) 47 39
+ 49: 23(float) Load 48
+ 50: 41(ptr) AccessChain 37(blk) 45 44 46
+ Store 50 49
+ 51: 6(int) Load 8(iid)
+ 53: 6(int) SDiv 51 52
+ 59: 58(ptr) AccessChain 37(blk) 53 52
+ 60: 26(fvec3) Load 59
+ 61: 26(fvec3) VectorShuffle 60 57 5 3 4
+ Store 59 61
+ 62: 6(int) Load 8(iid)
+ 63: 6(int) IMul 62 52
+ 65: 6(int) Load 8(iid)
+ 66: 6(int) SDiv 65 52
+ 67: 58(ptr) AccessChain 37(blk) 66 52
+ 68: 26(fvec3) Load 67
+ 70: 69(ptr) AccessChain 37(blk) 63 64 44
+ 71: 27(fvec4) Load 70
+ 72: 27(fvec4) VectorShuffle 71 68 0 4 5 6
+ Store 70 72
+ 73: 6(int) Load 8(iid)
+ 75: 6(int) SDiv 73 74
+ 78: 69(ptr) AccessChain 37(blk) 75 74 52
+ 79: 27(fvec4) Load 78
+ 80: 27(fvec4) VectorShuffle 79 77 7 6 5 4
+ Store 78 80
+ 81: 6(int) Load 8(iid)
+ 83: 6(int) Load 8(iid)
+ 84: 6(int) SDiv 83 74
+ 86: 41(ptr) AccessChain 37(blk) 84 74 52 85
+ 87: 23(float) Load 86
+ 89: 41(ptr) AccessChain 37(blk) 81 82 39 44 88
+ Store 89 87
+ 90: 6(int) Load 8(iid)
+ 91: 6(int) IMul 90 74
+ 92: 6(int) Load 18(gid)
+ 97: 58(ptr) AccessChain 37(blk) 91 82 44 92
+ Store 97 96
+ MemoryBarrier 88 98
+ ControlBarrier 31 31 98
+ 104: 6(int) Load 8(iid)
+ 105: 6(int) Load 8(iid)
+ 106: 6(int) ISub 105 44
+ 107: 41(ptr) AccessChain 103(blk2) 106 39
+ 108: 23(float) Load 107
+ 110: 23(float) FAdd 108 109
+ 111: 41(ptr) AccessChain 103(blk2) 104 39
+ Store 111 110
+ 112: 6(int) Load 8(iid)
+ 118: 69(ptr) AccessChain 103(blk2) 112 44
+ Store 118 117
+ 119: 6(int) Load 8(iid)
+ 120: 6(int) IAdd 119 44
+ 121: 6(int) Load 18(gid)
+ 122: 6(int) Load 8(iid)
+ 123: 69(ptr) AccessChain 103(blk2) 122 44
+ 124: 27(fvec4) Load 123
+ 125: 69(ptr) AccessChain 103(blk2) 120 52 121
+ Store 125 124
+ 126: 6(int) Load 8(iid)
+ 127: 6(int) IAdd 126 44
+ 128: 6(int) Load 18(gid)
+ 130: 41(ptr) AccessChain 103(blk2) 127 52 128 31
+ Store 130 129
+ 131: 6(int) Load 8(iid)
+ 132: 6(int) IAdd 131 52
+ 133: 6(int) Load 8(iid)
+ 134: 6(int) IAdd 133 44
+ 135: 6(int) Load 18(gid)
+ 136: 69(ptr) AccessChain 103(blk2) 134 52 135
+ 137: 27(fvec4) Load 136
+ 138: 69(ptr) AccessChain 103(blk2) 132 52 64
+ Store 138 137
+ MemoryBarrier 88 98
+ ControlBarrier 31 31 98
+ Return
+ FunctionEnd
spv.meshShaderUserDefined.mesh
// Module Version 10000
// Generated by (magic number): 80007
-// Id's are bound by 140
+// Id's are bound by 138
Capability MeshShadingNV
Extension "SPV_NV_mesh_shader"
1: ExtInstImport "GLSL.std.450"
MemoryModel Logical GLSL450
- EntryPoint MeshNV 4 "main" 12 19 37 103
+ EntryPoint MeshNV 4 "main" 11 17 34 101
ExecutionMode 4 LocalSize 32 1 1
ExecutionMode 4 OutputVertices 81
ExecutionMode 4 OutputPrimitivesNV 32
ExecutionMode 4 OutputTrianglesNV
- Source ESSL 320
+ Source GLSL 450
SourceExtension "GL_NV_mesh_shader"
Name 4 "main"
Name 8 "iid"
- Name 12 "gl_LocalInvocationID"
- Name 18 "gid"
- Name 19 "gl_WorkGroupID"
- Name 33 "myblock"
- MemberName 33(myblock) 0 "f"
- MemberName 33(myblock) 1 "fArr"
- MemberName 33(myblock) 2 "pos"
- MemberName 33(myblock) 3 "posArr"
- MemberName 33(myblock) 4 "m"
- MemberName 33(myblock) 5 "mArr"
- Name 37 "blk"
- Name 99 "myblock2"
- MemberName 99(myblock2) 0 "f"
- MemberName 99(myblock2) 1 "pos"
- MemberName 99(myblock2) 2 "m"
- Name 103 "blk2"
- Decorate 12(gl_LocalInvocationID) BuiltIn LocalInvocationId
- Decorate 19(gl_WorkGroupID) BuiltIn WorkgroupId
- MemberDecorate 33(myblock) 0 PerPrimitiveNV
- MemberDecorate 33(myblock) 1 PerPrimitiveNV
- MemberDecorate 33(myblock) 2 PerPrimitiveNV
- MemberDecorate 33(myblock) 3 PerPrimitiveNV
- MemberDecorate 33(myblock) 4 PerPrimitiveNV
- MemberDecorate 33(myblock) 5 PerPrimitiveNV
- Decorate 33(myblock) Block
- Decorate 37(blk) Location 0
- Decorate 99(myblock2) Block
- Decorate 103(blk2) Location 20
- Decorate 139 BuiltIn WorkgroupSize
+ Name 11 "gl_LocalInvocationID"
+ Name 16 "gid"
+ Name 17 "gl_WorkGroupID"
+ Name 30 "myblock"
+ MemberName 30(myblock) 0 "f"
+ MemberName 30(myblock) 1 "fArr"
+ MemberName 30(myblock) 2 "pos"
+ MemberName 30(myblock) 3 "posArr"
+ MemberName 30(myblock) 4 "m"
+ MemberName 30(myblock) 5 "mArr"
+ Name 34 "blk"
+ Name 97 "myblock2"
+ MemberName 97(myblock2) 0 "f"
+ MemberName 97(myblock2) 1 "pos"
+ MemberName 97(myblock2) 2 "m"
+ Name 101 "blk2"
+ Decorate 11(gl_LocalInvocationID) BuiltIn LocalInvocationId
+ Decorate 17(gl_WorkGroupID) BuiltIn WorkgroupId
+ MemberDecorate 30(myblock) 0 PerPrimitiveNV
+ MemberDecorate 30(myblock) 1 PerPrimitiveNV
+ MemberDecorate 30(myblock) 2 PerPrimitiveNV
+ MemberDecorate 30(myblock) 3 PerPrimitiveNV
+ MemberDecorate 30(myblock) 4 PerPrimitiveNV
+ MemberDecorate 30(myblock) 5 PerPrimitiveNV
+ Decorate 30(myblock) Block
+ Decorate 34(blk) Location 0
+ Decorate 97(myblock2) Block
+ Decorate 101(blk2) Location 20
+ Decorate 137 BuiltIn WorkgroupSize
2: TypeVoid
3: TypeFunction 2
- 6: TypeInt 32 1
+ 6: TypeInt 32 0
7: TypePointer Function 6(int)
- 9: TypeInt 32 0
- 10: TypeVector 9(int) 3
- 11: TypePointer Input 10(ivec3)
-12(gl_LocalInvocationID): 11(ptr) Variable Input
- 13: 9(int) Constant 0
- 14: TypePointer Input 9(int)
-19(gl_WorkGroupID): 11(ptr) Variable Input
- 23: TypeFloat 32
- 24: 9(int) Constant 4
- 25: TypeArray 23(float) 24
- 26: TypeVector 23(float) 3
- 27: TypeVector 23(float) 4
- 28: TypeArray 27(fvec4) 24
- 29: TypeMatrix 27(fvec4) 4
- 30: TypeMatrix 26(fvec3) 3
- 31: 9(int) Constant 2
- 32: TypeArray 30 31
- 33(myblock): TypeStruct 23(float) 25 26(fvec3) 28 29 32
- 34: 9(int) Constant 32
- 35: TypeArray 33(myblock) 34
- 36: TypePointer Output 35
- 37(blk): 36(ptr) Variable Output
- 39: 6(int) Constant 0
- 40: 23(float) Constant 1093664768
- 41: TypePointer Output 23(float)
- 44: 6(int) Constant 1
- 52: 6(int) Constant 2
- 54: 23(float) Constant 1096810496
- 55: 23(float) Constant 1097859072
- 56: 23(float) Constant 1095761920
- 57: 26(fvec3) ConstantComposite 54 55 56
- 58: TypePointer Output 26(fvec3)
- 64: 6(int) Constant 3
- 69: TypePointer Output 27(fvec4)
- 74: 6(int) Constant 4
- 76: 23(float) Constant 1098907648
- 77: 27(fvec4) ConstantComposite 56 54 55 76
- 82: 6(int) Constant 5
- 85: 9(int) Constant 3
- 88: 9(int) Constant 1
- 93: 23(float) Constant 1099431936
- 94: 23(float) Constant 1099956224
- 95: 23(float) Constant 1100480512
- 96: 26(fvec3) ConstantComposite 93 94 95
- 98: 9(int) Constant 264
- 99(myblock2): TypeStruct 23(float) 27(fvec4) 29
- 100: 9(int) Constant 81
- 101: TypeArray 99(myblock2) 100
- 102: TypePointer Output 101
- 103(blk2): 102(ptr) Variable Output
- 109: 23(float) Constant 1101004800
- 113: 23(float) Constant 1101529088
- 114: 23(float) Constant 1102053376
- 115: 23(float) Constant 1102577664
- 116: 23(float) Constant 1103101952
- 117: 27(fvec4) ConstantComposite 113 114 115 116
- 129: 23(float) Constant 1105723392
- 139: 10(ivec3) ConstantComposite 34 88 88
+ 9: TypeVector 6(int) 3
+ 10: TypePointer Input 9(ivec3)
+11(gl_LocalInvocationID): 10(ptr) Variable Input
+ 12: 6(int) Constant 0
+ 13: TypePointer Input 6(int)
+17(gl_WorkGroupID): 10(ptr) Variable Input
+ 20: TypeFloat 32
+ 21: 6(int) Constant 4
+ 22: TypeArray 20(float) 21
+ 23: TypeVector 20(float) 3
+ 24: TypeVector 20(float) 4
+ 25: TypeArray 24(fvec4) 21
+ 26: TypeMatrix 24(fvec4) 4
+ 27: TypeMatrix 23(fvec3) 3
+ 28: 6(int) Constant 2
+ 29: TypeArray 27 28
+ 30(myblock): TypeStruct 20(float) 22 23(fvec3) 25 26 29
+ 31: 6(int) Constant 32
+ 32: TypeArray 30(myblock) 31
+ 33: TypePointer Output 32
+ 34(blk): 33(ptr) Variable Output
+ 36: TypeInt 32 1
+ 37: 36(int) Constant 0
+ 38: 20(float) Constant 1093664768
+ 39: TypePointer Output 20(float)
+ 42: 6(int) Constant 1
+ 44: 36(int) Constant 1
+ 52: 36(int) Constant 2
+ 53: 20(float) Constant 1096810496
+ 54: 20(float) Constant 1097859072
+ 55: 20(float) Constant 1095761920
+ 56: 23(fvec3) ConstantComposite 53 54 55
+ 57: TypePointer Output 23(fvec3)
+ 63: 36(int) Constant 3
+ 68: TypePointer Output 24(fvec4)
+ 74: 36(int) Constant 4
+ 75: 20(float) Constant 1098907648
+ 76: 24(fvec4) ConstantComposite 55 53 54 75
+ 81: 36(int) Constant 5
+ 84: 6(int) Constant 3
+ 91: 20(float) Constant 1099431936
+ 92: 20(float) Constant 1099956224
+ 93: 20(float) Constant 1100480512
+ 94: 23(fvec3) ConstantComposite 91 92 93
+ 96: 6(int) Constant 264
+ 97(myblock2): TypeStruct 20(float) 24(fvec4) 26
+ 98: 6(int) Constant 81
+ 99: TypeArray 97(myblock2) 98
+ 100: TypePointer Output 99
+ 101(blk2): 100(ptr) Variable Output
+ 107: 20(float) Constant 1101004800
+ 111: 20(float) Constant 1101529088
+ 112: 20(float) Constant 1102053376
+ 113: 20(float) Constant 1102577664
+ 114: 20(float) Constant 1103101952
+ 115: 24(fvec4) ConstantComposite 111 112 113 114
+ 127: 20(float) Constant 1105723392
+ 137: 9(ivec3) ConstantComposite 31 42 42
4(main): 2 Function None 3
5: Label
8(iid): 7(ptr) Variable Function
- 18(gid): 7(ptr) Variable Function
- 15: 14(ptr) AccessChain 12(gl_LocalInvocationID) 13
- 16: 9(int) Load 15
- 17: 6(int) Bitcast 16
- Store 8(iid) 17
- 20: 14(ptr) AccessChain 19(gl_WorkGroupID) 13
- 21: 9(int) Load 20
- 22: 6(int) Bitcast 21
- Store 18(gid) 22
- 38: 6(int) Load 8(iid)
- 42: 41(ptr) AccessChain 37(blk) 38 39
- Store 42 40
- 43: 6(int) Load 8(iid)
- 45: 6(int) IAdd 43 44
- 46: 6(int) Load 18(gid)
- 47: 6(int) Load 8(iid)
- 48: 41(ptr) AccessChain 37(blk) 47 39
- 49: 23(float) Load 48
- 50: 41(ptr) AccessChain 37(blk) 45 44 46
- Store 50 49
- 51: 6(int) Load 8(iid)
- 53: 6(int) SDiv 51 52
- 59: 58(ptr) AccessChain 37(blk) 53 52
- 60: 26(fvec3) Load 59
- 61: 26(fvec3) VectorShuffle 60 57 5 3 4
- Store 59 61
- 62: 6(int) Load 8(iid)
- 63: 6(int) IMul 62 52
- 65: 6(int) Load 8(iid)
- 66: 6(int) SDiv 65 52
- 67: 58(ptr) AccessChain 37(blk) 66 52
- 68: 26(fvec3) Load 67
- 70: 69(ptr) AccessChain 37(blk) 63 64 44
- 71: 27(fvec4) Load 70
- 72: 27(fvec4) VectorShuffle 71 68 0 4 5 6
- Store 70 72
- 73: 6(int) Load 8(iid)
- 75: 6(int) SDiv 73 74
- 78: 69(ptr) AccessChain 37(blk) 75 74 52
- 79: 27(fvec4) Load 78
- 80: 27(fvec4) VectorShuffle 79 77 7 6 5 4
- Store 78 80
- 81: 6(int) Load 8(iid)
- 83: 6(int) Load 8(iid)
- 84: 6(int) SDiv 83 74
- 86: 41(ptr) AccessChain 37(blk) 84 74 52 85
- 87: 23(float) Load 86
- 89: 41(ptr) AccessChain 37(blk) 81 82 39 44 88
- Store 89 87
- 90: 6(int) Load 8(iid)
- 91: 6(int) IMul 90 74
- 92: 6(int) Load 18(gid)
- 97: 58(ptr) AccessChain 37(blk) 91 82 44 92
- Store 97 96
- MemoryBarrier 88 98
- ControlBarrier 31 31 98
- 104: 6(int) Load 8(iid)
- 105: 6(int) Load 8(iid)
- 106: 6(int) ISub 105 44
- 107: 41(ptr) AccessChain 103(blk2) 106 39
- 108: 23(float) Load 107
- 110: 23(float) FAdd 108 109
- 111: 41(ptr) AccessChain 103(blk2) 104 39
- Store 111 110
- 112: 6(int) Load 8(iid)
- 118: 69(ptr) AccessChain 103(blk2) 112 44
- Store 118 117
- 119: 6(int) Load 8(iid)
- 120: 6(int) IAdd 119 44
- 121: 6(int) Load 18(gid)
- 122: 6(int) Load 8(iid)
- 123: 69(ptr) AccessChain 103(blk2) 122 44
- 124: 27(fvec4) Load 123
- 125: 69(ptr) AccessChain 103(blk2) 120 52 121
- Store 125 124
- 126: 6(int) Load 8(iid)
- 127: 6(int) IAdd 126 44
- 128: 6(int) Load 18(gid)
- 130: 41(ptr) AccessChain 103(blk2) 127 52 128 31
- Store 130 129
+ 16(gid): 7(ptr) Variable Function
+ 14: 13(ptr) AccessChain 11(gl_LocalInvocationID) 12
+ 15: 6(int) Load 14
+ Store 8(iid) 15
+ 18: 13(ptr) AccessChain 17(gl_WorkGroupID) 12
+ 19: 6(int) Load 18
+ Store 16(gid) 19
+ 35: 6(int) Load 8(iid)
+ 40: 39(ptr) AccessChain 34(blk) 35 37
+ Store 40 38
+ 41: 6(int) Load 8(iid)
+ 43: 6(int) IAdd 41 42
+ 45: 6(int) Load 16(gid)
+ 46: 6(int) Load 8(iid)
+ 47: 39(ptr) AccessChain 34(blk) 46 37
+ 48: 20(float) Load 47
+ 49: 39(ptr) AccessChain 34(blk) 43 44 45
+ Store 49 48
+ 50: 6(int) Load 8(iid)
+ 51: 6(int) UDiv 50 28
+ 58: 57(ptr) AccessChain 34(blk) 51 52
+ 59: 23(fvec3) Load 58
+ 60: 23(fvec3) VectorShuffle 59 56 5 3 4
+ Store 58 60
+ 61: 6(int) Load 8(iid)
+ 62: 6(int) IMul 61 28
+ 64: 6(int) Load 8(iid)
+ 65: 6(int) UDiv 64 28
+ 66: 57(ptr) AccessChain 34(blk) 65 52
+ 67: 23(fvec3) Load 66
+ 69: 68(ptr) AccessChain 34(blk) 62 63 44
+ 70: 24(fvec4) Load 69
+ 71: 24(fvec4) VectorShuffle 70 67 0 4 5 6
+ Store 69 71
+ 72: 6(int) Load 8(iid)
+ 73: 6(int) UDiv 72 21
+ 77: 68(ptr) AccessChain 34(blk) 73 74 52
+ 78: 24(fvec4) Load 77
+ 79: 24(fvec4) VectorShuffle 78 76 7 6 5 4
+ Store 77 79
+ 80: 6(int) Load 8(iid)
+ 82: 6(int) Load 8(iid)
+ 83: 6(int) UDiv 82 21
+ 85: 39(ptr) AccessChain 34(blk) 83 74 52 84
+ 86: 20(float) Load 85
+ 87: 39(ptr) AccessChain 34(blk) 80 81 37 44 42
+ Store 87 86
+ 88: 6(int) Load 8(iid)
+ 89: 6(int) IMul 88 21
+ 90: 6(int) Load 16(gid)
+ 95: 57(ptr) AccessChain 34(blk) 89 81 44 90
+ Store 95 94
+ MemoryBarrier 42 96
+ ControlBarrier 28 28 96
+ 102: 6(int) Load 8(iid)
+ 103: 6(int) Load 8(iid)
+ 104: 6(int) ISub 103 42
+ 105: 39(ptr) AccessChain 101(blk2) 104 37
+ 106: 20(float) Load 105
+ 108: 20(float) FAdd 106 107
+ 109: 39(ptr) AccessChain 101(blk2) 102 37
+ Store 109 108
+ 110: 6(int) Load 8(iid)
+ 116: 68(ptr) AccessChain 101(blk2) 110 44
+ Store 116 115
+ 117: 6(int) Load 8(iid)
+ 118: 6(int) IAdd 117 42
+ 119: 6(int) Load 16(gid)
+ 120: 6(int) Load 8(iid)
+ 121: 68(ptr) AccessChain 101(blk2) 120 44
+ 122: 24(fvec4) Load 121
+ 123: 68(ptr) AccessChain 101(blk2) 118 52 119
+ Store 123 122
+ 124: 6(int) Load 8(iid)
+ 125: 6(int) IAdd 124 42
+ 126: 6(int) Load 16(gid)
+ 128: 39(ptr) AccessChain 101(blk2) 125 52 126 28
+ Store 128 127
+ 129: 6(int) Load 8(iid)
+ 130: 6(int) IAdd 129 28
131: 6(int) Load 8(iid)
- 132: 6(int) IAdd 131 52
- 133: 6(int) Load 8(iid)
- 134: 6(int) IAdd 133 44
- 135: 6(int) Load 18(gid)
- 136: 69(ptr) AccessChain 103(blk2) 134 52 135
- 137: 27(fvec4) Load 136
- 138: 69(ptr) AccessChain 103(blk2) 132 52 64
- Store 138 137
- MemoryBarrier 88 98
- ControlBarrier 31 31 98
+ 132: 6(int) IAdd 131 42
+ 133: 6(int) Load 16(gid)
+ 134: 68(ptr) AccessChain 101(blk2) 132 52 133
+ 135: 24(fvec4) Load 134
+ 136: 68(ptr) AccessChain 101(blk2) 130 52 63
+ Store 136 135
+ MemoryBarrier 42 96
+ ControlBarrier 28 28 96
Return
FunctionEnd