hlsl.synthesizeInput.frag
Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:7  Function Definition: @main(struct-PSInput-f1-u11; ( temp 4-component vector of float)
0:7    Function Parameters: 
0:7      'input' ( in structure{ temp float interp,  temp uint no_interp})
0:?     Sequence
0:8      Branch: Return with expression
0:8        Construct vec4 ( temp 4-component vector of float)
0:8          Convert uint to float ( temp float)
0:8            no_interp: direct index for structure ( temp uint)
0:8              'input' ( in structure{ temp float interp,  temp uint no_interp})
0:8              Constant:
0:8                1 (const int)
0:8          interp: direct index for structure ( temp float)
0:8            'input' ( in structure{ temp float interp,  temp uint no_interp})
0:8            Constant:
0:8              0 (const int)
0:8          Constant:
0:8            0.000000
0:8          Constant:
0:8            1.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      move second child to first child ( temp 4-component vector of float)
0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
0:7        Function Call: @main(struct-PSInput-f1-u11; ( temp 4-component vector of float)
0:?           'input' ( temp structure{ temp float interp,  temp uint no_interp})
0:?   Linker Objects
0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
0:?     'input.interp' (layout( location=0) in float)
0:?     'input.no_interp' (layout( location=1) flat in uint)


Linked fragment stage:


Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:7  Function Definition: @main(struct-PSInput-f1-u11; ( temp 4-component vector of float)
0:7    Function Parameters: 
0:7      'input' ( in structure{ temp float interp,  temp uint no_interp})
0:?     Sequence
0:8      Branch: Return with expression
0:8        Construct vec4 ( temp 4-component vector of float)
0:8          Convert uint to float ( temp float)
0:8            no_interp: direct index for structure ( temp uint)
0:8              'input' ( in structure{ temp float interp,  temp uint no_interp})
0:8              Constant:
0:8                1 (const int)
0:8          interp: direct index for structure ( temp float)
0:8            'input' ( in structure{ temp float interp,  temp uint no_interp})
0:8            Constant:
0:8              0 (const int)
0:8          Constant:
0:8            0.000000
0:8          Constant:
0:8            1.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      move second child to first child ( temp 4-component vector of float)
0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
0:7        Function Call: @main(struct-PSInput-f1-u11; ( temp 4-component vector of float)
0:?           'input' ( temp structure{ temp float interp,  temp uint no_interp})
0:?   Linker Objects
0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
0:?     'input.interp' (layout( location=0) in float)
0:?     'input.no_interp' (layout( location=1) flat in uint)

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

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "main" 32 36 40
                              ExecutionMode 4 OriginUpperLeft
                              Source HLSL 500
                              Name 4  "main"
                              Name 8  "PSInput"
                              MemberName 8(PSInput) 0  "interp"
                              MemberName 8(PSInput) 1  "no_interp"
                              Name 13  "@main(struct-PSInput-f1-u11;"
                              Name 12  "input"
                              Name 30  "input"
                              Name 32  "input.interp"
                              Name 36  "input.no_interp"
                              Name 40  "@entryPointOutput"
                              Name 41  "param"
                              Decorate 32(input.interp) Location 0
                              Decorate 36(input.no_interp) Flat
                              Decorate 36(input.no_interp) Location 1
                              Decorate 40(@entryPointOutput) Location 0
               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:             TypeFunction 10(fvec4) 9(ptr)
              15:             TypeInt 32 1
              16:     15(int) Constant 1
              17:             TypePointer Function 7(int)
              21:     15(int) Constant 0
              22:             TypePointer Function 6(float)
              25:    6(float) Constant 0
              26:    6(float) Constant 1065353216
              31:             TypePointer Input 6(float)
32(input.interp):     31(ptr) Variable Input
              35:             TypePointer Input 7(int)
36(input.no_interp):     35(ptr) Variable Input
              39:             TypePointer Output 10(fvec4)
40(@entryPointOutput):     39(ptr) Variable Output
         4(main):           2 Function None 3
               5:             Label
       30(input):      9(ptr) Variable Function
       41(param):      9(ptr) Variable Function
              33:    6(float) Load 32(input.interp)
              34:     22(ptr) AccessChain 30(input) 21
                              Store 34 33
              37:      7(int) Load 36(input.no_interp)
              38:     17(ptr) AccessChain 30(input) 16
                              Store 38 37
              42:  8(PSInput) Load 30(input)
                              Store 41(param) 42
              43:   10(fvec4) FunctionCall 13(@main(struct-PSInput-f1-u11;) 41(param)
                              Store 40(@entryPointOutput) 43
                              Return
                              FunctionEnd
13(@main(struct-PSInput-f1-u11;):   10(fvec4) Function None 11
       12(input):      9(ptr) FunctionParameter
              14:             Label
              18:     17(ptr) AccessChain 12(input) 16
              19:      7(int) Load 18
              20:    6(float) ConvertUToF 19
              23:     22(ptr) AccessChain 12(input) 21
              24:    6(float) Load 23
              27:   10(fvec4) CompositeConstruct 20 24 25 26
                              ReturnValue 27
                              FunctionEnd
