hlsl.entry-in.frag
Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:8  Function Definition: fun(struct-InParam-vf2-vf4-vi21; ( temp float)
0:8    Function Parameters: 
0:8      'p' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:?     Sequence
0:9      Branch: Return with expression
0:9        add ( temp float)
0:9          direct index ( temp float)
0:9            v: direct index for structure ( temp 2-component vector of float)
0:9              'p' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:9              Constant:
0:9                0 (const int)
0:9            Constant:
0:9              1 (const int)
0:9          direct index ( temp float)
0:9            fragCoord: direct index for structure ( temp 4-component vector of float)
0:9              'p' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:9              Constant:
0:9                1 (const int)
0:9            Constant:
0:9              0 (const int)
0:13  Function Definition: @PixelShaderFunction(struct-InParam-vf2-vf4-vi21; ( temp 4-component vector of float)
0:13    Function Parameters: 
0:13      'i' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:?     Sequence
0:15      move second child to first child ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:15        'local' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:15        'i' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:16      Sequence
0:16        move second child to first child ( temp float)
0:16          'ret1' ( temp float)
0:16          Function Call: fun(struct-InParam-vf2-vf4-vi21; ( temp float)
0:16            'local' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:17      Sequence
0:17        move second child to first child ( temp float)
0:17          'ret2' ( temp float)
0:17          Function Call: fun(struct-InParam-vf2-vf4-vi21; ( temp float)
0:17            'i' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:19      Branch: Return with expression
0:19        vector-scale ( temp 4-component vector of float)
0:19          vector-scale ( temp 4-component vector of float)
0:19            fragCoord: direct index for structure ( temp 4-component vector of float)
0:19              'local' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:19              Constant:
0:19                1 (const int)
0:19            'ret1' ( temp float)
0:19          'ret2' ( temp float)
0:13  Function Definition: PixelShaderFunction( ( temp void)
0:13    Function Parameters: 
0:?     Sequence
0:13      Sequence
0:13        move second child to first child ( temp 2-component vector of float)
0:13          v: direct index for structure ( temp 2-component vector of float)
0:?             'i' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:13            Constant:
0:13              0 (const int)
0:?           'i.v' (layout( location=0) in 2-component vector of float)
0:13        move second child to first child ( temp 4-component vector of float)
0:13          fragCoord: direct index for structure ( temp 4-component vector of float)
0:?             'i' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:13            Constant:
0:13              1 (const int)
0:?           'i.fragCoord' ( in 4-component vector of float FragCoord)
0:13        move second child to first child ( temp 2-component vector of int)
0:13          i2: direct index for structure ( temp 2-component vector of int)
0:?             'i' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:13            Constant:
0:13              2 (const int)
0:?           'i.i2' (layout( location=1) flat in 2-component vector of int)
0:13      move second child to first child ( temp 4-component vector of float)
0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
0:13        Function Call: @PixelShaderFunction(struct-InParam-vf2-vf4-vi21; ( temp 4-component vector of float)
0:?           'i' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:?   Linker Objects
0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
0:?     'i.fragCoord' ( in 4-component vector of float FragCoord)
0:?     'i.v' (layout( location=0) in 2-component vector of float)
0:?     'i.i2' (layout( location=1) flat in 2-component vector of int)


Linked fragment stage:


Shader version: 500
gl_FragCoord origin is upper left
0:? Sequence
0:8  Function Definition: fun(struct-InParam-vf2-vf4-vi21; ( temp float)
0:8    Function Parameters: 
0:8      'p' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:?     Sequence
0:9      Branch: Return with expression
0:9        add ( temp float)
0:9          direct index ( temp float)
0:9            v: direct index for structure ( temp 2-component vector of float)
0:9              'p' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:9              Constant:
0:9                0 (const int)
0:9            Constant:
0:9              1 (const int)
0:9          direct index ( temp float)
0:9            fragCoord: direct index for structure ( temp 4-component vector of float)
0:9              'p' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:9              Constant:
0:9                1 (const int)
0:9            Constant:
0:9              0 (const int)
0:13  Function Definition: @PixelShaderFunction(struct-InParam-vf2-vf4-vi21; ( temp 4-component vector of float)
0:13    Function Parameters: 
0:13      'i' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:?     Sequence
0:15      move second child to first child ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:15        'local' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:15        'i' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:16      Sequence
0:16        move second child to first child ( temp float)
0:16          'ret1' ( temp float)
0:16          Function Call: fun(struct-InParam-vf2-vf4-vi21; ( temp float)
0:16            'local' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:17      Sequence
0:17        move second child to first child ( temp float)
0:17          'ret2' ( temp float)
0:17          Function Call: fun(struct-InParam-vf2-vf4-vi21; ( temp float)
0:17            'i' ( in structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:19      Branch: Return with expression
0:19        vector-scale ( temp 4-component vector of float)
0:19          vector-scale ( temp 4-component vector of float)
0:19            fragCoord: direct index for structure ( temp 4-component vector of float)
0:19              'local' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:19              Constant:
0:19                1 (const int)
0:19            'ret1' ( temp float)
0:19          'ret2' ( temp float)
0:13  Function Definition: PixelShaderFunction( ( temp void)
0:13    Function Parameters: 
0:?     Sequence
0:13      Sequence
0:13        move second child to first child ( temp 2-component vector of float)
0:13          v: direct index for structure ( temp 2-component vector of float)
0:?             'i' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:13            Constant:
0:13              0 (const int)
0:?           'i.v' (layout( location=0) in 2-component vector of float)
0:13        move second child to first child ( temp 4-component vector of float)
0:13          fragCoord: direct index for structure ( temp 4-component vector of float)
0:?             'i' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:13            Constant:
0:13              1 (const int)
0:?           'i.fragCoord' ( in 4-component vector of float FragCoord)
0:13        move second child to first child ( temp 2-component vector of int)
0:13          i2: direct index for structure ( temp 2-component vector of int)
0:?             'i' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:13            Constant:
0:13              2 (const int)
0:?           'i.i2' (layout( location=1) flat in 2-component vector of int)
0:13      move second child to first child ( temp 4-component vector of float)
0:?         '@entryPointOutput' (layout( location=0) out 4-component vector of float)
0:13        Function Call: @PixelShaderFunction(struct-InParam-vf2-vf4-vi21; ( temp 4-component vector of float)
0:?           'i' ( temp structure{ temp 2-component vector of float v,  temp 4-component vector of float fragCoord,  temp 2-component vector of int i2})
0:?   Linker Objects
0:?     '@entryPointOutput' (layout( location=0) out 4-component vector of float)
0:?     'i.fragCoord' ( in 4-component vector of float FragCoord)
0:?     'i.v' (layout( location=0) in 2-component vector of float)
0:?     'i.i2' (layout( location=1) flat in 2-component vector of int)

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

                              Capability Shader
               1:             ExtInstImport  "GLSL.std.450"
                              MemoryModel Logical GLSL450
                              EntryPoint Fragment 4  "PixelShaderFunction" 55 60 65 70
                              ExecutionMode 4 OriginUpperLeft
                              Source HLSL 500
                              Name 4  "PixelShaderFunction"
                              Name 11  "InParam"
                              MemberName 11(InParam) 0  "v"
                              MemberName 11(InParam) 1  "fragCoord"
                              MemberName 11(InParam) 2  "i2"
                              Name 15  "fun(struct-InParam-vf2-vf4-vi21;"
                              Name 14  "p"
                              Name 19  "@PixelShaderFunction(struct-InParam-vf2-vf4-vi21;"
                              Name 18  "i"
                              Name 34  "local"
                              Name 36  "ret1"
                              Name 37  "param"
                              Name 40  "ret2"
                              Name 41  "param"
                              Name 53  "i"
                              Name 55  "i.v"
                              Name 60  "i.fragCoord"
                              Name 65  "i.i2"
                              Name 70  "@entryPointOutput"
                              Name 71  "param"
                              Decorate 55(i.v) Location 0
                              Decorate 60(i.fragCoord) BuiltIn FragCoord
                              Decorate 65(i.i2) Flat
                              Decorate 65(i.i2) Location 1
                              Decorate 70(@entryPointOutput) Location 0
               2:             TypeVoid
               3:             TypeFunction 2
               6:             TypeFloat 32
               7:             TypeVector 6(float) 2
               8:             TypeVector 6(float) 4
               9:             TypeInt 32 1
              10:             TypeVector 9(int) 2
     11(InParam):             TypeStruct 7(fvec2) 8(fvec4) 10(ivec2)
              12:             TypePointer Function 11(InParam)
              13:             TypeFunction 6(float) 12(ptr)
              17:             TypeFunction 8(fvec4) 12(ptr)
              21:      9(int) Constant 0
              22:             TypeInt 32 0
              23:     22(int) Constant 1
              24:             TypePointer Function 6(float)
              27:      9(int) Constant 1
              28:     22(int) Constant 0
              44:             TypePointer Function 8(fvec4)
              54:             TypePointer Input 7(fvec2)
         55(i.v):     54(ptr) Variable Input
              57:             TypePointer Function 7(fvec2)
              59:             TypePointer Input 8(fvec4)
 60(i.fragCoord):     59(ptr) Variable Input
              63:      9(int) Constant 2
              64:             TypePointer Input 10(ivec2)
        65(i.i2):     64(ptr) Variable Input
              67:             TypePointer Function 10(ivec2)
              69:             TypePointer Output 8(fvec4)
70(@entryPointOutput):     69(ptr) Variable Output
4(PixelShaderFunction):           2 Function None 3
               5:             Label
           53(i):     12(ptr) Variable Function
       71(param):     12(ptr) Variable Function
              56:    7(fvec2) Load 55(i.v)
              58:     57(ptr) AccessChain 53(i) 21
                              Store 58 56
              61:    8(fvec4) Load 60(i.fragCoord)
              62:     44(ptr) AccessChain 53(i) 27
                              Store 62 61
              66:   10(ivec2) Load 65(i.i2)
              68:     67(ptr) AccessChain 53(i) 63
                              Store 68 66
              72: 11(InParam) Load 53(i)
                              Store 71(param) 72
              73:    8(fvec4) FunctionCall 19(@PixelShaderFunction(struct-InParam-vf2-vf4-vi21;) 71(param)
                              Store 70(@entryPointOutput) 73
                              Return
                              FunctionEnd
15(fun(struct-InParam-vf2-vf4-vi21;):    6(float) Function None 13
           14(p):     12(ptr) FunctionParameter
              16:             Label
              25:     24(ptr) AccessChain 14(p) 21 23
              26:    6(float) Load 25
              29:     24(ptr) AccessChain 14(p) 27 28
              30:    6(float) Load 29
              31:    6(float) FAdd 26 30
                              ReturnValue 31
                              FunctionEnd
19(@PixelShaderFunction(struct-InParam-vf2-vf4-vi21;):    8(fvec4) Function None 17
           18(i):     12(ptr) FunctionParameter
              20:             Label
       34(local):     12(ptr) Variable Function
        36(ret1):     24(ptr) Variable Function
       37(param):     12(ptr) Variable Function
        40(ret2):     24(ptr) Variable Function
       41(param):     12(ptr) Variable Function
              35: 11(InParam) Load 18(i)
                              Store 34(local) 35
              38: 11(InParam) Load 34(local)
                              Store 37(param) 38
              39:    6(float) FunctionCall 15(fun(struct-InParam-vf2-vf4-vi21;) 37(param)
                              Store 36(ret1) 39
              42: 11(InParam) Load 18(i)
                              Store 41(param) 42
              43:    6(float) FunctionCall 15(fun(struct-InParam-vf2-vf4-vi21;) 41(param)
                              Store 40(ret2) 43
              45:     44(ptr) AccessChain 34(local) 27
              46:    8(fvec4) Load 45
              47:    6(float) Load 36(ret1)
              48:    8(fvec4) VectorTimesScalar 46 47
              49:    6(float) Load 40(ret2)
              50:    8(fvec4) VectorTimesScalar 48 49
                              ReturnValue 50
                              FunctionEnd
