functionSemantics.frag
Warning, version 400 is not yet complete; most version-specific features are present, but some are missing.

Shader version: 400
0:? Sequence
0:5  Function Definition: foo(i1;i1;i1;i1;i1;i1; (global int)
0:5    Function Parameters: 
0:5      'a' (in int)
0:5      'b' (const (read only) int)
0:5      'c' (in int)
0:5      'd' (const (read only) int)
0:5      'e' (out int)
0:5      'f' (inout int)
0:7    Sequence
0:7      Sequence
0:7        move second child to first child (temp int)
0:7          'sum' (temp int)
0:7          add (temp int)
0:7            add (temp int)
0:7              add (temp int)
0:7                add (temp int)
0:7                  'a' (in int)
0:7                  'b' (const (read only) int)
0:7                'c' (in int)
0:7              'd' (const (read only) int)
0:7            'f' (inout int)
0:10      multiply second child into first child (temp int)
0:10        'a' (in int)
0:10        Constant:
0:10          64 (const int)
0:12      multiply second child into first child (temp int)
0:12        'c' (in int)
0:12        Constant:
0:12          64 (const int)
0:14      move second child to first child (temp int)
0:14        'e' (out int)
0:14        Constant:
0:14          1024 (const int)
0:15      multiply second child into first child (temp int)
0:15        'f' (inout int)
0:15        Constant:
0:15          64 (const int)
0:17      add second child into first child (temp int)
0:17        'sum' (temp int)
0:17        add (temp int)
0:17          add (temp int)
0:17            add (temp int)
0:17              add (temp int)
0:17                add (temp int)
0:17                  'a' (in int)
0:17                  component-wise multiply (temp int)
0:17                    Constant:
0:17                      64 (const int)
0:17                    'b' (const (read only) int)
0:17                'c' (in int)
0:17              component-wise multiply (temp int)
0:17                Constant:
0:17                  64 (const int)
0:17                'd' (const (read only) int)
0:17            'e' (out int)
0:17          'f' (inout int)
0:20      Branch: Return with expression
0:20        'sum' (temp int)
0:23  Function Definition: foo2(f1;vf3;i1; (global int)
0:23    Function Parameters: 
0:23      'a' (in float)
0:23      'b' (in 3-component vector of float)
0:23      'r' (out int)
0:25    Sequence
0:25      move second child to first child (temp int)
0:25        'r' (out int)
0:25        Convert float to int (temp int)
0:25          component-wise multiply (temp float)
0:25            Constant:
0:25              3.000000
0:25            'a' (in float)
0:26      Branch: Return with expression
0:26        Convert float to int (temp int)
0:26          component-wise multiply (temp float)
0:26            Constant:
0:26              5.000000
0:26            direct index (temp float)
0:26              'b' (in 3-component vector of float)
0:26              Constant:
0:26                1 (const int)
0:29  Function Definition: foo3( (global int)
0:29    Function Parameters: 
0:31    Sequence
0:31      Test condition and select (temp void)
0:31        Condition
0:31        Compare Greater Than (temp bool)
0:31          'u' (uniform float)
0:31          Constant:
0:31            3.200000
0:31        true case
0:32        Sequence
0:32          Branch: Kill
0:33          Branch: Return with expression
0:33            Constant:
0:33              1000000 (const int)
0:36      Branch: Return with expression
0:36        Constant:
0:36          2000000 (const int)
0:39  Function Definition: main( (global void)
0:39    Function Parameters: 
0:?     Sequence
0:42      Sequence
0:42        move second child to first child (temp int)
0:42          't' (temp int)
0:42          Constant:
0:42            2 (const int)
0:46      move second child to first child (temp int)
0:46        direct index (temp int)
0:46          t: direct index for structure (temp 4-component vector of int)
0:46            'f' (temp structure{temp 4-component vector of int t})
0:46            Constant:
0:46              0 (const int)
0:46          Constant:
0:46            1 (const int)
0:46        Constant:
0:46          32 (const int)
0:49      Sequence
0:49        move second child to first child (temp int)
0:49          'color' (temp int)
0:49          Function Call: foo(i1;i1;i1;i1;i1;i1; (global int)
0:49            Constant:
0:49              1 (const int)
0:49            Constant:
0:49              2 (const int)
0:49            add (temp int)
0:49              't' (temp int)
0:49              't' (temp int)
0:49            Constant:
0:49              8 (const int)
0:49            'e' (temp int)
0:49            direct index (temp int)
0:49              t: direct index for structure (temp 4-component vector of int)
0:49                'f' (temp structure{temp 4-component vector of int t})
0:49                Constant:
0:49                  0 (const int)
0:49              Constant:
0:49                1 (const int)
0:51      add second child into first child (temp int)
0:51        'color' (temp int)
0:51        component-wise multiply (temp int)
0:51          Constant:
0:51            128 (const int)
0:51          add (temp int)
0:51            'e' (temp int)
0:51            direct index (temp int)
0:51              t: direct index for structure (temp 4-component vector of int)
0:51                'f' (temp structure{temp 4-component vector of int t})
0:51                Constant:
0:51                  0 (const int)
0:51              Constant:
0:51                1 (const int)
0:57      move second child to first child (temp float)
0:57        'ret' (temp float)
0:57        Convert int to float (temp float)
0:57          Comma (global int)
0:57            move second child to first child (temp int)
0:57              'tempReturn' (global int)
0:57              Function Call: foo2(f1;vf3;i1; (global int)
0:57                Constant:
0:57                  4.000000
0:57                Constant:
0:57                  1.000000
0:57                  2.000000
0:57                  3.000000
0:57                'tempArg' (temp int)
0:57            move second child to first child (temp float)
0:57              'arg' (temp float)
0:57              Convert int to float (temp float)
0:57                'tempArg' (temp int)
0:57            'tempReturn' (global int)
0:58      add second child into first child (temp int)
0:58        'color' (temp int)
0:58        Convert float to int (temp int)
0:58          add (temp float)
0:58            'ret' (temp float)
0:58            'arg' (temp float)
0:60      add second child into first child (temp int)
0:60        'color' (temp int)
0:60        Function Call: foo3( (global int)
0:62      move second child to first child (temp 4-component vector of float)
0:62        'gl_FragColor' (fragColor 4-component vector of float FragColor)
0:62        Construct vec4 (temp 4-component vector of float)
0:62          Convert int to float (temp float)
0:62            'color' (temp int)
0:66  Function Definition: aggCall( (global void)
0:66    Function Parameters: 
0:?     Sequence
0:69      Function Call: m(vf2; (global 3-component vector of float)
0:69        Convert int to float (temp 2-component vector of float)
0:69          Construct ivec2 (temp 2-component vector of int)
0:69            Convert float to int (temp int)
0:69              'F' (temp float)
0:?   Linker Objects
0:?     'u' (uniform float)


Linked fragment stage:


Shader version: 400
0:? Sequence
0:5  Function Definition: foo(i1;i1;i1;i1;i1;i1; (global int)
0:5    Function Parameters: 
0:5      'a' (in int)
0:5      'b' (const (read only) int)
0:5      'c' (in int)
0:5      'd' (const (read only) int)
0:5      'e' (out int)
0:5      'f' (inout int)
0:7    Sequence
0:7      Sequence
0:7        move second child to first child (temp int)
0:7          'sum' (temp int)
0:7          add (temp int)
0:7            add (temp int)
0:7              add (temp int)
0:7                add (temp int)
0:7                  'a' (in int)
0:7                  'b' (const (read only) int)
0:7                'c' (in int)
0:7              'd' (const (read only) int)
0:7            'f' (inout int)
0:10      multiply second child into first child (temp int)
0:10        'a' (in int)
0:10        Constant:
0:10          64 (const int)
0:12      multiply second child into first child (temp int)
0:12        'c' (in int)
0:12        Constant:
0:12          64 (const int)
0:14      move second child to first child (temp int)
0:14        'e' (out int)
0:14        Constant:
0:14          1024 (const int)
0:15      multiply second child into first child (temp int)
0:15        'f' (inout int)
0:15        Constant:
0:15          64 (const int)
0:17      add second child into first child (temp int)
0:17        'sum' (temp int)
0:17        add (temp int)
0:17          add (temp int)
0:17            add (temp int)
0:17              add (temp int)
0:17                add (temp int)
0:17                  'a' (in int)
0:17                  component-wise multiply (temp int)
0:17                    Constant:
0:17                      64 (const int)
0:17                    'b' (const (read only) int)
0:17                'c' (in int)
0:17              component-wise multiply (temp int)
0:17                Constant:
0:17                  64 (const int)
0:17                'd' (const (read only) int)
0:17            'e' (out int)
0:17          'f' (inout int)
0:20      Branch: Return with expression
0:20        'sum' (temp int)
0:23  Function Definition: foo2(f1;vf3;i1; (global int)
0:23    Function Parameters: 
0:23      'a' (in float)
0:23      'b' (in 3-component vector of float)
0:23      'r' (out int)
0:25    Sequence
0:25      move second child to first child (temp int)
0:25        'r' (out int)
0:25        Convert float to int (temp int)
0:25          component-wise multiply (temp float)
0:25            Constant:
0:25              3.000000
0:25            'a' (in float)
0:26      Branch: Return with expression
0:26        Convert float to int (temp int)
0:26          component-wise multiply (temp float)
0:26            Constant:
0:26              5.000000
0:26            direct index (temp float)
0:26              'b' (in 3-component vector of float)
0:26              Constant:
0:26                1 (const int)
0:29  Function Definition: foo3( (global int)
0:29    Function Parameters: 
0:31    Sequence
0:31      Test condition and select (temp void)
0:31        Condition
0:31        Compare Greater Than (temp bool)
0:31          'u' (uniform float)
0:31          Constant:
0:31            3.200000
0:31        true case
0:32        Sequence
0:32          Branch: Kill
0:33          Branch: Return with expression
0:33            Constant:
0:33              1000000 (const int)
0:36      Branch: Return with expression
0:36        Constant:
0:36          2000000 (const int)
0:39  Function Definition: main( (global void)
0:39    Function Parameters: 
0:?     Sequence
0:42      Sequence
0:42        move second child to first child (temp int)
0:42          't' (temp int)
0:42          Constant:
0:42            2 (const int)
0:46      move second child to first child (temp int)
0:46        direct index (temp int)
0:46          t: direct index for structure (temp 4-component vector of int)
0:46            'f' (temp structure{temp 4-component vector of int t})
0:46            Constant:
0:46              0 (const int)
0:46          Constant:
0:46            1 (const int)
0:46        Constant:
0:46          32 (const int)
0:49      Sequence
0:49        move second child to first child (temp int)
0:49          'color' (temp int)
0:49          Function Call: foo(i1;i1;i1;i1;i1;i1; (global int)
0:49            Constant:
0:49              1 (const int)
0:49            Constant:
0:49              2 (const int)
0:49            add (temp int)
0:49              't' (temp int)
0:49              't' (temp int)
0:49            Constant:
0:49              8 (const int)
0:49            'e' (temp int)
0:49            direct index (temp int)
0:49              t: direct index for structure (temp 4-component vector of int)
0:49                'f' (temp structure{temp 4-component vector of int t})
0:49                Constant:
0:49                  0 (const int)
0:49              Constant:
0:49                1 (const int)
0:51      add second child into first child (temp int)
0:51        'color' (temp int)
0:51        component-wise multiply (temp int)
0:51          Constant:
0:51            128 (const int)
0:51          add (temp int)
0:51            'e' (temp int)
0:51            direct index (temp int)
0:51              t: direct index for structure (temp 4-component vector of int)
0:51                'f' (temp structure{temp 4-component vector of int t})
0:51                Constant:
0:51                  0 (const int)
0:51              Constant:
0:51                1 (const int)
0:57      move second child to first child (temp float)
0:57        'ret' (temp float)
0:57        Convert int to float (temp float)
0:57          Comma (global int)
0:57            move second child to first child (temp int)
0:57              'tempReturn' (global int)
0:57              Function Call: foo2(f1;vf3;i1; (global int)
0:57                Constant:
0:57                  4.000000
0:57                Constant:
0:57                  1.000000
0:57                  2.000000
0:57                  3.000000
0:57                'tempArg' (temp int)
0:57            move second child to first child (temp float)
0:57              'arg' (temp float)
0:57              Convert int to float (temp float)
0:57                'tempArg' (temp int)
0:57            'tempReturn' (global int)
0:58      add second child into first child (temp int)
0:58        'color' (temp int)
0:58        Convert float to int (temp int)
0:58          add (temp float)
0:58            'ret' (temp float)
0:58            'arg' (temp float)
0:60      add second child into first child (temp int)
0:60        'color' (temp int)
0:60        Function Call: foo3( (global int)
0:62      move second child to first child (temp 4-component vector of float)
0:62        'gl_FragColor' (fragColor 4-component vector of float FragColor)
0:62        Construct vec4 (temp 4-component vector of float)
0:62          Convert int to float (temp float)
0:62            'color' (temp int)
0:66  Function Definition: aggCall( (global void)
0:66    Function Parameters: 
0:?     Sequence
0:69      Function Call: m(vf2; (global 3-component vector of float)
0:69        Convert int to float (temp 2-component vector of float)
0:69          Construct ivec2 (temp 2-component vector of int)
0:69            Convert float to int (temp int)
0:69              'F' (temp float)
0:?   Linker Objects
0:?     'u' (uniform float)

