hlsl.target.frag
Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:7  Function Definition: @main(struct-PSInput-f1-u11;vf4;vf4; ( temp void)
0:7    Function Parameters: 
0:7      'input' ( in structure{ temp float interp,  temp uint no_interp})
0:7      'out1' ( out 4-component vector of float)
0:7      'out2' ( out 4-component vector of float)
0:?     Sequence
0:8      move second child to first child ( temp 4-component vector of float)
0:8        'out1' ( out 4-component vector of float)
0:8        Constant:
0:8          1.000000
0:8          1.000000
0:8          1.000000
0:8          1.000000
0:9      move second child to first child ( temp 4-component vector of float)
0:9        'out2' ( out 4-component vector of float)
0:9        Constant:
0:9          0.000000
0:9          0.000000
0:9          0.000000
0:9          0.000000
0:7  Function Definition: main( ( temp void)
0:7    Function Parameters: 
0:?     Sequence
0:7      Sequence
0:7        move second child to first child ( temp float)
0:7          interp: direct index for structure ( temp float)
0:?             'input' ( temp structure{ temp float interp,  temp uint no_interp})
0:7            Constant:
0:7              0 (const int)
0:?           'input.interp' (layout( location=0) in float)
0:7        move second child to first child ( temp uint)
0:7          no_interp: direct index for structure ( temp uint)
0:?             'input' ( temp structure{ temp float interp,  temp uint no_interp})
0:7            Constant:
0:7              1 (const int)
0:?           'input.no_interp' (layout( location=1) flat in uint)
0:7      Function Call: @main(struct-PSInput-f1-u11;vf4;vf4; ( temp void)
0:?         'input' ( temp structure{ temp float interp,  temp uint no_interp})
0:?         'out1' ( temp 4-component vector of float)
0:?         'out2' ( temp 4-component vector of float)
0:7      move second child to first child ( temp 4-component vector of float)
0:?         'out1' (layout( location=1) out 4-component vector of float)
0:?         'out1' ( temp 4-component vector of float)
0:7      move second child to first child ( temp 4-component vector of float)
0:?         'out2' (layout( location=3) out 4-component vector of float)
0:?         'out2' ( temp 4-component vector of float)
0:?   Linker Objects
0:?     'input.interp' (layout( location=0) in float)
0:?     'input.no_interp' (layout( location=1) flat in uint)
0:?     'out1' (layout( location=1) out 4-component vector of float)
0:?     'out2' (layout( location=3) out 4-component vector of float)


Linked fragment stage:


Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:7  Function Definition: @main(struct-PSInput-f1-u11;vf4;vf4; ( temp void)
0:7    Function Parameters: 
0:7      'input' ( in structure{ temp float interp,  temp uint no_interp})
0:7      'out1' ( out 4-component vector of float)
0:7      'out2' ( out 4-component vector of float)
0:?     Sequence
0:8      move second child to first child ( temp 4-component vector of float)
0:8        'out1' ( out 4-component vector of float)
0:8        Constant:
0:8          1.000000
0:8          1.000000
0:8          1.000000
0:8          1.000000
0:9      move second child to first child ( temp 4-component vector of float)
0:9        'out2' ( out 4-component vector of float)
0:9        Constant:
0:9          0.000000
0:9          0.000000
0:9          0.000000
0:9          0.000000
0:7  Function Definition: main( ( temp void)
0:7    Function Parameters: 
0:?     Sequence
0:7      Sequence
0:7        move second child to first child ( temp float)
0:7          interp: direct index for structure ( temp float)
0:?             'input' ( temp structure{ temp float interp,  temp uint no_interp})
0:7            Constant:
0:7              0 (const int)
0:?           'input.interp' (layout( location=0) in float)
0:7        move second child to first child ( temp uint)
0:7          no_interp: direct index for structure ( temp uint)
0:?             'input' ( temp structure{ temp float interp,  temp uint no_interp})
0:7            Constant:
0:7              1 (const int)
0:?           'input.no_interp' (layout( location=1) flat in uint)
0:7      Function Call: @main(struct-PSInput-f1-u11;vf4;vf4; ( temp void)
0:?         'input' ( temp structure{ temp float interp,  temp uint no_interp})
0:?         'out1' ( temp 4-component vector of float)
0:?         'out2' ( temp 4-component vector of float)
0:7      move second child to first child ( temp 4-component vector of float)
0:?         'out1' (layout( location=1) out 4-component vector of float)
0:?         'out1' ( temp 4-component vector of float)
0:7      move second child to first child ( temp 4-component vector of float)
0:?         'out2' (layout( location=3) out 4-component vector of float)
0:?         'out2' ( temp 4-component vector of float)
0:?   Linker Objects
0:?     'input.interp' (layout( location=0) in float)
0:?     'input.no_interp' (layout( location=1) flat in uint)
0:?     'out1' (layout( location=1) out 4-component vector of float)
0:?     'out2' (layout( location=3) out 4-component vector of float)

// Module Version 10000
// Generated by (magic number): 8000a
// Id's are bound by 50

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 26 32 46 48
                              ExecutionMode 4 OriginUpperLeft
                              Source HLSL 500
                              Name 4  "main"
                              Name 8  "PSInput"
                              MemberName 8(PSInput) 0  "interp"
                              MemberName 8(PSInput) 1  "no_interp"
                              Name 16  "@main(struct-PSInput-f1-u11;vf4;vf4;"
                              Name 13  "input"
                              Name 14  "out1"
                              Name 15  "out2"
                              Name 22  "input"
                              Name 26  "input.interp"
                              Name 32  "input.no_interp"
                              Name 36  "out1"
                              Name 37  "out2"
                              Name 38  "param"
                              Name 40  "param"
                              Name 41  "param"
                              Name 46  "out1"
                              Name 48  "out2"
                              Decorate 26(input.interp) Location 0
                              Decorate 32(input.no_interp) Flat
                              Decorate 32(input.no_interp) Location 1
                              Decorate 46(out1) Location 1
                              Decorate 48(out2) Location 3
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeInt 32 0
      8(PSInput):             TypeStruct 6(float) 7(int)
               9:             TypePointer Function 8(PSInput)
              10:             TypeVector 6(float) 4
              11:             TypePointer Function 10(fvec4)
              12:             TypeFunction 2 9(ptr) 11(ptr) 11(ptr)
              18:    6(float) Constant 1065353216
              19:   10(fvec4) ConstantComposite 18 18 18 18
              20:    6(float) Constant 0
              21:   10(fvec4) ConstantComposite 20 20 20 20
              23:             TypeInt 32 1
              24:     23(int) Constant 0
              25:             TypePointer Input 6(float)
26(input.interp):     25(ptr) Variable Input
              28:             TypePointer Function 6(float)
              30:     23(int) Constant 1
              31:             TypePointer Input 7(int)
32(input.no_interp):     31(ptr) Variable Input
              34:             TypePointer Function 7(int)
              45:             TypePointer Output 10(fvec4)
        46(out1):     45(ptr) Variable Output
        48(out2):     45(ptr) Variable Output
         4(main):           2 Function None 3
               5:             Label
       22(input):      9(ptr) Variable Function
        36(out1):     11(ptr) Variable Function
        37(out2):     11(ptr) Variable Function
       38(param):      9(ptr) Variable Function
       40(param):     11(ptr) Variable Function
       41(param):     11(ptr) Variable Function
              27:    6(float) Load 26(input.interp)
              29:     28(ptr) AccessChain 22(input) 24
                              Store 29 27
              33:      7(int) Load 32(input.no_interp)
              35:     34(ptr) AccessChain 22(input) 30
                              Store 35 33
              39:  8(PSInput) Load 22(input)
                              Store 38(param) 39
              42:           2 FunctionCall 16(@main(struct-PSInput-f1-u11;vf4;vf4;) 38(param) 40(param) 41(param)
              43:   10(fvec4) Load 40(param)
                              Store 36(out1) 43
              44:   10(fvec4) Load 41(param)
                              Store 37(out2) 44
              47:   10(fvec4) Load 36(out1)
                              Store 46(out1) 47
              49:   10(fvec4) Load 37(out2)
                              Store 48(out2) 49
                              Return
                              FunctionEnd
16(@main(struct-PSInput-f1-u11;vf4;vf4;):           2 Function None 12
       13(input):      9(ptr) FunctionParameter
        14(out1):     11(ptr) FunctionParameter
        15(out2):     11(ptr) FunctionParameter
              17:             Label
                              Store 14(out1) 19
                              Store 15(out2) 21
                              Return
                              FunctionEnd
