1spv.precise.tese 2// Module Version 10000 3// Generated by (magic number): 80007 4// Id's are bound by 119 5 6 Capability Tessellation 7 1: ExtInstImport "GLSL.std.450" 8 MemoryModel Logical GLSL450 9 EntryPoint TessellationEvaluation 4 "main" 12 21 62 112 10 ExecutionMode 4 Triangles 11 ExecutionMode 4 SpacingEqual 12 ExecutionMode 4 VertexOrderCcw 13 Source ESSL 310 14 SourceExtension "GL_EXT_gpu_shader5" 15 SourceExtension "GL_EXT_shader_io_blocks" 16 SourceExtension "GL_EXT_tessellation_shader" 17 Name 4 "main" 18 Name 9 "pos" 19 Name 12 "gl_TessCoord" 20 Name 21 "in_te_position" 21 Name 45 "f" 22 Name 62 "in_f_color" 23 Name 73 "bits" 24 Name 77 "numBits" 25 Name 78 "i" 26 Name 110 "gl_PerVertex" 27 MemberName 110(gl_PerVertex) 0 "gl_Position" 28 MemberName 110(gl_PerVertex) 1 "gl_PointSize" 29 Name 112 "" 30 Decorate 12(gl_TessCoord) BuiltIn TessCoord 31 Decorate 21(in_te_position) Location 0 32 Decorate 27 NoContraction 33 Decorate 34 NoContraction 34 Decorate 35 NoContraction 35 Decorate 42 NoContraction 36 Decorate 43 NoContraction 37 Decorate 62(in_f_color) RelaxedPrecision 38 Decorate 62(in_f_color) Location 0 39 Decorate 67 RelaxedPrecision 40 Decorate 68 RelaxedPrecision 41 Decorate 69 RelaxedPrecision 42 Decorate 70 RelaxedPrecision 43 Decorate 97 NoContraction 44 Decorate 99 NoContraction 45 Decorate 101 NoContraction 46 Decorate 106 NoContraction 47 Decorate 109 NoContraction 48 MemberDecorate 110(gl_PerVertex) 0 BuiltIn Position 49 MemberDecorate 110(gl_PerVertex) 1 BuiltIn PointSize 50 Decorate 110(gl_PerVertex) Block 51 2: TypeVoid 52 3: TypeFunction 2 53 6: TypeFloat 32 54 7: TypeVector 6(float) 2 55 8: TypePointer Function 7(fvec2) 56 10: TypeVector 6(float) 3 57 11: TypePointer Input 10(fvec3) 5812(gl_TessCoord): 11(ptr) Variable Input 59 13: TypeInt 32 0 60 14: 13(int) Constant 0 61 15: TypePointer Input 6(float) 62 18: 13(int) Constant 32 63 19: TypeArray 7(fvec2) 18 64 20: TypePointer Input 19 6521(in_te_position): 20(ptr) Variable Input 66 22: TypeInt 32 1 67 23: 22(int) Constant 0 68 24: TypePointer Input 7(fvec2) 69 28: 13(int) Constant 1 70 31: 22(int) Constant 1 71 36: 13(int) Constant 2 72 39: 22(int) Constant 2 73 44: TypePointer Function 6(float) 74 46: 6(float) Constant 1077936128 75 57: 6(float) Constant 1056964608 76 60: TypeVector 6(float) 4 77 61: TypePointer Output 60(fvec4) 78 62(in_f_color): 61(ptr) Variable Output 79 66: 6(float) Constant 1065353216 80 71: TypeVector 13(int) 2 81 72: TypePointer Function 71(ivec2) 82 76: TypePointer Function 13(int) 83 85: TypeBool 84 105: 6(float) Constant 1025758986 85110(gl_PerVertex): TypeStruct 60(fvec4) 6(float) 86 111: TypePointer Output 110(gl_PerVertex) 87 112: 111(ptr) Variable Output 88 114: 6(float) Constant 0 89 4(main): 2 Function None 3 90 5: Label 91 9(pos): 8(ptr) Variable Function 92 45(f): 44(ptr) Variable Function 93 73(bits): 72(ptr) Variable Function 94 77(numBits): 76(ptr) Variable Function 95 78(i): 76(ptr) Variable Function 96 16: 15(ptr) AccessChain 12(gl_TessCoord) 14 97 17: 6(float) Load 16 98 25: 24(ptr) AccessChain 21(in_te_position) 23 99 26: 7(fvec2) Load 25 100 27: 7(fvec2) VectorTimesScalar 26 17 101 29: 15(ptr) AccessChain 12(gl_TessCoord) 28 102 30: 6(float) Load 29 103 32: 24(ptr) AccessChain 21(in_te_position) 31 104 33: 7(fvec2) Load 32 105 34: 7(fvec2) VectorTimesScalar 33 30 106 35: 7(fvec2) FAdd 27 34 107 37: 15(ptr) AccessChain 12(gl_TessCoord) 36 108 38: 6(float) Load 37 109 40: 24(ptr) AccessChain 21(in_te_position) 39 110 41: 7(fvec2) Load 40 111 42: 7(fvec2) VectorTimesScalar 41 38 112 43: 7(fvec2) FAdd 35 42 113 Store 9(pos) 43 114 47: 15(ptr) AccessChain 12(gl_TessCoord) 14 115 48: 6(float) Load 47 116 49: 15(ptr) AccessChain 12(gl_TessCoord) 28 117 50: 6(float) Load 49 118 51: 15(ptr) AccessChain 12(gl_TessCoord) 36 119 52: 6(float) Load 51 120 53: 6(float) ExtInst 1(GLSL.std.450) 37(FMin) 50 52 121 54: 6(float) ExtInst 1(GLSL.std.450) 37(FMin) 48 53 122 55: 6(float) FMul 46 54 123 56: 6(float) ExtInst 1(GLSL.std.450) 31(Sqrt) 55 124 58: 6(float) FMul 56 57 125 59: 6(float) FAdd 58 57 126 Store 45(f) 59 127 63: 10(fvec3) Load 12(gl_TessCoord) 128 64: 6(float) Load 45(f) 129 65: 10(fvec3) VectorTimesScalar 63 64 130 67: 6(float) CompositeExtract 65 0 131 68: 6(float) CompositeExtract 65 1 132 69: 6(float) CompositeExtract 65 2 133 70: 60(fvec4) CompositeConstruct 67 68 69 66 134 Store 62(in_f_color) 70 135 74: 7(fvec2) Load 9(pos) 136 75: 71(ivec2) Bitcast 74 137 Store 73(bits) 75 138 Store 77(numBits) 14 139 Store 78(i) 14 140 Branch 79 141 79: Label 142 LoopMerge 81 82 None 143 Branch 83 144 83: Label 145 84: 13(int) Load 78(i) 146 86: 85(bool) ULessThan 84 18 147 BranchConditional 86 80 81 148 80: Label 149 87: 76(ptr) AccessChain 73(bits) 14 150 88: 13(int) Load 87 151 89: 13(int) Load 78(i) 152 90: 13(int) ShiftLeftLogical 88 89 153 91: 13(int) BitwiseAnd 90 28 154 92: 76(ptr) AccessChain 73(bits) 28 155 93: 13(int) Load 92 156 94: 13(int) Load 78(i) 157 95: 13(int) ShiftLeftLogical 93 94 158 96: 13(int) BitwiseAnd 95 28 159 97: 13(int) IAdd 91 96 160 98: 13(int) Load 77(numBits) 161 99: 13(int) IAdd 98 97 162 Store 77(numBits) 99 163 Branch 82 164 82: Label 165 100: 13(int) Load 78(i) 166 101: 13(int) IAdd 100 31 167 Store 78(i) 101 168 Branch 79 169 81: Label 170 102: 13(int) Load 77(numBits) 171 103: 13(int) BitwiseAnd 102 28 172 104: 6(float) ConvertUToF 103 173 106: 6(float) FMul 104 105 174 107: 7(fvec2) Load 9(pos) 175 108: 7(fvec2) CompositeConstruct 106 106 176 109: 7(fvec2) FAdd 107 108 177 Store 9(pos) 109 178 113: 7(fvec2) Load 9(pos) 179 115: 6(float) CompositeExtract 113 0 180 116: 6(float) CompositeExtract 113 1 181 117: 60(fvec4) CompositeConstruct 115 116 114 66 182 118: 61(ptr) AccessChain 112 23 183 Store 118 117 184 Return 185 FunctionEnd 186