spv.precise.tesc
// Module Version 10000
// Generated by (magic number): 80008
// Id's are bound by 72

                              Capability Tessellation
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint TessellationControl 4  "main" 12 15 20 30 40 45
                              ExecutionMode 4 OutputVertices 3
                              Source ESSL 310
                              SourceExtension  "GL_EXT_gpu_shader5"
                              SourceExtension  "GL_EXT_shader_io_blocks"
                              SourceExtension  "GL_EXT_tessellation_shader"
                              Name 4  "main"
                              Name 12  "in_te_position"
                              Name 15  "gl_InvocationID"
                              Name 20  "in_tc_position"
                              Name 30  "gl_TessLevelInner"
                              Name 40  "gl_TessLevelOuter"
                              Name 45  "in_tc_tessParam"
                              Decorate 12(in_te_position) Location 0
                              Decorate 15(gl_InvocationID) BuiltIn InvocationId
                              Decorate 20(in_tc_position) Location 0
                              Decorate 30(gl_TessLevelInner) Patch
                              Decorate 30(gl_TessLevelInner) BuiltIn TessLevelInner
                              Decorate 40(gl_TessLevelOuter) Patch
                              Decorate 40(gl_TessLevelOuter) BuiltIn TessLevelOuter
                              Decorate 45(in_tc_tessParam) Location 1
                              Decorate 52 NoContraction
                              Decorate 53 NoContraction
                              Decorate 54 NoContraction
                              Decorate 60 NoContraction
                              Decorate 61 NoContraction
                              Decorate 62 NoContraction
                              Decorate 68 NoContraction
                              Decorate 69 NoContraction
                              Decorate 70 NoContraction
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 2
               8:             TypeInt 32 0
               9:      8(int) Constant 3
              10:             TypeArray 7(fvec2) 9
              11:             TypePointer Output 10
12(in_te_position):     11(ptr) Variable Output
              13:             TypeInt 32 1
              14:             TypePointer Input 13(int)
15(gl_InvocationID):     14(ptr) Variable Input
              17:      8(int) Constant 32
              18:             TypeArray 7(fvec2) 17
              19:             TypePointer Input 18
20(in_tc_position):     19(ptr) Variable Input
              22:             TypePointer Input 7(fvec2)
              25:             TypePointer Output 7(fvec2)
              27:      8(int) Constant 2
              28:             TypeArray 6(float) 27
              29:             TypePointer Output 28
30(gl_TessLevelInner):     29(ptr) Variable Output
              31:     13(int) Constant 0
              32:    6(float) Constant 1084227584
              33:             TypePointer Output 6(float)
              35:     13(int) Constant 1
              37:      8(int) Constant 4
              38:             TypeArray 6(float) 37
              39:             TypePointer Output 38
40(gl_TessLevelOuter):     39(ptr) Variable Output
              41:    6(float) Constant 1065353216
              42:    6(float) Constant 1105985536
              43:             TypeArray 6(float) 17
              44:             TypePointer Input 43
45(in_tc_tessParam):     44(ptr) Variable Input
              46:             TypePointer Input 6(float)
              49:     13(int) Constant 2
         4(main):           2 Function None 3
               5:             Label
              16:     13(int) Load 15(gl_InvocationID)
              21:     13(int) Load 15(gl_InvocationID)
              23:     22(ptr) AccessChain 20(in_tc_position) 21
              24:    7(fvec2) Load 23
              26:     25(ptr) AccessChain 12(in_te_position) 16
                              Store 26 24
              34:     33(ptr) AccessChain 30(gl_TessLevelInner) 31
                              Store 34 32
              36:     33(ptr) AccessChain 30(gl_TessLevelInner) 35
                              Store 36 32
              47:     46(ptr) AccessChain 45(in_tc_tessParam) 35
              48:    6(float) Load 47
              50:     46(ptr) AccessChain 45(in_tc_tessParam) 49
              51:    6(float) Load 50
              52:    6(float) FAdd 48 51
              53:    6(float) FMul 42 52
              54:    6(float) FAdd 41 53
              55:     33(ptr) AccessChain 40(gl_TessLevelOuter) 31
                              Store 55 54
              56:     46(ptr) AccessChain 45(in_tc_tessParam) 49
              57:    6(float) Load 56
              58:     46(ptr) AccessChain 45(in_tc_tessParam) 31
              59:    6(float) Load 58
              60:    6(float) FAdd 57 59
              61:    6(float) FMul 42 60
              62:    6(float) FAdd 41 61
              63:     33(ptr) AccessChain 40(gl_TessLevelOuter) 35
                              Store 63 62
              64:     46(ptr) AccessChain 45(in_tc_tessParam) 31
              65:    6(float) Load 64
              66:     46(ptr) AccessChain 45(in_tc_tessParam) 35
              67:    6(float) Load 66
              68:    6(float) FAdd 65 67
              69:    6(float) FMul 42 68
              70:    6(float) FAdd 41 69
              71:     33(ptr) AccessChain 40(gl_TessLevelOuter) 49
                              Store 71 70
                              Return
                              FunctionEnd
