result code = 0 standard error = { } standard output = { // Module Version 10000 // Generated by (magic number): 80007 // Id's are bound by 129 Capability Shader Capability Float16 Capability StorageImageExtendedFormats 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint GLCompute 4 "main" 13 ExecutionMode 4 LocalSize 4 4 1 Source GLSL 450 SourceExtension "GL_EXT_shader_16bit_storage" SourceExtension "GL_EXT_shader_explicit_arithmetic_types" SourceExtension "GL_GOOGLE_cpp_style_line_directive" Name 4 "main" Name 9 "pos_0" Name 13 "gl_GlobalInvocationID" Name 22 "pos2_0" Name 36 "h_0" Name 40 "halfTexture_0" Name 51 "h2_0" Name 54 "halfTexture2_0" Name 65 "h4_0" Name 68 "halfTexture4_0" Name 108 "index_0" Name 117 "_S1" MemberName 117(_S1) 0 "_data" Name 119 "outputBuffer_0" Decorate 13(gl_GlobalInvocationID) BuiltIn GlobalInvocationId Decorate 40(halfTexture_0) DescriptorSet 0 Decorate 40(halfTexture_0) Binding 1 Decorate 54(halfTexture2_0) DescriptorSet 0 Decorate 54(halfTexture2_0) Binding 2 Decorate 68(halfTexture4_0) DescriptorSet 0 Decorate 68(halfTexture4_0) Binding 3 Decorate 116 ArrayStride 4 MemberDecorate 117(_S1) 0 Offset 0 Decorate 117(_S1) BufferBlock Decorate 119(outputBuffer_0) DescriptorSet 0 Decorate 119(outputBuffer_0) Binding 0 Decorate 128 BuiltIn WorkgroupSize 2: TypeVoid 3: TypeFunction 2 6: TypeInt 32 1 7: TypeVector 6(int) 2 8: TypePointer Function 7(ivec2) 10: TypeInt 32 0 11: TypeVector 10(int) 3 12: TypePointer Input 11(ivec3) 13(gl_GlobalInvocationID): 12(ptr) Variable Input 19: TypeVector 10(int) 2 23: 6(int) Constant 3 24: 10(int) Constant 1 25: TypePointer Function 6(int) 29: 10(int) Constant 0 34: TypeFloat 16 35: TypePointer Function 34(float16_t) 37: TypeFloat 32 38: TypeImage 37(float) 2D nonsampled format:R16f 39: TypePointer UniformConstant 38 40(halfTexture_0): 39(ptr) Variable UniformConstant 45: TypeVector 37(float) 4 49: TypeVector 34(float16_t) 2 50: TypePointer Function 49(f16vec2) 52: TypeImage 37(float) 2D nonsampled format:Rg16f 53: TypePointer UniformConstant 52 54(halfTexture2_0): 53(ptr) Variable UniformConstant 60: TypeVector 37(float) 2 63: TypeVector 34(float16_t) 4 64: TypePointer Function 63(f16vec4) 66: TypeImage 37(float) 2D nonsampled format:Rgba16f 67: TypePointer UniformConstant 66 68(halfTexture4_0): 67(ptr) Variable UniformConstant 84:34(float16_t) Constant 0 113: 6(int) Constant 4 116: TypeRuntimeArray 6(int) 117(_S1): TypeStruct 116 118: TypePointer Uniform 117(_S1) 119(outputBuffer_0): 118(ptr) Variable Uniform 120: 6(int) Constant 0 124: TypePointer Uniform 6(int) 127: 10(int) Constant 4 128: 11(ivec3) ConstantComposite 127 127 24 4(main): 2 Function None 3 5: Label 9(pos_0): 8(ptr) Variable Function 22(pos2_0): 8(ptr) Variable Function 36(h_0): 35(ptr) Variable Function 51(h2_0): 50(ptr) Variable Function 65(h4_0): 64(ptr) Variable Function 108(index_0): 25(ptr) Variable Function 14: 11(ivec3) Load 13(gl_GlobalInvocationID) 15: 10(int) CompositeExtract 14 0 16: 10(int) CompositeExtract 14 1 17: 10(int) CompositeExtract 14 2 18: 11(ivec3) CompositeConstruct 15 16 17 20: 19(ivec2) VectorShuffle 18 18 0 1 21: 7(ivec2) Bitcast 20 Store 9(pos_0) 21 26: 25(ptr) AccessChain 9(pos_0) 24 27: 6(int) Load 26 28: 6(int) ISub 23 27 30: 25(ptr) AccessChain 9(pos_0) 29 31: 6(int) Load 30 32: 6(int) ISub 23 31 33: 7(ivec2) CompositeConstruct 28 32 Store 22(pos2_0) 33 41: 38 Load 40(halfTexture_0) 42: 7(ivec2) Load 22(pos2_0) 43: 19(ivec2) Bitcast 42 44: 7(ivec2) Bitcast 43 46: 45(fvec4) ImageRead 41 44 47: 37(float) CompositeExtract 46 0 48:34(float16_t) FConvert 47 Store 36(h_0) 48 55: 52 Load 54(halfTexture2_0) 56: 7(ivec2) Load 22(pos2_0) 57: 19(ivec2) Bitcast 56 58: 7(ivec2) Bitcast 57 59: 45(fvec4) ImageRead 55 58 61: 60(fvec2) VectorShuffle 59 59 0 1 62: 49(f16vec2) FConvert 61 Store 51(h2_0) 62 69: 66 Load 68(halfTexture4_0) 70: 7(ivec2) Load 22(pos2_0) 71: 19(ivec2) Bitcast 70 72: 7(ivec2) Bitcast 71 73: 45(fvec4) ImageRead 69 72 74: 63(f16vec4) FConvert 73 Store 65(h4_0) 74 75: 38 Load 40(halfTexture_0) 76: 7(ivec2) Load 9(pos_0) 77: 19(ivec2) Bitcast 76 78: 7(ivec2) Bitcast 77 79: 35(ptr) AccessChain 51(h2_0) 29 80:34(float16_t) Load 79 81: 35(ptr) AccessChain 51(h2_0) 24 82:34(float16_t) Load 81 83:34(float16_t) FAdd 80 82 85: 63(f16vec4) CompositeConstruct 83 84 84 84 86: 45(fvec4) FConvert 85 ImageWrite 75 78 86 87: 52 Load 54(halfTexture2_0) 88: 7(ivec2) Load 9(pos_0) 89: 19(ivec2) Bitcast 88 90: 7(ivec2) Bitcast 89 91: 63(f16vec4) Load 65(h4_0) 92: 49(f16vec2) VectorShuffle 91 91 0 1 93:34(float16_t) CompositeExtract 92 0 94:34(float16_t) CompositeExtract 92 1 95: 63(f16vec4) CompositeConstruct 93 94 84 84 96: 45(fvec4) FConvert 95 ImageWrite 87 90 96 97: 66 Load 68(halfTexture4_0) 98: 7(ivec2) Load 9(pos_0) 99: 19(ivec2) Bitcast 98 100: 7(ivec2) Bitcast 99 101: 49(f16vec2) Load 51(h2_0) 102:34(float16_t) Load 36(h_0) 103:34(float16_t) Load 36(h_0) 104:34(float16_t) CompositeExtract 101 0 105:34(float16_t) CompositeExtract 101 1 106: 63(f16vec4) CompositeConstruct 104 105 102 103 107: 45(fvec4) FConvert 106 ImageWrite 97 100 107 109: 25(ptr) AccessChain 9(pos_0) 29 110: 6(int) Load 109 111: 25(ptr) AccessChain 9(pos_0) 24 112: 6(int) Load 111 114: 6(int) IMul 112 113 115: 6(int) IAdd 110 114 Store 108(index_0) 115 121: 6(int) Load 108(index_0) 122: 10(int) Bitcast 121 123: 6(int) Load 108(index_0) 125: 124(ptr) AccessChain 119(outputBuffer_0) 120 122 Store 125 123 Return FunctionEnd }