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:?     'Color' (layout(location=0 ) out 4-component vector of float)
0:?     'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float uf4})


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:?     'Color' (layout(location=0 ) out 4-component vector of float)
0:?     'anon@0' (layout(row_major std140 ) uniform block{layout(offset=0 ) uniform 4-component vector of float uf4})

// 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
                              MemberDecorate 88($Global) 0 Offset 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
