hlsl.numericsuffixes.frag
Shader version: 450
gl_FragCoord origin is upper left
0:? Sequence
0:5  Function Definition: main( (global structure{temp 4-component vector of float color})
0:5    Function Parameters: 
0:?     Sequence
0:7      Sequence
0:7        move second child to first child (temp float)
0:7          'r00' (temp float)
0:7          Constant:
0:7            1.000000
0:8      Sequence
0:8        move second child to first child (temp uint)
0:8          'r01' (temp uint)
0:8          Constant:
0:8            1 (const uint)
0:9      Sequence
0:9        move second child to first child (temp uint)
0:9          'r02' (temp uint)
0:9          Constant:
0:9            2 (const uint)
0:10      Sequence
0:10        move second child to first child (temp uint)
0:10          'r03' (temp uint)
0:10          Constant:
0:10            2748 (const uint)
0:11      Sequence
0:11        move second child to first child (temp uint)
0:11          'r04' (temp uint)
0:11          Constant:
0:11            2748 (const uint)
0:12      Sequence
0:12        move second child to first child (temp int)
0:12          'r05' (temp int)
0:12          Constant:
0:12            5 (const int)
0:13      Sequence
0:13        move second child to first child (temp int)
0:13          'r06' (temp int)
0:13          Constant:
0:13            6 (const int)
0:14      Sequence
0:14        move second child to first child (temp int)
0:14          'r07' (temp int)
0:14          Constant:
0:14            57 (const int)
0:15      Sequence
0:15        move second child to first child (temp uint)
0:15          'r08' (temp uint)
0:15          Constant:
0:15            58 (const uint)
0:18      move second child to first child (temp 4-component vector of float)
0:18        color: direct index for structure (temp 4-component vector of float)
0:18          'ps_output' (temp structure{temp 4-component vector of float color})
0:18          Constant:
0:18            0 (const int)
0:18        Construct vec4 (temp 4-component vector of float)
0:18          Convert int to float (temp float)
0:18            'r07' (temp int)
0:?       Sequence
0:?         Sequence
0:19          move second child to first child (temp 4-component vector of float)
0:?             'color' (layout(location=0 ) out 4-component vector of float)
0:19            color: direct index for structure (temp 4-component vector of float)
0:19              'ps_output' (temp structure{temp 4-component vector of float color})
0:19              Constant:
0:19                0 (const int)
0:19        Branch: Return
0:?   Linker Objects
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:5  Function Definition: main( (global structure{temp 4-component vector of float color})
0:5    Function Parameters: 
0:?     Sequence
0:7      Sequence
0:7        move second child to first child (temp float)
0:7          'r00' (temp float)
0:7          Constant:
0:7            1.000000
0:8      Sequence
0:8        move second child to first child (temp uint)
0:8          'r01' (temp uint)
0:8          Constant:
0:8            1 (const uint)
0:9      Sequence
0:9        move second child to first child (temp uint)
0:9          'r02' (temp uint)
0:9          Constant:
0:9            2 (const uint)
0:10      Sequence
0:10        move second child to first child (temp uint)
0:10          'r03' (temp uint)
0:10          Constant:
0:10            2748 (const uint)
0:11      Sequence
0:11        move second child to first child (temp uint)
0:11          'r04' (temp uint)
0:11          Constant:
0:11            2748 (const uint)
0:12      Sequence
0:12        move second child to first child (temp int)
0:12          'r05' (temp int)
0:12          Constant:
0:12            5 (const int)
0:13      Sequence
0:13        move second child to first child (temp int)
0:13          'r06' (temp int)
0:13          Constant:
0:13            6 (const int)
0:14      Sequence
0:14        move second child to first child (temp int)
0:14          'r07' (temp int)
0:14          Constant:
0:14            57 (const int)
0:15      Sequence
0:15        move second child to first child (temp uint)
0:15          'r08' (temp uint)
0:15          Constant:
0:15            58 (const uint)
0:18      move second child to first child (temp 4-component vector of float)
0:18        color: direct index for structure (temp 4-component vector of float)
0:18          'ps_output' (temp structure{temp 4-component vector of float color})
0:18          Constant:
0:18            0 (const int)
0:18        Construct vec4 (temp 4-component vector of float)
0:18          Convert int to float (temp float)
0:18            'r07' (temp int)
0:?       Sequence
0:?         Sequence
0:19          move second child to first child (temp 4-component vector of float)
0:?             'color' (layout(location=0 ) out 4-component vector of float)
0:19            color: direct index for structure (temp 4-component vector of float)
0:19              'ps_output' (temp structure{temp 4-component vector of float color})
0:19              Constant:
0:19                0 (const int)
0:19        Branch: Return
0:?   Linker Objects
0:?     'color' (layout(location=0 ) out 4-component vector of float)

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

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 40
                              ExecutionMode 4 OriginUpperLeft
                              Name 4  "main"
                              Name 8  "r00"
                              Name 12  "r01"
                              Name 14  "r02"
                              Name 16  "r03"
                              Name 18  "r04"
                              Name 21  "r05"
                              Name 23  "r06"
                              Name 25  "r07"
                              Name 27  "r08"
                              Name 30  "PS_OUTPUT"
                              MemberName 30(PS_OUTPUT) 0  "color"
                              Name 32  "ps_output"
                              Name 40  "color"
                              Decorate 40(color) Location 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypePointer Function 6(float)
               9:    6(float) Constant 1065353216
              10:             TypeInt 32 0
              11:             TypePointer Function 10(int)
              13:     10(int) Constant 1
              15:     10(int) Constant 2
              17:     10(int) Constant 2748
              19:             TypeInt 32 1
              20:             TypePointer Function 19(int)
              22:     19(int) Constant 5
              24:     19(int) Constant 6
              26:     19(int) Constant 57
              28:     10(int) Constant 58
              29:             TypeVector 6(float) 4
   30(PS_OUTPUT):             TypeStruct 29(fvec4)
              31:             TypePointer Function 30(PS_OUTPUT)
              33:     19(int) Constant 0
              37:             TypePointer Function 29(fvec4)
              39:             TypePointer Output 29(fvec4)
       40(color):     39(ptr) Variable Output
         4(main):           2 Function None 3
               5:             Label
          8(r00):      7(ptr) Variable Function
         12(r01):     11(ptr) Variable Function
         14(r02):     11(ptr) Variable Function
         16(r03):     11(ptr) Variable Function
         18(r04):     11(ptr) Variable Function
         21(r05):     20(ptr) Variable Function
         23(r06):     20(ptr) Variable Function
         25(r07):     20(ptr) Variable Function
         27(r08):     11(ptr) Variable Function
   32(ps_output):     31(ptr) Variable Function
                              Store 8(r00) 9
                              Store 12(r01) 13
                              Store 14(r02) 15
                              Store 16(r03) 17
                              Store 18(r04) 17
                              Store 21(r05) 22
                              Store 23(r06) 24
                              Store 25(r07) 26
                              Store 27(r08) 28
              34:     19(int) Load 25(r07)
              35:    6(float) ConvertSToF 34
              36:   29(fvec4) CompositeConstruct 35 35 35 35
              38:     37(ptr) AccessChain 32(ps_output) 33
                              Store 38 36
              41:     37(ptr) AccessChain 32(ps_output) 33
              42:   29(fvec4) Load 41
                              Store 40(color) 42
                              Return
                              FunctionEnd
