spv.precision.frag Linked fragment stage: // Module Version 99 // Generated by (magic number): 51a00bb // Id's are bound by 111 Source ESSL 300 1: ExtInstImport "GLSL.std.450" MemoryModel Logical GLSL450 EntryPoint Fragment 4 Name 4 "main" Name 13 "foo(vf3;" Name 12 "mv3" Name 20 "boolfun(vb2;" Name 19 "bv2" Name 24 "highfin" Name 37 "sum" Name 39 "uniform_medium" Name 41 "uniform_high" Name 47 "uniform_low" Name 52 "arg1" Name 54 "arg2" Name 56 "d" Name 58 "lowfin" Name 60 "mediumfin" Name 64 "global_highp" Name 68 "local_highp" Name 72 "mediumfout" Name 101 "ub2" Name 102 "param" Decorate 24(highfin) PrecisionHigh Decorate 24(highfin) Smooth Decorate 37(sum) PrecisionLow Decorate 39(uniform_medium) PrecisionMedium Decorate 41(uniform_high) PrecisionHigh Decorate 47(uniform_low) PrecisionLow Decorate 52(arg1) PrecisionLow Decorate 54(arg2) PrecisionMedium Decorate 56(d) PrecisionLow Decorate 58(lowfin) PrecisionLow Decorate 58(lowfin) Smooth Decorate 60(mediumfin) PrecisionMedium Decorate 60(mediumfin) Smooth Decorate 64(global_highp) PrecisionHigh Decorate 68(local_highp) PrecisionHigh Decorate 72(mediumfout) PrecisionMedium 2: TypeVoid 3: TypeFunction 2 7: TypeFloat 32 8: TypeVector 7(float) 3 9: TypePointer Function 8(fvec3) 10: TypeVector 7(float) 2 11: TypeFunction 10(fvec2) 9(ptr) 15: TypeBool 16: TypeVector 15(bool) 2 17: TypePointer Function 16(bvec2) 18: TypeFunction 15(bool) 17(ptr) 22: TypeVector 7(float) 4 23: TypePointer Input 22(fvec4) 24(highfin): 23(ptr) Variable Input 29: 15(bool) ConstantFalse 30: 15(bool) ConstantTrue 31: 16(bvec2) ConstantComposite 29 30 35: TypeInt 32 1 36: TypePointer Function 35(int) 38: TypePointer UniformConstant 35(int) 39(uniform_medium): 38(ptr) Variable UniformConstant 41(uniform_high): 38(ptr) Variable UniformConstant 47(uniform_low): 38(ptr) Variable UniformConstant 51: TypePointer Function 7(float) 53: 7(float) Constant 1078774989 55: 7(float) Constant 1232730691 57: TypePointer Input 7(float) 58(lowfin): 57(ptr) Variable Input 60(mediumfin): 57(ptr) Variable Input 63: TypePointer PrivateGlobal 7(float) 64(global_highp): 63(ptr) Variable PrivateGlobal 67: TypePointer Function 22(fvec4) 71: TypePointer Output 22(fvec4) 72(mediumfout): 71(ptr) Variable Output 81: 35(int) Constant 4 83: TypeVector 35(int) 2 100: TypePointer UniformConstant 16(bvec2) 101(ub2): 100(ptr) Variable UniformConstant 108: 7(float) Constant 1065353216 4(main): 2 Function None 3 5: Label 37(sum): 36(ptr) Variable Function 52(arg1): 51(ptr) Variable Function 54(arg2): 51(ptr) Variable Function 56(d): 51(ptr) Variable Function 68(local_highp): 67(ptr) Variable Function 102(param): 17(ptr) Variable Function 40: 35(int) Load 39(uniform_medium) 42: 35(int) Load 41(uniform_high) 43: 35(int) IAdd 40 42 Store 37(sum) 43 44: 35(int) Load 41(uniform_high) 45: 35(int) Load 37(sum) 46: 35(int) IAdd 45 44 Store 37(sum) 46 48: 35(int) Load 47(uniform_low) 49: 35(int) Load 37(sum) 50: 35(int) IAdd 49 48 Store 37(sum) 50 Store 52(arg1) 53 Store 54(arg2) 55 59: 7(float) Load 58(lowfin) 61: 7(float) Load 60(mediumfin) 62: 7(float) ExtInst 1(GLSL.std.450) 59(distance) 59 61 Store 56(d) 62 65: 22(fvec4) Load 24(highfin) 66: 7(float) ExtInst 1(GLSL.std.450) 58(length) 65 Store 64(global_highp) 66 69: 7(float) Load 64(global_highp) 70: 22(fvec4) CompositeConstruct 69 69 69 69 Store 68(local_highp) 70 73: 7(float) Load 56(d) 74: 7(float) ExtInst 1(GLSL.std.450) 10(sin) 73 75: 22(fvec4) CompositeConstruct 74 74 74 74 76: 7(float) Load 54(arg2) 77: 22(fvec4) CompositeConstruct 76 76 76 76 78: 22(fvec4) FAdd 75 77 79: 22(fvec4) Load 68(local_highp) 80: 22(fvec4) FAdd 78 79 Store 72(mediumfout) 80 82: 35(int) Load 47(uniform_low) 84: 83(ivec2) CompositeConstruct 82 82 85: 35(int) Load 41(uniform_high) 86: 83(ivec2) CompositeConstruct 85 85 87: 83(ivec2) IMul 84 86 88: 35(int) Load 41(uniform_high) 89: 83(ivec2) CompositeConstruct 88 88 90: 83(ivec2) IAdd 87 89 91: 35(int) CompositeExtract 90 0 92: 35(int) IAdd 81 91 93: 35(int) Load 37(sum) 94: 35(int) IAdd 93 92 Store 37(sum) 94 95: 35(int) Load 37(sum) 96: 7(float) ConvertSToF 95 97: 22(fvec4) CompositeConstruct 96 96 96 96 98: 22(fvec4) Load 72(mediumfout) 99: 22(fvec4) FAdd 98 97 Store 72(mediumfout) 99 103: 16(bvec2) Load 101(ub2) Store 102(param) 103 104: 15(bool) FunctionCall 20(boolfun(vb2;) 102(param) SelectionMerge 106 None BranchConditional 104 105 106 105: Label 107: 22(fvec4) Load 72(mediumfout) 109: 22(fvec4) CompositeConstruct 108 108 108 108 110: 22(fvec4) FAdd 107 109 Store 72(mediumfout) 110 Branch 106 106: Label Branch 6 6: Label Return FunctionEnd 13(foo(vf3;): 10(fvec2) Function None 11 12(mv3): 9(ptr) FunctionParameter 14: Label 25: 22(fvec4) Load 24(highfin) 26: 10(fvec2) VectorShuffle 25 25 0 1 ReturnValue 26 FunctionEnd 20(boolfun(vb2;): 15(bool) Function None 18 19(bv2): 17(ptr) FunctionParameter 21: Label 28: 16(bvec2) Load 19(bv2) 32: 16(bvec2) IEqual 28 31 33: 15(bool) All 32 ReturnValue 33 FunctionEnd