150.tesc
Shader version: 150
Requested GL_ARB_tessellation_shader
vertices = 4
0:? Sequence
0:10  Function Definition: main( (global void)
0:10    Function Parameters: 
0:12    Sequence
0:12      Barrier (global void)
0:14      Sequence
0:14        move second child to first child (temp int)
0:14          'a' (temp int)
0:14          Constant:
0:14            5392 (const int)
0:20      Sequence
0:20        move second child to first child (temp 4-component vector of float)
0:20          'p' (temp 4-component vector of float)
0:20          gl_Position: direct index for structure (in 4-component vector of float)
0:20            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:20              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:20              Constant:
0:20                1 (const int)
0:20            Constant:
0:20              0 (const int)
0:21      Sequence
0:21        move second child to first child (temp float)
0:21          'ps' (temp float)
0:21          gl_PointSize: direct index for structure (in float)
0:21            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:21              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:21              Constant:
0:21                1 (const int)
0:21            Constant:
0:21              1 (const int)
0:22      Sequence
0:22        move second child to first child (temp float)
0:22          'cd' (temp float)
0:22          direct index (temp float)
0:22            gl_ClipDistance: direct index for structure (in implicitly-sized array of float)
0:22              direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:22                'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:22                Constant:
0:22                  1 (const int)
0:22              Constant:
0:22                2 (const int)
0:22            Constant:
0:22              2 (const int)
0:24      Sequence
0:24        move second child to first child (temp int)
0:24          'pvi' (temp int)
0:24          'gl_PatchVerticesIn' (in int PatchVertices)
0:25      Sequence
0:25        move second child to first child (temp int)
0:25          'pid' (temp int)
0:25          'gl_PrimitiveID' (in int PrimitiveID)
0:26      Sequence
0:26        move second child to first child (temp int)
0:26          'iid' (temp int)
0:26          'gl_InvocationID' (in int InvocationID)
0:28      move second child to first child (temp 4-component vector of float)
0:28        gl_Position: direct index for structure (out 4-component vector of float Position)
0:28          direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:28            'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:28            Constant:
0:28              1 (const int)
0:28          Constant:
0:28            0 (const int)
0:28        'p' (temp 4-component vector of float)
0:29      move second child to first child (temp float)
0:29        gl_PointSize: direct index for structure (out float PointSize)
0:29          direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:29            'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:29            Constant:
0:29              1 (const int)
0:29          Constant:
0:29            1 (const int)
0:29        'ps' (temp float)
0:30      move second child to first child (temp float)
0:30        direct index (temp float ClipDistance)
0:30          gl_ClipDistance: direct index for structure (out implicitly-sized array of float ClipDistance)
0:30            direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:30              'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:30              Constant:
0:30                1 (const int)
0:30            Constant:
0:30              2 (const int)
0:30          Constant:
0:30            1 (const int)
0:30        'cd' (temp float)
0:32      move second child to first child (temp float)
0:32        direct index (patch temp float TessLevelOuter)
0:32          'gl_TessLevelOuter' (patch out 4-element array of float TessLevelOuter)
0:32          Constant:
0:32            3 (const int)
0:32        Constant:
0:32          3.200000
0:33      move second child to first child (temp float)
0:33        direct index (patch temp float TessLevelInner)
0:33          'gl_TessLevelInner' (patch out 2-element array of float TessLevelInner)
0:33          Constant:
0:33            1 (const int)
0:33        Constant:
0:33          1.300000
0:?   Linker Objects
0:?     'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:?     'outa' (global 4-element array of int)
0:?     'patchOut' (patch out 4-component vector of float)

150.tese
ERROR: 0:12: 'barrier' : no matching overloaded function found 
ERROR: 1 compilation errors.  No code generated.


Shader version: 150
Requested GL_ARB_tessellation_shader
input primitive = quads
vertex spacing = fractional_odd_spacing
triangle order = cw
using point mode
ERROR: node is still EOpNull!
0:10  Function Definition: main( (global void)
0:10    Function Parameters: 
0:12    Sequence
0:12      Constant:
0:12        0.000000
0:14      Sequence
0:14        move second child to first child (temp int)
0:14          'a' (temp int)
0:14          Constant:
0:14            1512 (const int)
0:22      Sequence
0:22        move second child to first child (temp 4-component vector of float)
0:22          'p' (temp 4-component vector of float)
0:22          gl_Position: direct index for structure (in 4-component vector of float)
0:22            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:22              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:22              Constant:
0:22                1 (const int)
0:22            Constant:
0:22              0 (const int)
0:23      Sequence
0:23        move second child to first child (temp float)
0:23          'ps' (temp float)
0:23          gl_PointSize: direct index for structure (in float)
0:23            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:23              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:23              Constant:
0:23                1 (const int)
0:23            Constant:
0:23              1 (const int)
0:24      Sequence
0:24        move second child to first child (temp float)
0:24          'cd' (temp float)
0:24          direct index (temp float)
0:24            gl_ClipDistance: direct index for structure (in implicitly-sized array of float)
0:24              direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:24                'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:24                Constant:
0:24                  1 (const int)
0:24              Constant:
0:24                2 (const int)
0:24            Constant:
0:24              2 (const int)
0:26      Sequence
0:26        move second child to first child (temp int)
0:26          'pvi' (temp int)
0:26          'gl_PatchVerticesIn' (in int PatchVertices)
0:27      Sequence
0:27        move second child to first child (temp int)
0:27          'pid' (temp int)
0:27          'gl_PrimitiveID' (in int PrimitiveID)
0:28      Sequence
0:28        move second child to first child (temp 3-component vector of float)
0:28          'tc' (temp 3-component vector of float)
0:28          'gl_TessCoord' (in 3-component vector of float TessCoord)
0:29      Sequence
0:29        move second child to first child (temp float)
0:29          'tlo' (temp float)
0:29          direct index (patch temp float TessLevelOuter)
0:29            'gl_TessLevelOuter' (patch in 4-element array of float TessLevelOuter)
0:29            Constant:
0:29              3 (const int)
0:30      Sequence
0:30        move second child to first child (temp float)
0:30          'tli' (temp float)
0:30          direct index (patch temp float TessLevelInner)
0:30            'gl_TessLevelInner' (patch in 2-element array of float TessLevelInner)
0:30            Constant:
0:30              1 (const int)
0:32      move second child to first child (temp 4-component vector of float)
0:32        gl_Position: direct index for structure (gl_Position 4-component vector of float Position)
0:32          'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:32          Constant:
0:32            0 (const uint)
0:32        'p' (temp 4-component vector of float)
0:33      move second child to first child (temp float)
0:33        gl_PointSize: direct index for structure (gl_PointSize float PointSize)
0:33          'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:33          Constant:
0:33            1 (const uint)
0:33        'ps' (temp float)
0:34      move second child to first child (temp float)
0:34        direct index (temp float ClipDistance)
0:34          gl_ClipDistance: direct index for structure (out implicitly-sized array of float ClipDistance)
0:34            'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:34            Constant:
0:34              2 (const uint)
0:34          Constant:
0:34            2 (const int)
0:34        'cd' (temp float)
0:?   Linker Objects
0:?     'patchIn' (patch in 4-component vector of float)
0:?     'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})

400.tesc
Warning, version 400 is not yet complete; most version-specific features are present, but some are missing.
ERROR: 0:6: 'quads' : unrecognized layout identifier, or qualifier requires assignment (e.g., binding = 4) 
ERROR: 0:7: 'ccw' : unrecognized layout identifier, or qualifier requires assignment (e.g., binding = 4) 
ERROR: 0:8: 'fractional_even_spacing' : unrecognized layout identifier, or qualifier requires assignment (e.g., binding = 4) 
ERROR: 0:10: 'patch' : can only use on output in tessellation-control shader 
ERROR: 0:39: '' : tessellation control barrier() cannot be placed within flow control 
ERROR: 0:41: '' : tessellation control barrier() cannot be placed within flow control 
ERROR: 0:46: '' : tessellation control barrier() cannot be placed within flow control 
ERROR: 0:51: '' : tessellation control barrier() cannot be placed within flow control 
ERROR: 0:54: '' : tessellation control barrier() cannot be placed within flow control 
ERROR: 0:61: '' : tessellation control barrier() cannot be placed after a return from main() 
ERROR: 0:64: 'vertices' : can only apply to 'out' 
ERROR: 0:65: 'vertices' : cannot change previously set layout value 
ERROR: 0:69: '[' :  array index out of range '4'
ERROR: 0:71: '' : tessellation control barrier() must be in main() 
ERROR: 0:74: 'in' : type must be an array: ina
ERROR: 0:76: '[]' : tessellation input array size must be gl_MaxPatchVertices or implicitly sized 
ERROR: 0:83: 'location' : overlapping use of location 4
ERROR: 0:87: 'location' : overlapping use of location 4
ERROR: 18 compilation errors.  No code generated.


Shader version: 400
Requested GL_ARB_separate_shader_objects
vertices = 4
ERROR: node is still EOpNull!
0:13  Function Definition: main( (global void)
0:13    Function Parameters: 
0:15    Sequence
0:15      Barrier (global void)
0:17      Sequence
0:17        move second child to first child (temp int)
0:17          'a' (temp int)
0:17          Constant:
0:17            5392 (const int)
0:23      Sequence
0:23        move second child to first child (temp 4-component vector of float)
0:23          'p' (temp 4-component vector of float)
0:23          gl_Position: direct index for structure (in 4-component vector of float)
0:23            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:23              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:23              Constant:
0:23                1 (const int)
0:23            Constant:
0:23              0 (const int)
0:24      Sequence
0:24        move second child to first child (temp float)
0:24          'ps' (temp float)
0:24          gl_PointSize: direct index for structure (in float)
0:24            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:24              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:24              Constant:
0:24                1 (const int)
0:24            Constant:
0:24              1 (const int)
0:25      Sequence
0:25        move second child to first child (temp float)
0:25          'cd' (temp float)
0:25          direct index (temp float)
0:25            gl_ClipDistance: direct index for structure (in implicitly-sized array of float)
0:25              direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:25                'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:25                Constant:
0:25                  1 (const int)
0:25              Constant:
0:25                2 (const int)
0:25            Constant:
0:25              2 (const int)
0:27      Sequence
0:27        move second child to first child (temp int)
0:27          'pvi' (temp int)
0:27          'gl_PatchVerticesIn' (in int PatchVertices)
0:28      Sequence
0:28        move second child to first child (temp int)
0:28          'pid' (temp int)
0:28          'gl_PrimitiveID' (in int PrimitiveID)
0:29      Sequence
0:29        move second child to first child (temp int)
0:29          'iid' (temp int)
0:29          'gl_InvocationID' (in int InvocationID)
0:31      move second child to first child (temp 4-component vector of float)
0:31        gl_Position: direct index for structure (out 4-component vector of float Position)
0:31          direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:31            'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:31            Constant:
0:31              1 (const int)
0:31          Constant:
0:31            0 (const int)
0:31        'p' (temp 4-component vector of float)
0:32      move second child to first child (temp float)
0:32        gl_PointSize: direct index for structure (out float PointSize)
0:32          direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:32            'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:32            Constant:
0:32              1 (const int)
0:32          Constant:
0:32            1 (const int)
0:32        'ps' (temp float)
0:33      move second child to first child (temp float)
0:33        direct index (temp float ClipDistance)
0:33          gl_ClipDistance: direct index for structure (out implicitly-sized array of float ClipDistance)
0:33            direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:33              'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:33              Constant:
0:33                1 (const int)
0:33            Constant:
0:33              2 (const int)
0:33          Constant:
0:33            1 (const int)
0:33        'cd' (temp float)
0:35      move second child to first child (temp float)
0:35        direct index (patch temp float TessLevelOuter)
0:35          'gl_TessLevelOuter' (patch out 4-element array of float TessLevelOuter)
0:35          Constant:
0:35            3 (const int)
0:35        Constant:
0:35          3.200000
0:36      move second child to first child (temp float)
0:36        direct index (patch temp float TessLevelInner)
0:36          'gl_TessLevelInner' (patch out 2-element array of float TessLevelInner)
0:36          Constant:
0:36            1 (const int)
0:36        Constant:
0:36          1.300000
0:38      Test condition and select (temp void)
0:38        Condition
0:38        Compare Greater Than (temp bool)
0:38          'a' (temp int)
0:38          Constant:
0:38            10 (const int)
0:38        true case
0:39        Barrier (global void)
0:38        false case
0:41        Barrier (global void)
0:43      Barrier (global void)
0:47      Loop with condition not tested first
0:47        Loop Condition
0:47        Compare Greater Than (temp bool)
0:47          'a' (temp int)
0:47          Constant:
0:47            10 (const int)
0:47        Loop Body
0:46        Sequence
0:46          Barrier (global void)
0:49      switch
0:49      condition
0:49        'a' (temp int)
0:49      body
0:49        Sequence
0:50          default: 
0:?           Sequence
0:51            Barrier (global void)
0:52            Branch: Break
0:54      Test condition and select (temp int)
0:54        Condition
0:54        Compare Less Than (temp bool)
0:54          'a' (temp int)
0:54          Constant:
0:54            12 (const int)
0:54        true case
0:54        'a' (temp int)
0:54        false case
0:54        Comma (temp int)
0:54          Barrier (global void)
0:54          'a' (temp int)
0:56      Sequence
0:56        Barrier (global void)
0:59      Branch: Return
0:61      Barrier (global void)
0:67  Function Definition: foo( (global void)
0:67    Function Parameters: 
0:69    Sequence
0:69      gl_PointSize: direct index for structure (out float PointSize)
0:69        direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:69          'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:69          Constant:
0:69            4 (const int)
0:69        Constant:
0:69          1 (const int)
0:71      Barrier (global void)
0:91  Function Definition: foop( (global void)
0:91    Function Parameters: 
0:?     Sequence
0:95      multiply second child into first child (temp 3-component vector of float)
0:95        'pv3' (temp 3-component vector of float)
0:95        'pv3' (temp 3-component vector of float)
0:96      move second child to first child (temp 3-component vector of float)
0:96        'pv3' (temp 3-component vector of float)
0:96        fma (global 3-component vector of float)
0:96          'pv3' (temp 3-component vector of float)
0:96          'pv3' (temp 3-component vector of float)
0:96          'pv3' (temp 3-component vector of float)
0:97      move second child to first child (temp double)
0:97        'd' (temp double)
0:97        fma (global double)
0:97          'd' (temp double)
0:97          'd' (temp double)
0:97          'd' (temp double)
0:?   Linker Objects
0:?     'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:?     'outa' (global 4-element array of int)
0:?     'patchIn' (patch in 4-component vector of float)
0:?     'patchOut' (patch out 4-component vector of float)
0:?     'ina' (in 2-component vector of float)
0:?     'inb' (in 32-element array of 2-component vector of float)
0:?     'inc' (in 32-element array of 2-component vector of float)
0:?     'ind' (in 32-element array of 2-component vector of float)
0:?     'ivla' (layout(location=3 ) in 32-element array of 4-component vector of float)
0:?     'ivlb' (layout(location=4 ) in 32-element array of 4-component vector of float)
0:?     'ivlc' (layout(location=4 ) in 32-element array of 4-component vector of float)
0:?     'ovla' (layout(location=3 ) out 4-element array of 4-component vector of float)
0:?     'ovlb' (layout(location=4 ) out 4-element array of 4-component vector of float)
0:?     'ovlc' (layout(location=4 ) out 4-element array of 4-component vector of float)
0:?     'pv3' (temp 3-component vector of float)
0:?     'pinbi' (patch out block{out int a})

400.tese
Warning, version 400 is not yet complete; most version-specific features are present, but some are missing.
ERROR: 0:3: 'vertices' : there is no such layout identifier for this stage taking an assigned value 
ERROR: 0:5: 'triangles' : cannot change previously set input primitive 
ERROR: 0:6: 'isolines' : cannot change previously set input primitive 
ERROR: 0:8: 'ccw' : cannot change previously set vertex order 
ERROR: 0:12: 'equal_spacing' : cannot change previously set vertex spacing 
ERROR: 0:13: 'fractional_even_spacing' : cannot change previously set vertex spacing 
ERROR: 0:18: 'patch' : can only use on input in tessellation-evaluation shader 
ERROR: 0:22: 'barrier' : no matching overloaded function found 
ERROR: 0:47: 'patch' : cannot use interpolation qualifiers with patch 
ERROR: 0:48: 'patch' : cannot use interpolation qualifiers with patch 
ERROR: 0:49: 'patch' : cannot use interpolation qualifiers with patch 
ERROR: 0:50: '' : can only have one auxiliary qualifier (centroid, patch, and sample) 
ERROR: 0:54: 'gl_PerVertex' : block already declared with size, can't redeclare as implicitly-sized 
ERROR: 0:59: 'gl_PerVertex' : can only redeclare a built-in block once, and before any use 
ERROR: 0:64: 'quads' : cannot apply to 'out' 
ERROR: 0:64: 'cw' : can only apply to 'in' 
ERROR: 0:65: 'triangles' : cannot apply to 'out' 
ERROR: 0:66: 'isolines' : cannot apply to 'out' 
ERROR: 0:67: 'cw' : can only apply to 'in' 
ERROR: 0:68: 'fractional_odd_spacing' : can only apply to 'in' 
ERROR: 0:69: 'equal_spacing' : can only apply to 'in' 
ERROR: 0:70: 'fractional_even_spacing' : can only apply to 'in' 
ERROR: 0:71: 'point_mode' : can only apply to 'in' 
ERROR: 0:73: 'in' : type must be an array: ina
ERROR: 0:75: '[]' : tessellation input array size must be gl_MaxPatchVertices or implicitly sized 
ERROR: 0:78: 'in' : type must be an array: bla
ERROR: 0:86: '[]' : tessellation input array size must be gl_MaxPatchVertices or implicitly sized 
ERROR: 0:96: 'location' : overlapping use of location 24
ERROR: 0:99: 'location' : overlapping use of location 24
ERROR: 0:101: 'gl_TessLevelOuter' : identifiers starting with "gl_" are reserved 
ERROR: 30 compilation errors.  No code generated.


Shader version: 400
Requested GL_ARB_separate_shader_objects
input primitive = quads
vertex spacing = fractional_odd_spacing
triangle order = cw
using point mode
ERROR: node is still EOpNull!
0:20  Function Definition: main( (global void)
0:20    Function Parameters: 
0:22    Sequence
0:22      Constant:
0:22        0.000000
0:24      Sequence
0:24        move second child to first child (temp int)
0:24          'a' (temp int)
0:24          Constant:
0:24            1512 (const int)
0:32      Sequence
0:32        move second child to first child (temp 4-component vector of float)
0:32          'p' (temp 4-component vector of float)
0:32          gl_Position: direct index for structure (in 4-component vector of float)
0:32            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:32              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:32              Constant:
0:32                1 (const int)
0:32            Constant:
0:32              0 (const int)
0:33      Sequence
0:33        move second child to first child (temp float)
0:33          'ps' (temp float)
0:33          gl_PointSize: direct index for structure (in float)
0:33            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:33              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:33              Constant:
0:33                1 (const int)
0:33            Constant:
0:33              1 (const int)
0:34      Sequence
0:34        move second child to first child (temp float)
0:34          'cd' (temp float)
0:34          direct index (temp float)
0:34            gl_ClipDistance: direct index for structure (in implicitly-sized array of float)
0:34              direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:34                'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:34                Constant:
0:34                  1 (const int)
0:34              Constant:
0:34                2 (const int)
0:34            Constant:
0:34              2 (const int)
0:36      Sequence
0:36        move second child to first child (temp int)
0:36          'pvi' (temp int)
0:36          'gl_PatchVerticesIn' (in int PatchVertices)
0:37      Sequence
0:37        move second child to first child (temp int)
0:37          'pid' (temp int)
0:37          'gl_PrimitiveID' (in int PrimitiveID)
0:38      Sequence
0:38        move second child to first child (temp 3-component vector of float)
0:38          'tc' (temp 3-component vector of float)
0:38          'gl_TessCoord' (in 3-component vector of float TessCoord)
0:39      Sequence
0:39        move second child to first child (temp float)
0:39          'tlo' (temp float)
0:39          direct index (patch temp float TessLevelOuter)
0:39            'gl_TessLevelOuter' (patch in 4-element array of float TessLevelOuter)
0:39            Constant:
0:39              3 (const int)
0:40      Sequence
0:40        move second child to first child (temp float)
0:40          'tli' (temp float)
0:40          direct index (patch temp float TessLevelInner)
0:40            'gl_TessLevelInner' (patch in 2-element array of float TessLevelInner)
0:40            Constant:
0:40              1 (const int)
0:42      move second child to first child (temp 4-component vector of float)
0:42        gl_Position: direct index for structure (gl_Position 4-component vector of float Position)
0:42          'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:42          Constant:
0:42            0 (const uint)
0:42        'p' (temp 4-component vector of float)
0:43      move second child to first child (temp float)
0:43        gl_PointSize: direct index for structure (gl_PointSize float PointSize)
0:43          'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:43          Constant:
0:43            1 (const uint)
0:43        'ps' (temp float)
0:44      move second child to first child (temp float)
0:44        direct index (temp float ClipDistance)
0:44          gl_ClipDistance: direct index for structure (out implicitly-sized array of float ClipDistance)
0:44            'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:44            Constant:
0:44              2 (const uint)
0:44          Constant:
0:44            2 (const int)
0:44        'cd' (temp float)
0:?   Linker Objects
0:?     'patchIn' (patch in 4-component vector of float)
0:?     'patchOut' (patch out 4-component vector of float)
0:?     'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:?     'badp1' (smooth patch in 4-component vector of float)
0:?     'badp2' (flat patch in 4-component vector of float)
0:?     'badp3' (noperspective patch in 4-component vector of float)
0:?     'badp4' (patch sample in 3-component vector of float)
0:?     'gl_in' (in 32-element array of block{in implicitly-sized array of float gl_ClipDistance})
0:?     'ina' (in 2-component vector of float)
0:?     'inb' (in 32-element array of 2-component vector of float)
0:?     'inc' (in 32-element array of 2-component vector of float)
0:?     'ind' (in 32-element array of 2-component vector of float)
0:?     'bla' (in block{in int f})
0:?     'blb' (in 32-element array of block{in int f})
0:?     'blc' (in 32-element array of block{in int f})
0:?     'bld' (in 32-element array of block{in int f})
0:?     'ivla' (layout(location=23 ) in 32-element array of 4-component vector of float)
0:?     'ivlb' (layout(location=24 ) in 32-element array of 4-component vector of float)
0:?     'ivlc' (layout(location=24 ) in 32-element array of 4-component vector of float)
0:?     'ovla' (layout(location=23 ) out 2-element array of 4-component vector of float)
0:?     'ovlb' (layout(location=24 ) out 2-element array of 4-component vector of float)
0:?     'pinbi' (patch in block{in int a})

410.tesc
Warning, version 400 is not yet complete; most version-specific features are present, but some are missing.
ERROR: 0:4: 'length' :  array must first be sized by a redeclaration or layout qualifier
ERROR: 1 compilation errors.  No code generated.


Shader version: 400
vertices = 0
ERROR: node is still EOpNull!
0:8  Function Definition: main( (global void)
0:8    Function Parameters: 
0:?   Linker Objects
0:?     'gl_out' (out implicitly-sized array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance})
0:?     'outa' (global 1-element array of int)
0:?     'patchOut' (patch out 4-component vector of float)

420.tesc
Warning, version 420 is not yet complete; most version-specific features are present, but some are missing.
ERROR: 0:7: 'vertices' : inconsistent output number of vertices for array size of gl_out
ERROR: 0:11: 'vertices' : inconsistent output number of vertices for array size of a
ERROR: 0:12: 'vertices' : inconsistent output number of vertices for array size of outb
ERROR: 0:26: 'gl_PointSize' : no such field in structure 
ERROR: 0:26: 'assign' :  cannot convert from 'temp float' to 'temp block{out 4-component vector of float Position gl_Position}'
ERROR: 0:29: 'out' : type must be an array: outf
ERROR: 6 compilation errors.  No code generated.


Shader version: 420
Requested GL_ARB_separate_shader_objects
vertices = 4
ERROR: node is still EOpNull!
0:15  Function Definition: main( (global void)
0:15    Function Parameters: 
0:17    Sequence
0:17      Sequence
0:17        move second child to first child (temp 4-component vector of float)
0:17          'p' (temp 4-component vector of float)
0:17          gl_Position: direct index for structure (in 4-component vector of float)
0:17            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:17              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:17              Constant:
0:17                1 (const int)
0:17            Constant:
0:17              0 (const int)
0:18      Sequence
0:18        move second child to first child (temp float)
0:18          'ps' (temp float)
0:18          gl_PointSize: direct index for structure (in float)
0:18            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:18              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:18              Constant:
0:18                1 (const int)
0:18            Constant:
0:18              1 (const int)
0:19      Sequence
0:19        move second child to first child (temp float)
0:19          'cd' (temp float)
0:19          direct index (temp float)
0:19            gl_ClipDistance: direct index for structure (in implicitly-sized array of float)
0:19              direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:19                'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in implicitly-sized array of float gl_ClipDistance})
0:19                Constant:
0:19                  1 (const int)
0:19              Constant:
0:19                2 (const int)
0:19            Constant:
0:19              2 (const int)
0:21      Sequence
0:21        move second child to first child (temp int)
0:21          'pvi' (temp int)
0:21          'gl_PatchVerticesIn' (in int PatchVertices)
0:22      Sequence
0:22        move second child to first child (temp int)
0:22          'pid' (temp int)
0:22          'gl_PrimitiveID' (in int PrimitiveID)
0:23      Sequence
0:23        move second child to first child (temp int)
0:23          'iid' (temp int)
0:23          'gl_InvocationID' (in int InvocationID)
0:25      move second child to first child (temp 4-component vector of float)
0:25        gl_Position: direct index for structure (out 4-component vector of float Position)
0:25          direct index (temp block{out 4-component vector of float Position gl_Position})
0:25            'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position})
0:25            Constant:
0:25              1 (const int)
0:25          Constant:
0:25            0 (const int)
0:25        'p' (temp 4-component vector of float)
0:26      direct index (temp block{out 4-component vector of float Position gl_Position})
0:26        'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position})
0:26        Constant:
0:26          1 (const int)
0:34  Function Definition: foo( (global void)
0:34    Function Parameters: 
0:36    Sequence
0:36      Test condition and select (temp void)
0:36        Condition
0:36        logical-or (temp bool)
0:36          Compare Not Equal (temp bool)
0:36            Constant:
0:36              -0.625000
0:36              -0.500000
0:36              -0.375000
0:36              -0.250000
0:36              -0.375000
0:36              -0.250000
0:36              -0.125000
0:36              0.000000
0:36            direct index (layout(location=0 ) temp 2X4 matrix of double)
0:36              'vs_tcs_first' (layout(location=0 ) in 32-element array of 2X4 matrix of double)
0:36              Constant:
0:36                0 (const int)
0:37          Compare Not Equal (temp bool)
0:37            Constant:
0:37              0.375000
0:37              0.500000
0:37              0.625000
0:37              0.750000
0:37              0.625000
0:37              0.750000
0:37              0.875000
0:37              -0.625000
0:37            direct index (layout(location=12 ) temp 2X4 matrix of double)
0:37              'vs_tcs_last' (layout(location=12 ) in 32-element array of 2X4 matrix of double)
0:37              Constant:
0:37                0 (const int)
0:36        true case is null
0:?   Linker Objects
0:?     'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position})
0:?     'a' (out 3-element array of int)
0:?     'outb' (out 5-element array of int)
0:?     'outc' (out 4-element array of int)
0:?     'outf' (out float)
0:?     'vs_tcs_first' (layout(location=0 ) in 32-element array of 2X4 matrix of double)
0:?     'vs_tcs_last' (layout(location=12 ) in 32-element array of 2X4 matrix of double)

420.tese
Warning, version 420 is not yet complete; most version-specific features are present, but some are missing.
ERROR: 0:7: '=' :  cannot convert from 'global 3-element array of float' to 'global 2-element array of float'
ERROR: 0:8: 'initializer list' : wrong vector size (or rows in a matrix column): global 2-component vector of float
ERROR: 0:9: 'initializer list' : wrong number of matrix columns: global 3X3 matrix of float
ERROR: 0:10: 'initializer list' : wrong number of matrix columns: global 2X2 matrix of float
ERROR: 0:25: 'initializer list' : wrong number of structure members 
ERROR: 0:27: '=' :  cannot convert from 'const bool' to 'global int'
ERROR: 0:28: 'constructor' :  cannot convert parameter 2 from 'const float' to 'global 4-component vector of float'
ERROR: 0:29: 'constructor' :  cannot convert parameter 2 from 'const 2X2 matrix of float' to 'const 4-component vector of float'
ERROR: 0:29: 'const 2-element array of 4-component vector of float' : cannot construct with these arguments 
ERROR: 0:29: '=' :  cannot convert from 'const float' to 'global 2-element array of 4-component vector of float'
ERROR: 0:30: 'initializer list' : wrong number of matrix columns: global 4X2 matrix of float
ERROR: 0:40: 'constructor' :  cannot convert parameter 1 from 'temp float' to 'global structure{global float s, global float t}'
ERROR: 0:58: 'initializer list' : wrong number of structure members 
ERROR: 13 compilation errors.  No code generated.


Shader version: 420
input primitive = none
vertex spacing = none
triangle order = none
ERROR: node is still EOpNull!
0:4  Sequence
0:4    move second child to first child (temp 2X2 matrix of float)
0:4      'b' (global 2X2 matrix of float)
0:4      Constant:
0:4        1.000000
0:4        0.000000
0:4        0.000000
0:4        1.000000
0:15  Sequence
0:15    move second child to first child (temp structure{global float a, global int b})
0:15      'e' (global structure{global float a, global int b})
0:15      Constant:
0:15        1.200000
0:15        2 (const int)
0:20  Sequence
0:20    move second child to first child (temp structure{global float a, global int b})
0:20      'e2' (global structure{global float a, global int b})
0:20      Constant:
0:20        1.000000
0:20        3 (const int)
0:42  Sequence
0:42    move second child to first child (temp 5-element array of float)
0:42      'b5' (global 5-element array of float)
0:42      Constant:
0:42        3.400000
0:42        4.200000
0:42        5.000000
0:42        5.200000
0:42        1.100000
0:67  Sequence
0:67    move second child to first child (temp 3-component vector of float)
0:67      'av3' (global 3-component vector of float)
0:67      Construct vec3 (global 3-component vector of float)
0:67        'vc1' (global float)
0:67        'vc2' (global float)
0:67        'vc3' (global float)
0:68  Sequence
0:68    move second child to first child (temp 3-component vector of float)
0:68      'bv3' (global 3-component vector of float)
0:68      Construct vec3 (global 3-component vector of float)
0:68        'vc1' (global float)
0:68        'vc2' (global float)
0:68        'vc3' (global float)
0:70  Function Definition: main( (global void)
0:70    Function Parameters: 
0:72    Sequence
0:72      MemoryBarrier (global void)
0:74      Test condition and select (temp void)
0:74        Condition
0:74        Compare Equal (temp bool)
0:74          Constant:
0:74            1 (const uint)
0:74            2 (const uint)
0:74            3.000000
0:74            4.000000
0:74            0.000000
0:74            0.000000
0:74            0.000000
0:74            4.000000
0:74            0.000000
0:74            5.000000
0:74            6.000000
0:74            0.000000
0:74            0.000000
0:74            0.000000
0:74            6.000000
0:74            0.000000
0:74          'curlybad1' (temp structure{global 2-component vector of uint uv2, global 2-element array of structure{global float f, global 2X3 matrix of float m23} s})
0:74        true case is null
0:76      Test condition and select (temp void)
0:76        Condition
0:76        Constant:
0:76          true (const bool)
0:76        true case is null
0:?   Linker Objects
0:?     'a' (const 2X2 matrix of float)
0:?       1.000000
0:?       0.000000
0:?       0.000000
0:?       1.000000
0:?     'b' (global 2X2 matrix of float)
0:?     'c' (const 2X2 matrix of float)
0:?       1.000000
0:?       0.000000
0:?       0.000000
0:?       1.000000
0:?     'a2' (global 2-element array of float)
0:?     'b2' (global 2-component vector of float)
0:?     'c2' (global 3X3 matrix of float)
0:?     'd' (global 2X2 matrix of float)
0:?     'e' (global structure{global float a, global int b})
0:?     'e2' (global structure{global float a, global int b})
0:?     'e3' (global structure{global float a, global int b})
0:?     'a3' (global int)
0:?     'b3' (global 2-element array of 4-component vector of float)
0:?     'b4' (global 2-element array of 4-component vector of float)
0:?     'c3' (global 4X2 matrix of float)
0:?     'd2' (global implicitly-sized array of structure{global float s, global float t})
0:?     'b5' (global 5-element array of float)
0:?     'constructed' (const structure{global 2-component vector of uint uv2, global 2-element array of structure{global float f, global 2X3 matrix of float m23} s})
0:?       1 (const uint)
0:?       2 (const uint)
0:?       3.000000
0:?       4.000000
0:?       0.000000
0:?       0.000000
0:?       0.000000
0:?       4.000000
0:?       0.000000
0:?       5.000000
0:?       6.000000
0:?       0.000000
0:?       0.000000
0:?       0.000000
0:?       6.000000
0:?       0.000000
0:?     'curlybad1' (temp structure{global 2-component vector of uint uv2, global 2-element array of structure{global float f, global 2X3 matrix of float m23} s})
0:?     'curlyInit' (const structure{global 2-component vector of uint uv2, global 2-element array of structure{global float f, global 2X3 matrix of float m23} s})
0:?       1 (const uint)
0:?       2 (const uint)
0:?       3.000000
0:?       4.000000
0:?       0.000000
0:?       0.000000
0:?       0.000000
0:?       4.000000
0:?       0.000000
0:?       5.000000
0:?       6.000000
0:?       0.000000
0:?       0.000000
0:?       0.000000
0:?       6.000000
0:?       0.000000
0:?     'vc1' (global float)
0:?     'vc2' (global float)
0:?     'vc3' (global float)
0:?     'av3' (global 3-component vector of float)
0:?     'bv3' (global 3-component vector of float)


Linked tessellation control stage:

ERROR: Linking tessellation control stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
    main(
ERROR: Linking tessellation control stage: Contradictory layout vertices values
ERROR: Linking tessellation control stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
    main(
ERROR: Linking tessellation control stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
    main(
ERROR: Linking tessellation control stage: Types must match:
    gl_out: "out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance}" versus "out implicitly-sized array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance}"
ERROR: Linking tessellation control stage: Types must match:
    outa: "global 4-element array of int" versus "global 1-element array of int"
ERROR: Linking tessellation control stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
    main(
ERROR: Linking tessellation control stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
    main(
ERROR: Linking tessellation control stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
    foo(
ERROR: Linking tessellation control stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
    main(
ERROR: Linking tessellation control stage: Types must match:
    gl_out: "out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out implicitly-sized array of float ClipDistance gl_ClipDistance}" versus "out 3-element array of block{out 4-component vector of float Position gl_Position}"

Linked tessellation evaluation stage:

ERROR: Linking tessellation evaluation stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
    main(
ERROR: Linking tessellation evaluation stage: Contradictory input layout primitives
ERROR: Linking tessellation evaluation stage: Contradictory input vertex spacing
ERROR: Linking tessellation evaluation stage: Contradictory triangle ordering
ERROR: Linking tessellation evaluation stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
    main(
ERROR: Linking tessellation evaluation stage: Multiple function bodies in multiple compilation units for the same signature in the same stage:
    main(

Shader version: 420
Requested GL_ARB_separate_shader_objects
Requested GL_ARB_tessellation_shader
vertices = 4
0:? Sequence
0:10  Function Definition: main( (global void)
0:10    Function Parameters: 
0:12    Sequence
0:12      Barrier (global void)
0:14      Sequence
0:14        move second child to first child (temp int)
0:14          'a' (temp int)
0:14          Constant:
0:14            5392 (const int)
0:20      Sequence
0:20        move second child to first child (temp 4-component vector of float)
0:20          'p' (temp 4-component vector of float)
0:20          gl_Position: direct index for structure (in 4-component vector of float)
0:20            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:20              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:20              Constant:
0:20                1 (const int)
0:20            Constant:
0:20              0 (const int)
0:21      Sequence
0:21        move second child to first child (temp float)
0:21          'ps' (temp float)
0:21          gl_PointSize: direct index for structure (in float)
0:21            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:21              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:21              Constant:
0:21                1 (const int)
0:21            Constant:
0:21              1 (const int)
0:22      Sequence
0:22        move second child to first child (temp float)
0:22          'cd' (temp float)
0:22          direct index (temp float)
0:22            gl_ClipDistance: direct index for structure (in 1-element array of float)
0:22              direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:22                'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:22                Constant:
0:22                  1 (const int)
0:22              Constant:
0:22                2 (const int)
0:22            Constant:
0:22              2 (const int)
0:24      Sequence
0:24        move second child to first child (temp int)
0:24          'pvi' (temp int)
0:24          'gl_PatchVerticesIn' (in int PatchVertices)
0:25      Sequence
0:25        move second child to first child (temp int)
0:25          'pid' (temp int)
0:25          'gl_PrimitiveID' (in int PrimitiveID)
0:26      Sequence
0:26        move second child to first child (temp int)
0:26          'iid' (temp int)
0:26          'gl_InvocationID' (in int InvocationID)
0:28      move second child to first child (temp 4-component vector of float)
0:28        gl_Position: direct index for structure (out 4-component vector of float Position)
0:28          direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
0:28            'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
0:28            Constant:
0:28              1 (const int)
0:28          Constant:
0:28            0 (const int)
0:28        'p' (temp 4-component vector of float)
0:29      move second child to first child (temp float)
0:29        gl_PointSize: direct index for structure (out float PointSize)
0:29          direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
0:29            'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
0:29            Constant:
0:29              1 (const int)
0:29          Constant:
0:29            1 (const int)
0:29        'ps' (temp float)
0:30      move second child to first child (temp float)
0:30        direct index (temp float ClipDistance)
0:30          gl_ClipDistance: direct index for structure (out 1-element array of float ClipDistance)
0:30            direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
0:30              'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
0:30              Constant:
0:30                1 (const int)
0:30            Constant:
0:30              2 (const int)
0:30          Constant:
0:30            1 (const int)
0:30        'cd' (temp float)
0:32      move second child to first child (temp float)
0:32        direct index (patch temp float TessLevelOuter)
0:32          'gl_TessLevelOuter' (patch out 4-element array of float TessLevelOuter)
0:32          Constant:
0:32            3 (const int)
0:32        Constant:
0:32          3.200000
0:33      move second child to first child (temp float)
0:33        direct index (patch temp float TessLevelInner)
0:33          'gl_TessLevelInner' (patch out 2-element array of float TessLevelInner)
0:33          Constant:
0:33            1 (const int)
0:33        Constant:
0:33          1.300000
0:13  Function Definition: main( (global void)
0:13    Function Parameters: 
0:15    Sequence
0:15      Barrier (global void)
0:17      Sequence
0:17        move second child to first child (temp int)
0:17          'a' (temp int)
0:17          Constant:
0:17            5392 (const int)
0:23      Sequence
0:23        move second child to first child (temp 4-component vector of float)
0:23          'p' (temp 4-component vector of float)
0:23          gl_Position: direct index for structure (in 4-component vector of float)
0:23            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:23              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:23              Constant:
0:23                1 (const int)
0:23            Constant:
0:23              0 (const int)
0:24      Sequence
0:24        move second child to first child (temp float)
0:24          'ps' (temp float)
0:24          gl_PointSize: direct index for structure (in float)
0:24            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:24              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:24              Constant:
0:24                1 (const int)
0:24            Constant:
0:24              1 (const int)
0:25      Sequence
0:25        move second child to first child (temp float)
0:25          'cd' (temp float)
0:25          direct index (temp float)
0:25            gl_ClipDistance: direct index for structure (in 1-element array of float)
0:25              direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:25                'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:25                Constant:
0:25                  1 (const int)
0:25              Constant:
0:25                2 (const int)
0:25            Constant:
0:25              2 (const int)
0:27      Sequence
0:27        move second child to first child (temp int)
0:27          'pvi' (temp int)
0:27          'gl_PatchVerticesIn' (in int PatchVertices)
0:28      Sequence
0:28        move second child to first child (temp int)
0:28          'pid' (temp int)
0:28          'gl_PrimitiveID' (in int PrimitiveID)
0:29      Sequence
0:29        move second child to first child (temp int)
0:29          'iid' (temp int)
0:29          'gl_InvocationID' (in int InvocationID)
0:31      move second child to first child (temp 4-component vector of float)
0:31        gl_Position: direct index for structure (out 4-component vector of float Position)
0:31          direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
0:31            'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
0:31            Constant:
0:31              1 (const int)
0:31          Constant:
0:31            0 (const int)
0:31        'p' (temp 4-component vector of float)
0:32      move second child to first child (temp float)
0:32        gl_PointSize: direct index for structure (out float PointSize)
0:32          direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
0:32            'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
0:32            Constant:
0:32              1 (const int)
0:32          Constant:
0:32            1 (const int)
0:32        'ps' (temp float)
0:33      move second child to first child (temp float)
0:33        direct index (temp float ClipDistance)
0:33          gl_ClipDistance: direct index for structure (out 1-element array of float ClipDistance)
0:33            direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
0:33              'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
0:33              Constant:
0:33                1 (const int)
0:33            Constant:
0:33              2 (const int)
0:33          Constant:
0:33            1 (const int)
0:33        'cd' (temp float)
0:35      move second child to first child (temp float)
0:35        direct index (patch temp float TessLevelOuter)
0:35          'gl_TessLevelOuter' (patch out 4-element array of float TessLevelOuter)
0:35          Constant:
0:35            3 (const int)
0:35        Constant:
0:35          3.200000
0:36      move second child to first child (temp float)
0:36        direct index (patch temp float TessLevelInner)
0:36          'gl_TessLevelInner' (patch out 2-element array of float TessLevelInner)
0:36          Constant:
0:36            1 (const int)
0:36        Constant:
0:36          1.300000
0:38      Test condition and select (temp void)
0:38        Condition
0:38        Compare Greater Than (temp bool)
0:38          'a' (temp int)
0:38          Constant:
0:38            10 (const int)
0:38        true case
0:39        Barrier (global void)
0:38        false case
0:41        Barrier (global void)
0:43      Barrier (global void)
0:47      Loop with condition not tested first
0:47        Loop Condition
0:47        Compare Greater Than (temp bool)
0:47          'a' (temp int)
0:47          Constant:
0:47            10 (const int)
0:47        Loop Body
0:46        Sequence
0:46          Barrier (global void)
0:49      switch
0:49      condition
0:49        'a' (temp int)
0:49      body
0:49        Sequence
0:50          default: 
0:?           Sequence
0:51            Barrier (global void)
0:52            Branch: Break
0:54      Test condition and select (temp int)
0:54        Condition
0:54        Compare Less Than (temp bool)
0:54          'a' (temp int)
0:54          Constant:
0:54            12 (const int)
0:54        true case
0:54        'a' (temp int)
0:54        false case
0:54        Comma (temp int)
0:54          Barrier (global void)
0:54          'a' (temp int)
0:56      Sequence
0:56        Barrier (global void)
0:59      Branch: Return
0:61      Barrier (global void)
0:67  Function Definition: foo( (global void)
0:67    Function Parameters: 
0:69    Sequence
0:69      gl_PointSize: direct index for structure (out float PointSize)
0:69        direct index (temp block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
0:69          'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
0:69          Constant:
0:69            4 (const int)
0:69        Constant:
0:69          1 (const int)
0:71      Barrier (global void)
0:91  Function Definition: foop( (global void)
0:91    Function Parameters: 
0:?     Sequence
0:95      multiply second child into first child (temp 3-component vector of float)
0:95        'pv3' (temp 3-component vector of float)
0:95        'pv3' (temp 3-component vector of float)
0:96      move second child to first child (temp 3-component vector of float)
0:96        'pv3' (temp 3-component vector of float)
0:96        fma (global 3-component vector of float)
0:96          'pv3' (temp 3-component vector of float)
0:96          'pv3' (temp 3-component vector of float)
0:96          'pv3' (temp 3-component vector of float)
0:97      move second child to first child (temp double)
0:97        'd' (temp double)
0:97        fma (global double)
0:97          'd' (temp double)
0:97          'd' (temp double)
0:97          'd' (temp double)
0:8  Function Definition: main( (global void)
0:8    Function Parameters: 
0:15  Function Definition: main( (global void)
0:15    Function Parameters: 
0:17    Sequence
0:17      Sequence
0:17        move second child to first child (temp 4-component vector of float)
0:17          'p' (temp 4-component vector of float)
0:17          gl_Position: direct index for structure (in 4-component vector of float)
0:17            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:17              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:17              Constant:
0:17                1 (const int)
0:17            Constant:
0:17              0 (const int)
0:18      Sequence
0:18        move second child to first child (temp float)
0:18          'ps' (temp float)
0:18          gl_PointSize: direct index for structure (in float)
0:18            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:18              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:18              Constant:
0:18                1 (const int)
0:18            Constant:
0:18              1 (const int)
0:19      Sequence
0:19        move second child to first child (temp float)
0:19          'cd' (temp float)
0:19          direct index (temp float)
0:19            gl_ClipDistance: direct index for structure (in 1-element array of float)
0:19              direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:19                'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:19                Constant:
0:19                  1 (const int)
0:19              Constant:
0:19                2 (const int)
0:19            Constant:
0:19              2 (const int)
0:21      Sequence
0:21        move second child to first child (temp int)
0:21          'pvi' (temp int)
0:21          'gl_PatchVerticesIn' (in int PatchVertices)
0:22      Sequence
0:22        move second child to first child (temp int)
0:22          'pid' (temp int)
0:22          'gl_PrimitiveID' (in int PrimitiveID)
0:23      Sequence
0:23        move second child to first child (temp int)
0:23          'iid' (temp int)
0:23          'gl_InvocationID' (in int InvocationID)
0:25      move second child to first child (temp 4-component vector of float)
0:25        gl_Position: direct index for structure (out 4-component vector of float Position)
0:25          direct index (temp block{out 4-component vector of float Position gl_Position})
0:25            'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position})
0:25            Constant:
0:25              1 (const int)
0:25          Constant:
0:25            0 (const int)
0:25        'p' (temp 4-component vector of float)
0:26      direct index (temp block{out 4-component vector of float Position gl_Position})
0:26        'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position})
0:26        Constant:
0:26          1 (const int)
0:34  Function Definition: foo( (global void)
0:34    Function Parameters: 
0:36    Sequence
0:36      Test condition and select (temp void)
0:36        Condition
0:36        logical-or (temp bool)
0:36          Compare Not Equal (temp bool)
0:36            Constant:
0:36              -0.625000
0:36              -0.500000
0:36              -0.375000
0:36              -0.250000
0:36              -0.375000
0:36              -0.250000
0:36              -0.125000
0:36              0.000000
0:36            direct index (layout(location=0 ) temp 2X4 matrix of double)
0:36              'vs_tcs_first' (layout(location=0 ) in 32-element array of 2X4 matrix of double)
0:36              Constant:
0:36                0 (const int)
0:37          Compare Not Equal (temp bool)
0:37            Constant:
0:37              0.375000
0:37              0.500000
0:37              0.625000
0:37              0.750000
0:37              0.625000
0:37              0.750000
0:37              0.875000
0:37              -0.625000
0:37            direct index (layout(location=12 ) temp 2X4 matrix of double)
0:37              'vs_tcs_last' (layout(location=12 ) in 32-element array of 2X4 matrix of double)
0:37              Constant:
0:37                0 (const int)
0:36        true case is null
0:?   Linker Objects
0:?     'gl_out' (out 4-element array of block{out 4-component vector of float Position gl_Position, out float PointSize gl_PointSize, out 1-element array of float ClipDistance gl_ClipDistance})
0:?     'outa' (global 4-element array of int)
0:?     'patchOut' (patch out 4-component vector of float)
0:?     'patchIn' (patch in 4-component vector of float)
0:?     'ina' (in 2-component vector of float)
0:?     'inb' (in 32-element array of 2-component vector of float)
0:?     'inc' (in 32-element array of 2-component vector of float)
0:?     'ind' (in 32-element array of 2-component vector of float)
0:?     'ivla' (layout(location=3 ) in 32-element array of 4-component vector of float)
0:?     'ivlb' (layout(location=4 ) in 32-element array of 4-component vector of float)
0:?     'ivlc' (layout(location=4 ) in 32-element array of 4-component vector of float)
0:?     'ovla' (layout(location=3 ) out 4-element array of 4-component vector of float)
0:?     'ovlb' (layout(location=4 ) out 4-element array of 4-component vector of float)
0:?     'ovlc' (layout(location=4 ) out 4-element array of 4-component vector of float)
0:?     'pv3' (temp 3-component vector of float)
0:?     'pinbi' (patch out block{out int a})
0:?     'a' (out 3-element array of int)
0:?     'outb' (out 5-element array of int)
0:?     'outc' (out 4-element array of int)
0:?     'outf' (out float)
0:?     'vs_tcs_first' (layout(location=0 ) in 32-element array of 2X4 matrix of double)
0:?     'vs_tcs_last' (layout(location=12 ) in 32-element array of 2X4 matrix of double)
Shader version: 420
Requested GL_ARB_separate_shader_objects
Requested GL_ARB_tessellation_shader
input primitive = quads
vertex spacing = fractional_odd_spacing
triangle order = cw
using point mode
ERROR: node is still EOpNull!
0:10  Function Definition: main( (global void)
0:10    Function Parameters: 
0:12    Sequence
0:12      Constant:
0:12        0.000000
0:14      Sequence
0:14        move second child to first child (temp int)
0:14          'a' (temp int)
0:14          Constant:
0:14            1512 (const int)
0:22      Sequence
0:22        move second child to first child (temp 4-component vector of float)
0:22          'p' (temp 4-component vector of float)
0:22          gl_Position: direct index for structure (in 4-component vector of float)
0:22            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:22              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:22              Constant:
0:22                1 (const int)
0:22            Constant:
0:22              0 (const int)
0:23      Sequence
0:23        move second child to first child (temp float)
0:23          'ps' (temp float)
0:23          gl_PointSize: direct index for structure (in float)
0:23            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:23              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:23              Constant:
0:23                1 (const int)
0:23            Constant:
0:23              1 (const int)
0:24      Sequence
0:24        move second child to first child (temp float)
0:24          'cd' (temp float)
0:24          direct index (temp float)
0:24            gl_ClipDistance: direct index for structure (in 1-element array of float)
0:24              direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:24                'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:24                Constant:
0:24                  1 (const int)
0:24              Constant:
0:24                2 (const int)
0:24            Constant:
0:24              2 (const int)
0:26      Sequence
0:26        move second child to first child (temp int)
0:26          'pvi' (temp int)
0:26          'gl_PatchVerticesIn' (in int PatchVertices)
0:27      Sequence
0:27        move second child to first child (temp int)
0:27          'pid' (temp int)
0:27          'gl_PrimitiveID' (in int PrimitiveID)
0:28      Sequence
0:28        move second child to first child (temp 3-component vector of float)
0:28          'tc' (temp 3-component vector of float)
0:28          'gl_TessCoord' (in 3-component vector of float TessCoord)
0:29      Sequence
0:29        move second child to first child (temp float)
0:29          'tlo' (temp float)
0:29          direct index (patch temp float TessLevelOuter)
0:29            'gl_TessLevelOuter' (patch in 4-element array of float TessLevelOuter)
0:29            Constant:
0:29              3 (const int)
0:30      Sequence
0:30        move second child to first child (temp float)
0:30          'tli' (temp float)
0:30          direct index (patch temp float TessLevelInner)
0:30            'gl_TessLevelInner' (patch in 2-element array of float TessLevelInner)
0:30            Constant:
0:30              1 (const int)
0:32      move second child to first child (temp 4-component vector of float)
0:32        gl_Position: direct index for structure (gl_Position 4-component vector of float Position)
0:32          'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 3-element array of float ClipDistance gl_ClipDistance})
0:32          Constant:
0:32            0 (const uint)
0:32        'p' (temp 4-component vector of float)
0:33      move second child to first child (temp float)
0:33        gl_PointSize: direct index for structure (gl_PointSize float PointSize)
0:33          'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 3-element array of float ClipDistance gl_ClipDistance})
0:33          Constant:
0:33            1 (const uint)
0:33        'ps' (temp float)
0:34      move second child to first child (temp float)
0:34        direct index (temp float ClipDistance)
0:34          gl_ClipDistance: direct index for structure (out 3-element array of float ClipDistance)
0:34            'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 3-element array of float ClipDistance gl_ClipDistance})
0:34            Constant:
0:34              2 (const uint)
0:34          Constant:
0:34            2 (const int)
0:34        'cd' (temp float)
0:20  Function Definition: main( (global void)
0:20    Function Parameters: 
0:22    Sequence
0:22      Constant:
0:22        0.000000
0:24      Sequence
0:24        move second child to first child (temp int)
0:24          'a' (temp int)
0:24          Constant:
0:24            1512 (const int)
0:32      Sequence
0:32        move second child to first child (temp 4-component vector of float)
0:32          'p' (temp 4-component vector of float)
0:32          gl_Position: direct index for structure (in 4-component vector of float)
0:32            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:32              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:32              Constant:
0:32                1 (const int)
0:32            Constant:
0:32              0 (const int)
0:33      Sequence
0:33        move second child to first child (temp float)
0:33          'ps' (temp float)
0:33          gl_PointSize: direct index for structure (in float)
0:33            direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:33              'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:33              Constant:
0:33                1 (const int)
0:33            Constant:
0:33              1 (const int)
0:34      Sequence
0:34        move second child to first child (temp float)
0:34          'cd' (temp float)
0:34          direct index (temp float)
0:34            gl_ClipDistance: direct index for structure (in 1-element array of float)
0:34              direct index (temp block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:34                'gl_in' (in 32-element array of block{in 4-component vector of float gl_Position, in float gl_PointSize, in 1-element array of float gl_ClipDistance})
0:34                Constant:
0:34                  1 (const int)
0:34              Constant:
0:34                2 (const int)
0:34            Constant:
0:34              2 (const int)
0:36      Sequence
0:36        move second child to first child (temp int)
0:36          'pvi' (temp int)
0:36          'gl_PatchVerticesIn' (in int PatchVertices)
0:37      Sequence
0:37        move second child to first child (temp int)
0:37          'pid' (temp int)
0:37          'gl_PrimitiveID' (in int PrimitiveID)
0:38      Sequence
0:38        move second child to first child (temp 3-component vector of float)
0:38          'tc' (temp 3-component vector of float)
0:38          'gl_TessCoord' (in 3-component vector of float TessCoord)
0:39      Sequence
0:39        move second child to first child (temp float)
0:39          'tlo' (temp float)
0:39          direct index (patch temp float TessLevelOuter)
0:39            'gl_TessLevelOuter' (patch in 4-element array of float TessLevelOuter)
0:39            Constant:
0:39              3 (const int)
0:40      Sequence
0:40        move second child to first child (temp float)
0:40          'tli' (temp float)
0:40          direct index (patch temp float TessLevelInner)
0:40            'gl_TessLevelInner' (patch in 2-element array of float TessLevelInner)
0:40            Constant:
0:40              1 (const int)
0:42      move second child to first child (temp 4-component vector of float)
0:42        gl_Position: direct index for structure (gl_Position 4-component vector of float Position)
0:42          'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 3-element array of float ClipDistance gl_ClipDistance})
0:42          Constant:
0:42            0 (const uint)
0:42        'p' (temp 4-component vector of float)
0:43      move second child to first child (temp float)
0:43        gl_PointSize: direct index for structure (gl_PointSize float PointSize)
0:43          'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 3-element array of float ClipDistance gl_ClipDistance})
0:43          Constant:
0:43            1 (const uint)
0:43        'ps' (temp float)
0:44      move second child to first child (temp float)
0:44        direct index (temp float ClipDistance)
0:44          gl_ClipDistance: direct index for structure (out 3-element array of float ClipDistance)
0:44            'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 3-element array of float ClipDistance gl_ClipDistance})
0:44            Constant:
0:44              2 (const uint)
0:44          Constant:
0:44            2 (const int)
0:44        'cd' (temp float)
0:4  Sequence
0:4    move second child to first child (temp 2X2 matrix of float)
0:4      'b' (global 2X2 matrix of float)
0:4      Constant:
0:4        1.000000
0:4        0.000000
0:4        0.000000
0:4        1.000000
0:15  Sequence
0:15    move second child to first child (temp structure{global float a, global int b})
0:15      'e' (global structure{global float a, global int b})
0:15      Constant:
0:15        1.200000
0:15        2 (const int)
0:20  Sequence
0:20    move second child to first child (temp structure{global float a, global int b})
0:20      'e2' (global structure{global float a, global int b})
0:20      Constant:
0:20        1.000000
0:20        3 (const int)
0:42  Sequence
0:42    move second child to first child (temp 5-element array of float)
0:42      'b5' (global 5-element array of float)
0:42      Constant:
0:42        3.400000
0:42        4.200000
0:42        5.000000
0:42        5.200000
0:42        1.100000
0:67  Sequence
0:67    move second child to first child (temp 3-component vector of float)
0:67      'av3' (global 3-component vector of float)
0:67      Construct vec3 (global 3-component vector of float)
0:67        'vc1' (global float)
0:67        'vc2' (global float)
0:67        'vc3' (global float)
0:68  Sequence
0:68    move second child to first child (temp 3-component vector of float)
0:68      'bv3' (global 3-component vector of float)
0:68      Construct vec3 (global 3-component vector of float)
0:68        'vc1' (global float)
0:68        'vc2' (global float)
0:68        'vc3' (global float)
0:70  Function Definition: main( (global void)
0:70    Function Parameters: 
0:72    Sequence
0:72      MemoryBarrier (global void)
0:74      Test condition and select (temp void)
0:74        Condition
0:74        Compare Equal (temp bool)
0:74          Constant:
0:74            1 (const uint)
0:74            2 (const uint)
0:74            3.000000
0:74            4.000000
0:74            0.000000
0:74            0.000000
0:74            0.000000
0:74            4.000000
0:74            0.000000
0:74            5.000000
0:74            6.000000
0:74            0.000000
0:74            0.000000
0:74            0.000000
0:74            6.000000
0:74            0.000000
0:74          'curlybad1' (temp structure{global 2-component vector of uint uv2, global 2-element array of structure{global float f, global 2X3 matrix of float m23} s})
0:74        true case is null
0:76      Test condition and select (temp void)
0:76        Condition
0:76        Constant:
0:76          true (const bool)
0:76        true case is null
0:?   Linker Objects
0:?     'patchIn' (patch in 4-component vector of float)
0:?     'anon@0' (out block{gl_Position 4-component vector of float Position gl_Position, gl_PointSize float PointSize gl_PointSize, out 3-element array of float ClipDistance gl_ClipDistance})
0:?     'patchOut' (patch out 4-component vector of float)
0:?     'badp1' (smooth patch in 4-component vector of float)
0:?     'badp2' (flat patch in 4-component vector of float)
0:?     'badp3' (noperspective patch in 4-component vector of float)
0:?     'badp4' (patch sample in 3-component vector of float)
0:?     'gl_in' (in 32-element array of block{in 1-element array of float gl_ClipDistance})
0:?     'ina' (in 2-component vector of float)
0:?     'inb' (in 32-element array of 2-component vector of float)
0:?     'inc' (in 32-element array of 2-component vector of float)
0:?     'ind' (in 32-element array of 2-component vector of float)
0:?     'bla' (in block{in int f})
0:?     'blb' (in 32-element array of block{in int f})
0:?     'blc' (in 32-element array of block{in int f})
0:?     'bld' (in 32-element array of block{in int f})
0:?     'ivla' (layout(location=23 ) in 32-element array of 4-component vector of float)
0:?     'ivlb' (layout(location=24 ) in 32-element array of 4-component vector of float)
0:?     'ivlc' (layout(location=24 ) in 32-element array of 4-component vector of float)
0:?     'ovla' (layout(location=23 ) out 2-element array of 4-component vector of float)
0:?     'ovlb' (layout(location=24 ) out 2-element array of 4-component vector of float)
0:?     'pinbi' (patch in block{in int a})
0:?     'a' (const 2X2 matrix of float)
0:?       1.000000
0:?       0.000000
0:?       0.000000
0:?       1.000000
0:?     'b' (global 2X2 matrix of float)
0:?     'c' (const 2X2 matrix of float)
0:?       1.000000
0:?       0.000000
0:?       0.000000
0:?       1.000000
0:?     'a2' (global 2-element array of float)
0:?     'b2' (global 2-component vector of float)
0:?     'c2' (global 3X3 matrix of float)
0:?     'd' (global 2X2 matrix of float)
0:?     'e' (global structure{global float a, global int b})
0:?     'e2' (global structure{global float a, global int b})
0:?     'e3' (global structure{global float a, global int b})
0:?     'a3' (global int)
0:?     'b3' (global 2-element array of 4-component vector of float)
0:?     'b4' (global 2-element array of 4-component vector of float)
0:?     'c3' (global 4X2 matrix of float)
0:?     'd2' (global 1-element array of structure{global float s, global float t})
0:?     'b5' (global 5-element array of float)
0:?     'constructed' (const structure{global 2-component vector of uint uv2, global 2-element array of structure{global float f, global 2X3 matrix of float m23} s})
0:?       1 (const uint)
0:?       2 (const uint)
0:?       3.000000
0:?       4.000000
0:?       0.000000
0:?       0.000000
0:?       0.000000
0:?       4.000000
0:?       0.000000
0:?       5.000000
0:?       6.000000
0:?       0.000000
0:?       0.000000
0:?       0.000000
0:?       6.000000
0:?       0.000000
0:?     'curlybad1' (temp structure{global 2-component vector of uint uv2, global 2-element array of structure{global float f, global 2X3 matrix of float m23} s})
0:?     'curlyInit' (const structure{global 2-component vector of uint uv2, global 2-element array of structure{global float f, global 2X3 matrix of float m23} s})
0:?       1 (const uint)
0:?       2 (const uint)
0:?       3.000000
0:?       4.000000
0:?       0.000000
0:?       0.000000
0:?       0.000000
0:?       4.000000
0:?       0.000000
0:?       5.000000
0:?       6.000000
0:?       0.000000
0:?       0.000000
0:?       0.000000
0:?       6.000000
0:?       0.000000
0:?     'vc1' (global float)
0:?     'vc2' (global float)
0:?     'vc3' (global float)
0:?     'av3' (global 3-component vector of float)
0:?     'bv3' (global 3-component vector of float)

