spv.precision.frag
// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 146

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 23 62 64 76 119
                              ExecutionMode 4 OriginUpperLeft
                              Source ESSL 310
                              Name 4  "main"
                              Name 12  "foo(vf3;"
                              Name 11  "mv3"
                              Name 19  "boolfun(vb2;"
                              Name 18  "bv2"
                              Name 23  "highfin"
                              Name 41  "sum"
                              Name 43  "uniform_medium"
                              Name 45  "uniform_high"
                              Name 51  "uniform_low"
                              Name 56  "arg1"
                              Name 58  "arg2"
                              Name 60  "d"
                              Name 62  "lowfin"
                              Name 64  "mediumfin"
                              Name 68  "global_highp"
                              Name 72  "local_highp"
                              Name 76  "mediumfout"
                              Name 107  "ub2"
                              Name 108  "param"
                              Name 117  "S"
                              MemberName 117(S) 0  "a"
                              MemberName 117(S) 1  "b"
                              Name 119  "s"
                              Decorate 12(foo(vf3;) RelaxedPrecision
                              Decorate 11(mv3) RelaxedPrecision
                              Decorate 27 RelaxedPrecision
                              Decorate 28 RelaxedPrecision
                              Decorate 41(sum) RelaxedPrecision
                              Decorate 43(uniform_medium) RelaxedPrecision
                              Decorate 44 RelaxedPrecision
                              Decorate 49 RelaxedPrecision
                              Decorate 51(uniform_low) RelaxedPrecision
                              Decorate 52 RelaxedPrecision
                              Decorate 53 RelaxedPrecision
                              Decorate 54 RelaxedPrecision
                              Decorate 56(arg1) RelaxedPrecision
                              Decorate 58(arg2) RelaxedPrecision
                              Decorate 60(d) RelaxedPrecision
                              Decorate 62(lowfin) RelaxedPrecision
                              Decorate 63 RelaxedPrecision
                              Decorate 64(mediumfin) RelaxedPrecision
                              Decorate 65 RelaxedPrecision
                              Decorate 66 RelaxedPrecision
                              Decorate 76(mediumfout) RelaxedPrecision
                              Decorate 77 RelaxedPrecision
                              Decorate 78 RelaxedPrecision
                              Decorate 79 RelaxedPrecision
                              Decorate 80 RelaxedPrecision
                              Decorate 81 RelaxedPrecision
                              Decorate 82 RelaxedPrecision
                              Decorate 86 RelaxedPrecision
                              Decorate 88 RelaxedPrecision
                              Decorate 90 RelaxedPrecision
                              Decorate 91 RelaxedPrecision
                              Decorate 93 RelaxedPrecision
                              Decorate 94 RelaxedPrecision
                              Decorate 97 RelaxedPrecision
                              Decorate 98 RelaxedPrecision
                              Decorate 99 RelaxedPrecision
                              Decorate 100 RelaxedPrecision
                              Decorate 101 RelaxedPrecision
                              Decorate 102 RelaxedPrecision
                              Decorate 103 RelaxedPrecision
                              Decorate 104 RelaxedPrecision
                              Decorate 105 RelaxedPrecision
                              Decorate 113 RelaxedPrecision
                              Decorate 115 RelaxedPrecision
                              Decorate 116 RelaxedPrecision
                              MemberDecorate 117(S) 1 RelaxedPrecision
                              Decorate 123 RelaxedPrecision
                              Decorate 127 RelaxedPrecision
                              Decorate 128 RelaxedPrecision
                              Decorate 129 RelaxedPrecision
                              Decorate 130 RelaxedPrecision
                              Decorate 131 RelaxedPrecision
                              Decorate 132 RelaxedPrecision
                              Decorate 135 RelaxedPrecision
                              Decorate 139 RelaxedPrecision
                              Decorate 140 RelaxedPrecision
                              Decorate 143 RelaxedPrecision
                              Decorate 144 RelaxedPrecision
                              Decorate 145 RelaxedPrecision
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 3
               8:             TypePointer Function 7(fvec3)
               9:             TypeVector 6(float) 2
              10:             TypeFunction 9(fvec2) 8(ptr)
              14:             TypeBool
              15:             TypeVector 14(bool) 2
              16:             TypePointer Function 15(bvec2)
              17:             TypeFunction 14(bool) 16(ptr)
              21:             TypeVector 6(float) 4
              22:             TypePointer Input 21(fvec4)
     23(highfin):     22(ptr) Variable Input
              26:             TypePointer Function 9(fvec2)
              32:    14(bool) ConstantFalse
              33:    14(bool) ConstantTrue
              34:   15(bvec2) ConstantComposite 32 33
              39:             TypeInt 32 1
              40:             TypePointer Function 39(int)
              42:             TypePointer Private 39(int)
43(uniform_medium):     42(ptr) Variable Private
45(uniform_high):     42(ptr) Variable Private
 51(uniform_low):     42(ptr) Variable Private
              55:             TypePointer Function 6(float)
              57:    6(float) Constant 1078774989
              59:    6(float) Constant 1232730691
              61:             TypePointer Input 6(float)
      62(lowfin):     61(ptr) Variable Input
   64(mediumfin):     61(ptr) Variable Input
              67:             TypePointer Private 6(float)
68(global_highp):     67(ptr) Variable Private
              71:             TypePointer Function 21(fvec4)
              75:             TypePointer Output 21(fvec4)
  76(mediumfout):     75(ptr) Variable Output
              85:     39(int) Constant 4
              87:             TypeVector 39(int) 2
              95:             TypeInt 32 0
              96:     95(int) Constant 0
             106:             TypePointer Private 15(bvec2)
        107(ub2):    106(ptr) Variable Private
             114:    6(float) Constant 1065353216
          117(S):             TypeStruct 6(float) 6(float)
             118:             TypePointer Input 117(S)
          119(s):    118(ptr) Variable Input
             120:     39(int) Constant 0
             125:     39(int) Constant 1
             133:    6(float) Constant 1082549862
             138:    6(float) Constant 1073741824
             142:    6(float) Constant 1077936128
         4(main):           2 Function None 3
               5:             Label
         41(sum):     40(ptr) Variable Function
        56(arg1):     55(ptr) Variable Function
        58(arg2):     55(ptr) Variable Function
           60(d):     55(ptr) Variable Function
 72(local_highp):     71(ptr) Variable Function
      108(param):     16(ptr) Variable Function
             135:     71(ptr) Variable Function
              44:     39(int) Load 43(uniform_medium)
              46:     39(int) Load 45(uniform_high)
              47:     39(int) IAdd 44 46
                              Store 41(sum) 47
              48:     39(int) Load 45(uniform_high)
              49:     39(int) Load 41(sum)
              50:     39(int) IAdd 49 48
                              Store 41(sum) 50
              52:     39(int) Load 51(uniform_low)
              53:     39(int) Load 41(sum)
              54:     39(int) IAdd 53 52
                              Store 41(sum) 54
                              Store 56(arg1) 57
                              Store 58(arg2) 59
              63:    6(float) Load 62(lowfin)
              65:    6(float) Load 64(mediumfin)
              66:    6(float) ExtInst 1(GLSL.std.450) 67(Distance) 63 65
                              Store 60(d) 66
              69:   21(fvec4) Load 23(highfin)
              70:    6(float) ExtInst 1(GLSL.std.450) 66(Length) 69
                              Store 68(global_highp) 70
              73:    6(float) Load 68(global_highp)
              74:   21(fvec4) CompositeConstruct 73 73 73 73
                              Store 72(local_highp) 74
              77:    6(float) Load 60(d)
              78:    6(float) ExtInst 1(GLSL.std.450) 13(Sin) 77
              79:   21(fvec4) CompositeConstruct 78 78 78 78
              80:    6(float) Load 58(arg2)
              81:   21(fvec4) CompositeConstruct 80 80 80 80
              82:   21(fvec4) FAdd 79 81
              83:   21(fvec4) Load 72(local_highp)
              84:   21(fvec4) FAdd 82 83
                              Store 76(mediumfout) 84
              86:     39(int) Load 51(uniform_low)
              88:   87(ivec2) CompositeConstruct 86 86
              89:     39(int) Load 45(uniform_high)
              90:   87(ivec2) CompositeConstruct 89 89
              91:   87(ivec2) IMul 88 90
              92:     39(int) Load 45(uniform_high)
              93:   87(ivec2) CompositeConstruct 92 92
              94:   87(ivec2) IAdd 91 93
              97:     39(int) CompositeExtract 94 0
              98:     39(int) IAdd 85 97
              99:     39(int) Load 41(sum)
             100:     39(int) IAdd 99 98
                              Store 41(sum) 100
             101:     39(int) Load 41(sum)
             102:    6(float) ConvertSToF 101
             103:   21(fvec4) CompositeConstruct 102 102 102 102
             104:   21(fvec4) Load 76(mediumfout)
             105:   21(fvec4) FAdd 104 103
                              Store 76(mediumfout) 105
             109:   15(bvec2) Load 107(ub2)
                              Store 108(param) 109
             110:    14(bool) FunctionCall 19(boolfun(vb2;) 108(param)
                              SelectionMerge 112 None
                              BranchConditional 110 111 112
             111:               Label
             113:   21(fvec4)   Load 76(mediumfout)
             115:   21(fvec4)   CompositeConstruct 114 114 114 114
             116:   21(fvec4)   FAdd 113 115
                                Store 76(mediumfout) 116
                                Branch 112
             112:             Label
             121:     61(ptr) AccessChain 119(s) 120
             122:    6(float) Load 121
             123:   21(fvec4) Load 76(mediumfout)
             124:   21(fvec4) VectorTimesScalar 123 122
                              Store 76(mediumfout) 124
             126:     61(ptr) AccessChain 119(s) 125
             127:    6(float) Load 126
             128:   21(fvec4) Load 76(mediumfout)
             129:   21(fvec4) VectorTimesScalar 128 127
                              Store 76(mediumfout) 129
             130:    6(float) Load 64(mediumfin)
             131:    6(float) Load 64(mediumfin)
             132:    6(float) FMul 130 131
             134:    14(bool) FOrdGreaterThan 132 133
                              SelectionMerge 137 None
                              BranchConditional 134 136 141
             136:               Label
             139:   21(fvec4)   Load 76(mediumfout)
             140:   21(fvec4)   VectorTimesScalar 139 138
                                Store 135 140
                                Branch 137
             141:               Label
             143:   21(fvec4)   Load 76(mediumfout)
             144:   21(fvec4)   VectorTimesScalar 143 142
                                Store 135 144
                                Branch 137
             137:             Label
             145:   21(fvec4) Load 135
                              Store 76(mediumfout) 145
                              Return
                              FunctionEnd
    12(foo(vf3;):    9(fvec2) Function None 10
         11(mv3):      8(ptr) FunctionParameter
              13:             Label
              27:     26(ptr) Variable Function
              24:   21(fvec4) Load 23(highfin)
              25:    9(fvec2) VectorShuffle 24 24 0 1
                              Store 27 25
              28:    9(fvec2) Load 27
                              ReturnValue 28
                              FunctionEnd
19(boolfun(vb2;):    14(bool) Function None 17
         18(bv2):     16(ptr) FunctionParameter
              20:             Label
              31:   15(bvec2) Load 18(bv2)
              35:   15(bvec2) LogicalEqual 31 34
              36:    14(bool) All 35
                              ReturnValue 36
                              FunctionEnd
