hlsl.comparison.vec.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:4  Function Definition: Bug1(vf4; (temp void)
0:4    Function Parameters: 
0:4      'a' (in 4-component vector of float)
0:?     Sequence
0:5      Sequence
0:5        move second child to first child (temp 4-component vector of float)
0:5          'v04' (temp 4-component vector of float)
0:?           Constant:
0:?             0.000000
0:?             0.000000
0:?             0.000000
0:?             0.000000
0:6      Sequence
0:6        move second child to first child (temp float)
0:6          'v01' (temp float)
0:6          Constant:
0:6            0.000000
0:8      Sequence
0:8        move second child to first child (temp 4-component vector of bool)
0:8          'r00' (temp 4-component vector of bool)
0:8          Equal (temp 4-component vector of bool)
0:8            'a' (in 4-component vector of float)
0:8            'v04' (temp 4-component vector of float)
0:9      Sequence
0:9        move second child to first child (temp 4-component vector of bool)
0:9          'r01' (temp 4-component vector of bool)
0:9          NotEqual (temp 4-component vector of bool)
0:9            'a' (in 4-component vector of float)
0:9            'v04' (temp 4-component vector of float)
0:10      Sequence
0:10        move second child to first child (temp 4-component vector of bool)
0:10          'r02' (temp 4-component vector of bool)
0:10          Compare Less Than (temp 4-component vector of bool)
0:10            'a' (in 4-component vector of float)
0:10            'v04' (temp 4-component vector of float)
0:11      Sequence
0:11        move second child to first child (temp 4-component vector of bool)
0:11          'r03' (temp 4-component vector of bool)
0:11          Compare Greater Than (temp 4-component vector of bool)
0:11            'a' (in 4-component vector of float)
0:11            'v04' (temp 4-component vector of float)
0:13      Sequence
0:13        move second child to first child (temp 4-component vector of bool)
0:13          'r10' (temp 4-component vector of bool)
0:13          Equal (temp 4-component vector of bool)
0:13            'a' (in 4-component vector of float)
0:13            Construct vec4 (in 4-component vector of float)
0:13              'v01' (temp float)
0:14      Sequence
0:14        move second child to first child (temp 4-component vector of bool)
0:14          'r11' (temp 4-component vector of bool)
0:14          NotEqual (temp 4-component vector of bool)
0:14            'a' (in 4-component vector of float)
0:14            Construct vec4 (in 4-component vector of float)
0:14              'v01' (temp float)
0:15      Sequence
0:15        move second child to first child (temp 4-component vector of bool)
0:15          'r12' (temp 4-component vector of bool)
0:15          Compare Less Than (temp 4-component vector of bool)
0:15            'a' (in 4-component vector of float)
0:15            Construct vec4 (in 4-component vector of float)
0:15              'v01' (temp float)
0:16      Sequence
0:16        move second child to first child (temp 4-component vector of bool)
0:16          'r13' (temp 4-component vector of bool)
0:16          Compare Greater Than (temp 4-component vector of bool)
0:16            'a' (in 4-component vector of float)
0:16            Construct vec4 (in 4-component vector of float)
0:16              'v01' (temp float)
0:18      Sequence
0:18        move second child to first child (temp 4-component vector of bool)
0:18          'r20' (temp 4-component vector of bool)
0:18          Equal (temp 4-component vector of bool)
0:18            Construct vec4 (in 4-component vector of float)
0:18              'v01' (temp float)
0:18            'a' (in 4-component vector of float)
0:19      Sequence
0:19        move second child to first child (temp 4-component vector of bool)
0:19          'r21' (temp 4-component vector of bool)
0:19          NotEqual (temp 4-component vector of bool)
0:19            Construct vec4 (in 4-component vector of float)
0:19              'v01' (temp float)
0:19            'a' (in 4-component vector of float)
0:20      Sequence
0:20        move second child to first child (temp 4-component vector of bool)
0:20          'r22' (temp 4-component vector of bool)
0:20          Compare Less Than (temp 4-component vector of bool)
0:20            Construct vec4 (in 4-component vector of float)
0:20              'v01' (temp float)
0:20            'a' (in 4-component vector of float)
0:21      Sequence
0:21        move second child to first child (temp 4-component vector of bool)
0:21          'r23' (temp 4-component vector of bool)
0:21          Compare Greater Than (temp 4-component vector of bool)
0:21            Construct vec4 (in 4-component vector of float)
0:21              'v01' (temp float)
0:21            'a' (in 4-component vector of float)
0:30  Function Definition: main( (temp structure{temp 4-component vector of float Color})
0:30    Function Parameters: 
0:?     Sequence
0:32      move second child to first child (temp 4-component vector of float)
0:32        Color: direct index for structure (temp 4-component vector of float)
0:32          'psout' (temp structure{temp 4-component vector of float Color})
0:32          Constant:
0:32            0 (const int)
0:32        Constant:
0:32          0.000000
0:32          0.000000
0:32          0.000000
0:32          0.000000
0:33      Sequence
0:33        Sequence
0:33          move second child to first child (temp 4-component vector of float)
0:?             'Color' (layout(location=0 ) out 4-component vector of float)
0:33            Color: direct index for structure (temp 4-component vector of float)
0:33              'psout' (temp structure{temp 4-component vector of float Color})
0:33              Constant:
0:33                0 (const int)
0:33        Branch: Return
0:?   Linker Objects
0:?     'anon@0' (uniform block{layout(offset=0 ) uniform 4-component vector of float uf4})
0:?     'Color' (layout(location=0 ) out 4-component vector of float)


Linked fragment stage:


Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:4  Function Definition: Bug1(vf4; (temp void)
0:4    Function Parameters: 
0:4      'a' (in 4-component vector of float)
0:?     Sequence
0:5      Sequence
0:5        move second child to first child (temp 4-component vector of float)
0:5          'v04' (temp 4-component vector of float)
0:?           Constant:
0:?             0.000000
0:?             0.000000
0:?             0.000000
0:?             0.000000
0:6      Sequence
0:6        move second child to first child (temp float)
0:6          'v01' (temp float)
0:6          Constant:
0:6            0.000000
0:8      Sequence
0:8        move second child to first child (temp 4-component vector of bool)
0:8          'r00' (temp 4-component vector of bool)
0:8          Equal (temp 4-component vector of bool)
0:8            'a' (in 4-component vector of float)
0:8            'v04' (temp 4-component vector of float)
0:9      Sequence
0:9        move second child to first child (temp 4-component vector of bool)
0:9          'r01' (temp 4-component vector of bool)
0:9          NotEqual (temp 4-component vector of bool)
0:9            'a' (in 4-component vector of float)
0:9            'v04' (temp 4-component vector of float)
0:10      Sequence
0:10        move second child to first child (temp 4-component vector of bool)
0:10          'r02' (temp 4-component vector of bool)
0:10          Compare Less Than (temp 4-component vector of bool)
0:10            'a' (in 4-component vector of float)
0:10            'v04' (temp 4-component vector of float)
0:11      Sequence
0:11        move second child to first child (temp 4-component vector of bool)
0:11          'r03' (temp 4-component vector of bool)
0:11          Compare Greater Than (temp 4-component vector of bool)
0:11            'a' (in 4-component vector of float)
0:11            'v04' (temp 4-component vector of float)
0:13      Sequence
0:13        move second child to first child (temp 4-component vector of bool)
0:13          'r10' (temp 4-component vector of bool)
0:13          Equal (temp 4-component vector of bool)
0:13            'a' (in 4-component vector of float)
0:13            Construct vec4 (in 4-component vector of float)
0:13              'v01' (temp float)
0:14      Sequence
0:14        move second child to first child (temp 4-component vector of bool)
0:14          'r11' (temp 4-component vector of bool)
0:14          NotEqual (temp 4-component vector of bool)
0:14            'a' (in 4-component vector of float)
0:14            Construct vec4 (in 4-component vector of float)
0:14              'v01' (temp float)
0:15      Sequence
0:15        move second child to first child (temp 4-component vector of bool)
0:15          'r12' (temp 4-component vector of bool)
0:15          Compare Less Than (temp 4-component vector of bool)
0:15            'a' (in 4-component vector of float)
0:15            Construct vec4 (in 4-component vector of float)
0:15              'v01' (temp float)
0:16      Sequence
0:16        move second child to first child (temp 4-component vector of bool)
0:16          'r13' (temp 4-component vector of bool)
0:16          Compare Greater Than (temp 4-component vector of bool)
0:16            'a' (in 4-component vector of float)
0:16            Construct vec4 (in 4-component vector of float)
0:16              'v01' (temp float)
0:18      Sequence
0:18        move second child to first child (temp 4-component vector of bool)
0:18          'r20' (temp 4-component vector of bool)
0:18          Equal (temp 4-component vector of bool)
0:18            Construct vec4 (in 4-component vector of float)
0:18              'v01' (temp float)
0:18            'a' (in 4-component vector of float)
0:19      Sequence
0:19        move second child to first child (temp 4-component vector of bool)
0:19          'r21' (temp 4-component vector of bool)
0:19          NotEqual (temp 4-component vector of bool)
0:19            Construct vec4 (in 4-component vector of float)
0:19              'v01' (temp float)
0:19            'a' (in 4-component vector of float)
0:20      Sequence
0:20        move second child to first child (temp 4-component vector of bool)
0:20          'r22' (temp 4-component vector of bool)
0:20          Compare Less Than (temp 4-component vector of bool)
0:20            Construct vec4 (in 4-component vector of float)
0:20              'v01' (temp float)
0:20            'a' (in 4-component vector of float)
0:21      Sequence
0:21        move second child to first child (temp 4-component vector of bool)
0:21          'r23' (temp 4-component vector of bool)
0:21          Compare Greater Than (temp 4-component vector of bool)
0:21            Construct vec4 (in 4-component vector of float)
0:21              'v01' (temp float)
0:21            'a' (in 4-component vector of float)
0:30  Function Definition: main( (temp structure{temp 4-component vector of float Color})
0:30    Function Parameters: 
0:?     Sequence
0:32      move second child to first child (temp 4-component vector of float)
0:32        Color: direct index for structure (temp 4-component vector of float)
0:32          'psout' (temp structure{temp 4-component vector of float Color})
0:32          Constant:
0:32            0 (const int)
0:32        Constant:
0:32          0.000000
0:32          0.000000
0:32          0.000000
0:32          0.000000
0:33      Sequence
0:33        Sequence
0:33          move second child to first child (temp 4-component vector of float)
0:?             'Color' (layout(location=0 ) out 4-component vector of float)
0:33            Color: direct index for structure (temp 4-component vector of float)
0:33              'psout' (temp structure{temp 4-component vector of float Color})
0:33              Constant:
0:33                0 (const int)
0:33        Branch: Return
0:?   Linker Objects
0:?     'anon@0' (uniform block{layout(offset=0 ) uniform 4-component vector of float uf4})
0:?     'Color' (layout(location=0 ) out 4-component vector of float)

// Module Version 10000
// Generated by (magic number): 80001
// Id's are bound by 91

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 84
                              ExecutionMode 4 OriginUpperLeft
                              Name 4  "main"
                              Name 11  "Bug1(vf4;"
                              Name 10  "a"
                              Name 13  "v04"
                              Name 17  "v01"
                              Name 21  "r00"
                              Name 25  "r01"
                              Name 29  "r02"
                              Name 33  "r03"
                              Name 37  "r10"
                              Name 42  "r11"
                              Name 47  "r12"
                              Name 52  "r13"
                              Name 57  "r20"
                              Name 62  "r21"
                              Name 67  "r22"
                              Name 72  "r23"
                              Name 77  "PS_OUTPUT"
                              MemberName 77(PS_OUTPUT) 0  "Color"
                              Name 79  "psout"
                              Name 84  "Color"
                              Name 88  "$Global"
                              MemberName 88($Global) 0  "uf4"
                              Name 90  ""
                              Decorate 84(Color) Location 0
                              Decorate 88($Global) Block
                              Decorate 90 DescriptorSet 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 4
               8:             TypePointer Function 7(fvec4)
               9:             TypeFunction 2 8(ptr)
              14:    6(float) Constant 0
              15:    7(fvec4) ConstantComposite 14 14 14 14
              16:             TypePointer Function 6(float)
              18:             TypeBool
              19:             TypeVector 18(bool) 4
              20:             TypePointer Function 19(bvec4)
   77(PS_OUTPUT):             TypeStruct 7(fvec4)
              78:             TypePointer Function 77(PS_OUTPUT)
              80:             TypeInt 32 1
              81:     80(int) Constant 0
              83:             TypePointer Output 7(fvec4)
       84(Color):     83(ptr) Variable Output
     88($Global):             TypeStruct 7(fvec4)
              89:             TypePointer Uniform 88($Global)
              90:     89(ptr) Variable Uniform
         4(main):           2 Function None 3
               5:             Label
       79(psout):     78(ptr) Variable Function
              82:      8(ptr) AccessChain 79(psout) 81
                              Store 82 15
              85:      8(ptr) AccessChain 79(psout) 81
              86:    7(fvec4) Load 85
                              Store 84(Color) 86
                              Return
                              FunctionEnd
   11(Bug1(vf4;):           2 Function None 9
           10(a):      8(ptr) FunctionParameter
              12:             Label
         13(v04):      8(ptr) Variable Function
         17(v01):     16(ptr) Variable Function
         21(r00):     20(ptr) Variable Function
         25(r01):     20(ptr) Variable Function
         29(r02):     20(ptr) Variable Function
         33(r03):     20(ptr) Variable Function
         37(r10):     20(ptr) Variable Function
         42(r11):     20(ptr) Variable Function
         47(r12):     20(ptr) Variable Function
         52(r13):     20(ptr) Variable Function
         57(r20):     20(ptr) Variable Function
         62(r21):     20(ptr) Variable Function
         67(r22):     20(ptr) Variable Function
         72(r23):     20(ptr) Variable Function
                              Store 13(v04) 15
                              Store 17(v01) 14
              22:    7(fvec4) Load 10(a)
              23:    7(fvec4) Load 13(v04)
              24:   19(bvec4) FOrdEqual 22 23
                              Store 21(r00) 24
              26:    7(fvec4) Load 10(a)
              27:    7(fvec4) Load 13(v04)
              28:   19(bvec4) FOrdNotEqual 26 27
                              Store 25(r01) 28
              30:    7(fvec4) Load 10(a)
              31:    7(fvec4) Load 13(v04)
              32:   19(bvec4) FOrdLessThan 30 31
                              Store 29(r02) 32
              34:    7(fvec4) Load 10(a)
              35:    7(fvec4) Load 13(v04)
              36:   19(bvec4) FOrdGreaterThan 34 35
                              Store 33(r03) 36
              38:    7(fvec4) Load 10(a)
              39:    6(float) Load 17(v01)
              40:    7(fvec4) CompositeConstruct 39 39 39 39
              41:   19(bvec4) FOrdEqual 38 40
                              Store 37(r10) 41
              43:    7(fvec4) Load 10(a)
              44:    6(float) Load 17(v01)
              45:    7(fvec4) CompositeConstruct 44 44 44 44
              46:   19(bvec4) FOrdNotEqual 43 45
                              Store 42(r11) 46
              48:    7(fvec4) Load 10(a)
              49:    6(float) Load 17(v01)
              50:    7(fvec4) CompositeConstruct 49 49 49 49
              51:   19(bvec4) FOrdLessThan 48 50
                              Store 47(r12) 51
              53:    7(fvec4) Load 10(a)
              54:    6(float) Load 17(v01)
              55:    7(fvec4) CompositeConstruct 54 54 54 54
              56:   19(bvec4) FOrdGreaterThan 53 55
                              Store 52(r13) 56
              58:    6(float) Load 17(v01)
              59:    7(fvec4) CompositeConstruct 58 58 58 58
              60:    7(fvec4) Load 10(a)
              61:   19(bvec4) FOrdEqual 59 60
                              Store 57(r20) 61
              63:    6(float) Load 17(v01)
              64:    7(fvec4) CompositeConstruct 63 63 63 63
              65:    7(fvec4) Load 10(a)
              66:   19(bvec4) FOrdNotEqual 64 65
                              Store 62(r21) 66
              68:    6(float) Load 17(v01)
              69:    7(fvec4) CompositeConstruct 68 68 68 68
              70:    7(fvec4) Load 10(a)
              71:   19(bvec4) FOrdLessThan 69 70
                              Store 67(r22) 71
              73:    6(float) Load 17(v01)
              74:    7(fvec4) CompositeConstruct 73 73 73 73
              75:    7(fvec4) Load 10(a)
              76:   19(bvec4) FOrdGreaterThan 74 75
                              Store 72(r23) 76
                              Return
                              FunctionEnd
