mirror of
https://github.com/KhronosGroup/glslang
synced 2024-09-19 12:19:53 +00:00
Require l-value patch-out indexing to be gl_InvocationID.
Also, generally allow ES variable indexing of in/out blocks.
This commit is contained in:
parent
989df85dcd
commit
1be8063e01
@ -25,9 +25,9 @@ void main()
|
|||||||
int pid = gl_PrimitiveID;
|
int pid = gl_PrimitiveID;
|
||||||
int iid = gl_InvocationID;
|
int iid = gl_InvocationID;
|
||||||
|
|
||||||
gl_out[1].gl_Position = p;
|
gl_out[gl_InvocationID].gl_Position = p;
|
||||||
gl_out[1].gl_PointSize = ps;
|
gl_out[gl_InvocationID].gl_PointSize = ps;
|
||||||
gl_out[1].gl_ClipDistance[1] = cd;
|
gl_out[gl_InvocationID].gl_ClipDistance[1] = cd;
|
||||||
|
|
||||||
gl_TessLevelOuter[3] = 3.2;
|
gl_TessLevelOuter[3] = 3.2;
|
||||||
gl_TessLevelInner[1] = 1.3;
|
gl_TessLevelInner[1] = 1.3;
|
||||||
|
@ -166,7 +166,7 @@ void fooIO()
|
|||||||
{
|
{
|
||||||
vec4 v = inbinst.v + vAnon;
|
vec4 v = inbinst.v + vAnon;
|
||||||
v *= arrayedInst[2].f;
|
v *= arrayedInst[2].f;
|
||||||
v *= arrayedInst[i].f; // ERROR, not constant
|
v *= arrayedInst[i].f;
|
||||||
}
|
}
|
||||||
|
|
||||||
in vec4 gl_FragCoord;
|
in vec4 gl_FragCoord;
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
#extension GL_OES_tessellation_shader : enable
|
#extension GL_OES_tessellation_shader : enable
|
||||||
|
|
||||||
layout(vertices = 4) out;
|
layout(vertices = 4) out;
|
||||||
int outa[gl_out.length()];
|
out int outa[gl_out.length()];
|
||||||
|
|
||||||
layout(quads) in; // ERROR
|
layout(quads) in; // ERROR
|
||||||
layout(ccw) out; // ERROR
|
layout(ccw) out; // ERROR
|
||||||
@ -30,9 +30,9 @@ void main()
|
|||||||
int pid = gl_PrimitiveID;
|
int pid = gl_PrimitiveID;
|
||||||
int iid = gl_InvocationID;
|
int iid = gl_InvocationID;
|
||||||
|
|
||||||
gl_out[1].gl_Position = p;
|
gl_out[gl_InvocationID].gl_Position = p;
|
||||||
gl_out[1].gl_PointSize = ps; // ERROR, need point_size extension
|
gl_out[gl_InvocationID].gl_PointSize = ps; // ERROR, need point_size extension
|
||||||
gl_out[1].gl_ClipDistance[1] = cd; // ERROR, not in ES
|
gl_out[gl_InvocationID].gl_ClipDistance[1] = cd; // ERROR, not in ES
|
||||||
|
|
||||||
gl_TessLevelOuter[3] = 3.2;
|
gl_TessLevelOuter[3] = 3.2;
|
||||||
gl_TessLevelInner[1] = 1.3;
|
gl_TessLevelInner[1] = 1.3;
|
||||||
@ -112,7 +112,7 @@ out float okaySize[4];
|
|||||||
void pointSize2()
|
void pointSize2()
|
||||||
{
|
{
|
||||||
float ps = gl_in[1].gl_PointSize;
|
float ps = gl_in[1].gl_PointSize;
|
||||||
gl_out[1].gl_PointSize = ps;
|
gl_out[gl_InvocationID].gl_PointSize = ps;
|
||||||
}
|
}
|
||||||
|
|
||||||
#extension GL_OES_gpu_shader5 : enable
|
#extension GL_OES_gpu_shader5 : enable
|
||||||
@ -141,3 +141,29 @@ void bb()
|
|||||||
gl_BoundingBoxOES[1] = vec4(1.0);
|
gl_BoundingBoxOES[1] = vec4(1.0);
|
||||||
gl_BoundingBoxOES[2] = vec4(2.0); // ERROR, overflow
|
gl_BoundingBoxOES[2] = vec4(2.0); // ERROR, overflow
|
||||||
}
|
}
|
||||||
|
|
||||||
|
out patch badpatchBName { // ERROR, array size required
|
||||||
|
float f;
|
||||||
|
} badpatchIName[];
|
||||||
|
|
||||||
|
out patch patchBName {
|
||||||
|
float f;
|
||||||
|
} patchIName[4];
|
||||||
|
|
||||||
|
void outputtingOutparam(out int a)
|
||||||
|
{
|
||||||
|
a = 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
void outputting()
|
||||||
|
{
|
||||||
|
outa[gl_InvocationID] = 2;
|
||||||
|
outa[1] = 2; // ERROR, not gl_InvocationID
|
||||||
|
gl_out[0].gl_Position = vec4(1.0); // ERROR, not gl_InvocationID
|
||||||
|
outa[1];
|
||||||
|
gl_out[0];
|
||||||
|
outputtingOutparam(outa[0]); // ERROR, not gl_InvocationID
|
||||||
|
outputtingOutparam(outa[gl_InvocationID]);
|
||||||
|
patchIName[1].f = 3.14;
|
||||||
|
outa[(gl_InvocationID)] = 2;
|
||||||
|
}
|
||||||
|
@ -28,9 +28,9 @@ void main()
|
|||||||
int pid = gl_PrimitiveID;
|
int pid = gl_PrimitiveID;
|
||||||
int iid = gl_InvocationID;
|
int iid = gl_InvocationID;
|
||||||
|
|
||||||
gl_out[1].gl_Position = p;
|
gl_out[gl_InvocationID].gl_Position = p;
|
||||||
gl_out[1].gl_PointSize = ps;
|
gl_out[gl_InvocationID].gl_PointSize = ps;
|
||||||
gl_out[1].gl_ClipDistance[1] = cd;
|
gl_out[gl_InvocationID].gl_ClipDistance[1] = cd;
|
||||||
|
|
||||||
gl_TessLevelOuter[3] = 3.2;
|
gl_TessLevelOuter[3] = 3.2;
|
||||||
gl_TessLevelInner[1] = 1.3;
|
gl_TessLevelInner[1] = 1.3;
|
||||||
|
@ -22,8 +22,8 @@ void main()
|
|||||||
int pid = gl_PrimitiveID;
|
int pid = gl_PrimitiveID;
|
||||||
int iid = gl_InvocationID;
|
int iid = gl_InvocationID;
|
||||||
|
|
||||||
gl_out[1].gl_Position = p;
|
gl_out[gl_InvocationID].gl_Position = p;
|
||||||
gl_out[1].gl_PointSize = ps; // ERROR
|
gl_out[gl_InvocationID].gl_PointSize = ps; // ERROR
|
||||||
}
|
}
|
||||||
|
|
||||||
out float outf; // ERROR, no array
|
out float outf; // ERROR, no array
|
||||||
|
@ -6,9 +6,9 @@ in gl_PerVertex {
|
|||||||
|
|
||||||
out gl_PerVertex {
|
out gl_PerVertex {
|
||||||
float gl_CullDistance[3];
|
float gl_CullDistance[3];
|
||||||
} gl_out[];
|
} gl_out[4];
|
||||||
|
|
||||||
void main()
|
void main()
|
||||||
{
|
{
|
||||||
gl_out[0].gl_CullDistance[2] = gl_in[1].gl_CullDistance[2];
|
gl_out[gl_InvocationID].gl_CullDistance[2] = gl_in[1].gl_CullDistance[2];
|
||||||
}
|
}
|
||||||
|
@ -59,29 +59,26 @@ vertices = 4
|
|||||||
0:26 'gl_InvocationID' (in int InvocationID)
|
0:26 'gl_InvocationID' (in int InvocationID)
|
||||||
0:28 move second child to first child (temp 4-component vector of float)
|
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 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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:28 1 (const int)
|
|
||||||
0:28 Constant:
|
0:28 Constant:
|
||||||
0:28 0 (const int)
|
0:28 0 (const int)
|
||||||
0:28 'p' (temp 4-component vector of float)
|
0:28 'p' (temp 4-component vector of float)
|
||||||
0:29 move second child to first child (temp float)
|
0:29 move second child to first child (temp float)
|
||||||
0:29 gl_PointSize: direct index for structure (out float PointSize)
|
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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:29 1 (const int)
|
|
||||||
0:29 Constant:
|
0:29 Constant:
|
||||||
0:29 1 (const int)
|
0:29 1 (const int)
|
||||||
0:29 'ps' (temp float)
|
0:29 'ps' (temp float)
|
||||||
0:30 move second child to first child (temp float)
|
0:30 move second child to first child (temp float)
|
||||||
0:30 direct index (temp float ClipDistance)
|
0:30 direct index (temp float ClipDistance)
|
||||||
0:30 gl_ClipDistance: direct index for structure (out implicitly-sized array of 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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:30 1 (const int)
|
|
||||||
0:30 Constant:
|
0:30 Constant:
|
||||||
0:30 2 (const int)
|
0:30 2 (const int)
|
||||||
0:30 Constant:
|
0:30 Constant:
|
||||||
@ -295,29 +292,26 @@ ERROR: node is still EOpNull!
|
|||||||
0:29 'gl_InvocationID' (in int InvocationID)
|
0:29 'gl_InvocationID' (in int InvocationID)
|
||||||
0:31 move second child to first child (temp 4-component vector of float)
|
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 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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:31 1 (const int)
|
|
||||||
0:31 Constant:
|
0:31 Constant:
|
||||||
0:31 0 (const int)
|
0:31 0 (const int)
|
||||||
0:31 'p' (temp 4-component vector of float)
|
0:31 'p' (temp 4-component vector of float)
|
||||||
0:32 move second child to first child (temp float)
|
0:32 move second child to first child (temp float)
|
||||||
0:32 gl_PointSize: direct index for structure (out float PointSize)
|
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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:32 1 (const int)
|
|
||||||
0:32 Constant:
|
0:32 Constant:
|
||||||
0:32 1 (const int)
|
0:32 1 (const int)
|
||||||
0:32 'ps' (temp float)
|
0:32 'ps' (temp float)
|
||||||
0:33 move second child to first child (temp float)
|
0:33 move second child to first child (temp float)
|
||||||
0:33 direct index (temp float ClipDistance)
|
0:33 direct index (temp float ClipDistance)
|
||||||
0:33 gl_ClipDistance: direct index for structure (out implicitly-sized array of 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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:33 1 (const int)
|
|
||||||
0:33 Constant:
|
0:33 Constant:
|
||||||
0:33 2 (const int)
|
0:33 2 (const int)
|
||||||
0:33 Constant:
|
0:33 Constant:
|
||||||
@ -666,17 +660,15 @@ ERROR: node is still EOpNull!
|
|||||||
0:23 'gl_InvocationID' (in int InvocationID)
|
0:23 'gl_InvocationID' (in int InvocationID)
|
||||||
0:25 move second child to first child (temp 4-component vector of float)
|
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 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 indirect 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 'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position})
|
||||||
0:25 Constant:
|
0:25 'gl_InvocationID' (in int InvocationID)
|
||||||
0:25 1 (const int)
|
|
||||||
0:25 Constant:
|
0:25 Constant:
|
||||||
0:25 0 (const int)
|
0:25 0 (const int)
|
||||||
0:25 'p' (temp 4-component vector of float)
|
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 indirect 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 'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position})
|
||||||
0:26 Constant:
|
0:26 'gl_InvocationID' (in int InvocationID)
|
||||||
0:26 1 (const int)
|
|
||||||
0:34 Function Definition: foo( (global void)
|
0:34 Function Definition: foo( (global void)
|
||||||
0:34 Function Parameters:
|
0:34 Function Parameters:
|
||||||
0:36 Sequence
|
0:36 Sequence
|
||||||
@ -982,29 +974,26 @@ vertices = 4
|
|||||||
0:26 'gl_InvocationID' (in int InvocationID)
|
0:26 'gl_InvocationID' (in int InvocationID)
|
||||||
0:28 move second child to first child (temp 4-component vector of float)
|
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 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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:28 1 (const int)
|
|
||||||
0:28 Constant:
|
0:28 Constant:
|
||||||
0:28 0 (const int)
|
0:28 0 (const int)
|
||||||
0:28 'p' (temp 4-component vector of float)
|
0:28 'p' (temp 4-component vector of float)
|
||||||
0:29 move second child to first child (temp float)
|
0:29 move second child to first child (temp float)
|
||||||
0:29 gl_PointSize: direct index for structure (out float PointSize)
|
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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:29 1 (const int)
|
|
||||||
0:29 Constant:
|
0:29 Constant:
|
||||||
0:29 1 (const int)
|
0:29 1 (const int)
|
||||||
0:29 'ps' (temp float)
|
0:29 'ps' (temp float)
|
||||||
0:30 move second child to first child (temp float)
|
0:30 move second child to first child (temp float)
|
||||||
0:30 direct index (temp float ClipDistance)
|
0:30 direct index (temp float ClipDistance)
|
||||||
0:30 gl_ClipDistance: direct index for structure (out 1-element array of 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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:30 1 (const int)
|
|
||||||
0:30 Constant:
|
0:30 Constant:
|
||||||
0:30 2 (const int)
|
0:30 2 (const int)
|
||||||
0:30 Constant:
|
0:30 Constant:
|
||||||
@ -1080,29 +1069,26 @@ vertices = 4
|
|||||||
0:29 'gl_InvocationID' (in int InvocationID)
|
0:29 'gl_InvocationID' (in int InvocationID)
|
||||||
0:31 move second child to first child (temp 4-component vector of float)
|
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 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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:31 1 (const int)
|
|
||||||
0:31 Constant:
|
0:31 Constant:
|
||||||
0:31 0 (const int)
|
0:31 0 (const int)
|
||||||
0:31 'p' (temp 4-component vector of float)
|
0:31 'p' (temp 4-component vector of float)
|
||||||
0:32 move second child to first child (temp float)
|
0:32 move second child to first child (temp float)
|
||||||
0:32 gl_PointSize: direct index for structure (out float PointSize)
|
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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:32 1 (const int)
|
|
||||||
0:32 Constant:
|
0:32 Constant:
|
||||||
0:32 1 (const int)
|
0:32 1 (const int)
|
||||||
0:32 'ps' (temp float)
|
0:32 'ps' (temp float)
|
||||||
0:33 move second child to first child (temp float)
|
0:33 move second child to first child (temp float)
|
||||||
0:33 direct index (temp float ClipDistance)
|
0:33 direct index (temp float ClipDistance)
|
||||||
0:33 gl_ClipDistance: direct index for structure (out 1-element array of 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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:33 1 (const int)
|
|
||||||
0:33 Constant:
|
0:33 Constant:
|
||||||
0:33 2 (const int)
|
0:33 2 (const int)
|
||||||
0:33 Constant:
|
0:33 Constant:
|
||||||
@ -1248,17 +1234,15 @@ vertices = 4
|
|||||||
0:23 'gl_InvocationID' (in int InvocationID)
|
0:23 'gl_InvocationID' (in int InvocationID)
|
||||||
0:25 move second child to first child (temp 4-component vector of float)
|
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 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 indirect 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 'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position})
|
||||||
0:25 Constant:
|
0:25 'gl_InvocationID' (in int InvocationID)
|
||||||
0:25 1 (const int)
|
|
||||||
0:25 Constant:
|
0:25 Constant:
|
||||||
0:25 0 (const int)
|
0:25 0 (const int)
|
||||||
0:25 'p' (temp 4-component vector of float)
|
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 indirect 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 'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position})
|
||||||
0:26 Constant:
|
0:26 'gl_InvocationID' (in int InvocationID)
|
||||||
0:26 1 (const int)
|
|
||||||
0:34 Function Definition: foo( (global void)
|
0:34 Function Definition: foo( (global void)
|
||||||
0:34 Function Parameters:
|
0:34 Function Parameters:
|
||||||
0:36 Sequence
|
0:36 Sequence
|
||||||
|
@ -49,7 +49,6 @@ ERROR: 0:148: 'inbname2' : Cannot reuse block name within the same interface: in
|
|||||||
ERROR: 0:153: 'badmember' : nameless block contains a member that already has a name at global scope
|
ERROR: 0:153: 'badmember' : nameless block contains a member that already has a name at global scope
|
||||||
ERROR: 0:157: 'inbname' : redefinition
|
ERROR: 0:157: 'inbname' : redefinition
|
||||||
ERROR: 0:159: 'vAnon' : redefinition
|
ERROR: 0:159: 'vAnon' : redefinition
|
||||||
ERROR: 0:169: 'variable indexing in/out block array' : not supported with this profile: es
|
|
||||||
ERROR: 0:173: 'origin_upper_left' : not supported with this profile: es
|
ERROR: 0:173: 'origin_upper_left' : not supported with this profile: es
|
||||||
ERROR: 0:173: 'pixel_center_integer' : not supported with this profile: es
|
ERROR: 0:173: 'pixel_center_integer' : not supported with this profile: es
|
||||||
ERROR: 0:173: 'redeclaration' : cannot redeclare with different qualification: gl_FragCoord
|
ERROR: 0:173: 'redeclaration' : cannot redeclare with different qualification: gl_FragCoord
|
||||||
@ -130,7 +129,7 @@ ERROR: 0:427: 'blend equation' : can only apply to a standalone qualifier
|
|||||||
ERROR: 0:428: 'blend equation' : can only apply to a standalone qualifier
|
ERROR: 0:428: 'blend equation' : can only apply to a standalone qualifier
|
||||||
ERROR: 0:429: 'blend_support' : unknown blend equation
|
ERROR: 0:429: 'blend_support' : unknown blend equation
|
||||||
ERROR: 0:431: 'fragment-shader array-of-array output' : not supported with this profile: es
|
ERROR: 0:431: 'fragment-shader array-of-array output' : not supported with this profile: es
|
||||||
ERROR: 122 compilation errors. No code generated.
|
ERROR: 121 compilation errors. No code generated.
|
||||||
|
|
||||||
|
|
||||||
Shader version: 310
|
Shader version: 310
|
||||||
|
@ -41,7 +41,11 @@ ERROR: 0:133: 'gl_BoundingBoxOES' : required extension not requested: Possible e
|
|||||||
GL_EXT_primitive_bounding_box
|
GL_EXT_primitive_bounding_box
|
||||||
GL_OES_primitive_bounding_box
|
GL_OES_primitive_bounding_box
|
||||||
ERROR: 0:142: '[' : array index out of range '2'
|
ERROR: 0:142: '[' : array index out of range '2'
|
||||||
ERROR: 33 compilation errors. No code generated.
|
ERROR: 0:145: '' : array size required
|
||||||
|
ERROR: 0:161: '[]' : tessellation-control per-vertex output l-value must be indexed with gl_InvocationID
|
||||||
|
ERROR: 0:162: '[]' : tessellation-control per-vertex output l-value must be indexed with gl_InvocationID
|
||||||
|
ERROR: 0:165: '[]' : tessellation-control per-vertex output l-value must be indexed with gl_InvocationID
|
||||||
|
ERROR: 37 compilation errors. No code generated.
|
||||||
|
|
||||||
|
|
||||||
Shader version: 310
|
Shader version: 310
|
||||||
@ -101,19 +105,17 @@ ERROR: node is still EOpNull!
|
|||||||
0:31 'gl_InvocationID' (in highp int InvocationID)
|
0:31 'gl_InvocationID' (in highp int InvocationID)
|
||||||
0:33 move second child to first child (temp highp 4-component vector of float)
|
0:33 move second child to first child (temp highp 4-component vector of float)
|
||||||
0:33 gl_Position: direct index for structure (out highp 4-component vector of float Position)
|
0:33 gl_Position: direct index for structure (out highp 4-component vector of float Position)
|
||||||
0:33 direct index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
0:33 indirect index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
0:33 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
0:33 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
0:33 Constant:
|
0:33 'gl_InvocationID' (in highp int InvocationID)
|
||||||
0:33 1 (const int)
|
|
||||||
0:33 Constant:
|
0:33 Constant:
|
||||||
0:33 0 (const int)
|
0:33 0 (const int)
|
||||||
0:33 'p' (temp highp 4-component vector of float)
|
0:33 'p' (temp highp 4-component vector of float)
|
||||||
0:34 move second child to first child (temp highp float)
|
0:34 move second child to first child (temp highp float)
|
||||||
0:34 gl_PointSize: direct index for structure (out highp float PointSize)
|
0:34 gl_PointSize: direct index for structure (out highp float PointSize)
|
||||||
0:34 direct index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
0:34 indirect index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
0:34 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
0:34 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
0:34 Constant:
|
0:34 'gl_InvocationID' (in highp int InvocationID)
|
||||||
0:34 1 (const int)
|
|
||||||
0:34 Constant:
|
0:34 Constant:
|
||||||
0:34 1 (const int)
|
0:34 1 (const int)
|
||||||
0:34 'ps' (temp highp float)
|
0:34 'ps' (temp highp float)
|
||||||
@ -215,10 +217,9 @@ ERROR: node is still EOpNull!
|
|||||||
0:114 1 (const int)
|
0:114 1 (const int)
|
||||||
0:115 move second child to first child (temp highp float)
|
0:115 move second child to first child (temp highp float)
|
||||||
0:115 gl_PointSize: direct index for structure (out highp float PointSize)
|
0:115 gl_PointSize: direct index for structure (out highp float PointSize)
|
||||||
0:115 direct index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
0:115 indirect index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
0:115 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
0:115 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
0:115 Constant:
|
0:115 'gl_InvocationID' (in highp int InvocationID)
|
||||||
0:115 1 (const int)
|
|
||||||
0:115 Constant:
|
0:115 Constant:
|
||||||
0:115 1 (const int)
|
0:115 1 (const int)
|
||||||
0:115 'ps' (temp highp float)
|
0:115 'ps' (temp highp float)
|
||||||
@ -277,9 +278,79 @@ ERROR: node is still EOpNull!
|
|||||||
0:142 2.000000
|
0:142 2.000000
|
||||||
0:142 2.000000
|
0:142 2.000000
|
||||||
0:142 2.000000
|
0:142 2.000000
|
||||||
|
0:153 Function Definition: outputtingOutparam(i1; (global void)
|
||||||
|
0:153 Function Parameters:
|
||||||
|
0:153 'a' (out highp int)
|
||||||
|
0:155 Sequence
|
||||||
|
0:155 move second child to first child (temp highp int)
|
||||||
|
0:155 'a' (out highp int)
|
||||||
|
0:155 Constant:
|
||||||
|
0:155 2 (const int)
|
||||||
|
0:158 Function Definition: outputting( (global void)
|
||||||
|
0:158 Function Parameters:
|
||||||
|
0:160 Sequence
|
||||||
|
0:160 move second child to first child (temp highp int)
|
||||||
|
0:160 indirect index (temp highp int)
|
||||||
|
0:160 'outa' (out 4-element array of highp int)
|
||||||
|
0:160 'gl_InvocationID' (in highp int InvocationID)
|
||||||
|
0:160 Constant:
|
||||||
|
0:160 2 (const int)
|
||||||
|
0:161 move second child to first child (temp highp int)
|
||||||
|
0:161 direct index (temp highp int)
|
||||||
|
0:161 'outa' (out 4-element array of highp int)
|
||||||
|
0:161 Constant:
|
||||||
|
0:161 1 (const int)
|
||||||
|
0:161 Constant:
|
||||||
|
0:161 2 (const int)
|
||||||
|
0:162 move second child to first child (temp highp 4-component vector of float)
|
||||||
|
0:162 gl_Position: direct index for structure (out highp 4-component vector of float Position)
|
||||||
|
0:162 direct index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
|
0:162 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
|
0:162 Constant:
|
||||||
|
0:162 0 (const int)
|
||||||
|
0:162 Constant:
|
||||||
|
0:162 0 (const int)
|
||||||
|
0:162 Constant:
|
||||||
|
0:162 1.000000
|
||||||
|
0:162 1.000000
|
||||||
|
0:162 1.000000
|
||||||
|
0:162 1.000000
|
||||||
|
0:163 direct index (temp highp int)
|
||||||
|
0:163 'outa' (out 4-element array of highp int)
|
||||||
|
0:163 Constant:
|
||||||
|
0:163 1 (const int)
|
||||||
|
0:164 direct index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
|
0:164 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
|
0:164 Constant:
|
||||||
|
0:164 0 (const int)
|
||||||
|
0:165 Function Call: outputtingOutparam(i1; (global void)
|
||||||
|
0:165 direct index (temp highp int)
|
||||||
|
0:165 'outa' (out 4-element array of highp int)
|
||||||
|
0:165 Constant:
|
||||||
|
0:165 0 (const int)
|
||||||
|
0:166 Function Call: outputtingOutparam(i1; (global void)
|
||||||
|
0:166 indirect index (temp highp int)
|
||||||
|
0:166 'outa' (out 4-element array of highp int)
|
||||||
|
0:166 'gl_InvocationID' (in highp int InvocationID)
|
||||||
|
0:167 move second child to first child (temp highp float)
|
||||||
|
0:167 f: direct index for structure (out highp float)
|
||||||
|
0:167 direct index (patch temp block{out highp float f})
|
||||||
|
0:167 'patchIName' (patch out 4-element array of block{out highp float f})
|
||||||
|
0:167 Constant:
|
||||||
|
0:167 1 (const int)
|
||||||
|
0:167 Constant:
|
||||||
|
0:167 0 (const int)
|
||||||
|
0:167 Constant:
|
||||||
|
0:167 3.140000
|
||||||
|
0:168 move second child to first child (temp highp int)
|
||||||
|
0:168 indirect index (temp highp int)
|
||||||
|
0:168 'outa' (out 4-element array of highp int)
|
||||||
|
0:168 'gl_InvocationID' (in highp int InvocationID)
|
||||||
|
0:168 Constant:
|
||||||
|
0:168 2 (const int)
|
||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
0:? 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
0:? 'outa' (global 4-element array of highp int)
|
0:? 'outa' (out 4-element array of highp int)
|
||||||
0:? 'patchIn' (patch in highp 4-component vector of float)
|
0:? 'patchIn' (patch in highp 4-component vector of float)
|
||||||
0:? 'patchOut' (patch out highp 4-component vector of float)
|
0:? 'patchOut' (patch out highp 4-component vector of float)
|
||||||
0:? 'ina' (in highp 2-component vector of float)
|
0:? 'ina' (in highp 2-component vector of float)
|
||||||
@ -301,6 +372,8 @@ ERROR: node is still EOpNull!
|
|||||||
0:? 'misSized' (out 5-element array of highp float)
|
0:? 'misSized' (out 5-element array of highp float)
|
||||||
0:? 'okaySize' (out 4-element array of highp float)
|
0:? 'okaySize' (out 4-element array of highp float)
|
||||||
0:? 'pv3' (temp highp 3-component vector of float)
|
0:? 'pv3' (temp highp 3-component vector of float)
|
||||||
|
0:? 'badpatchIName' (patch out implicitly-sized array of block{out highp float f})
|
||||||
|
0:? 'patchIName' (patch out 4-element array of block{out highp float f})
|
||||||
|
|
||||||
|
|
||||||
Linked tessellation control stage:
|
Linked tessellation control stage:
|
||||||
@ -363,19 +436,17 @@ ERROR: node is still EOpNull!
|
|||||||
0:31 'gl_InvocationID' (in highp int InvocationID)
|
0:31 'gl_InvocationID' (in highp int InvocationID)
|
||||||
0:33 move second child to first child (temp highp 4-component vector of float)
|
0:33 move second child to first child (temp highp 4-component vector of float)
|
||||||
0:33 gl_Position: direct index for structure (out highp 4-component vector of float Position)
|
0:33 gl_Position: direct index for structure (out highp 4-component vector of float Position)
|
||||||
0:33 direct index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
0:33 indirect index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
0:33 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
0:33 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
0:33 Constant:
|
0:33 'gl_InvocationID' (in highp int InvocationID)
|
||||||
0:33 1 (const int)
|
|
||||||
0:33 Constant:
|
0:33 Constant:
|
||||||
0:33 0 (const int)
|
0:33 0 (const int)
|
||||||
0:33 'p' (temp highp 4-component vector of float)
|
0:33 'p' (temp highp 4-component vector of float)
|
||||||
0:34 move second child to first child (temp highp float)
|
0:34 move second child to first child (temp highp float)
|
||||||
0:34 gl_PointSize: direct index for structure (out highp float PointSize)
|
0:34 gl_PointSize: direct index for structure (out highp float PointSize)
|
||||||
0:34 direct index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
0:34 indirect index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
0:34 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
0:34 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
0:34 Constant:
|
0:34 'gl_InvocationID' (in highp int InvocationID)
|
||||||
0:34 1 (const int)
|
|
||||||
0:34 Constant:
|
0:34 Constant:
|
||||||
0:34 1 (const int)
|
0:34 1 (const int)
|
||||||
0:34 'ps' (temp highp float)
|
0:34 'ps' (temp highp float)
|
||||||
@ -477,10 +548,9 @@ ERROR: node is still EOpNull!
|
|||||||
0:114 1 (const int)
|
0:114 1 (const int)
|
||||||
0:115 move second child to first child (temp highp float)
|
0:115 move second child to first child (temp highp float)
|
||||||
0:115 gl_PointSize: direct index for structure (out highp float PointSize)
|
0:115 gl_PointSize: direct index for structure (out highp float PointSize)
|
||||||
0:115 direct index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
0:115 indirect index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
0:115 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
0:115 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
0:115 Constant:
|
0:115 'gl_InvocationID' (in highp int InvocationID)
|
||||||
0:115 1 (const int)
|
|
||||||
0:115 Constant:
|
0:115 Constant:
|
||||||
0:115 1 (const int)
|
0:115 1 (const int)
|
||||||
0:115 'ps' (temp highp float)
|
0:115 'ps' (temp highp float)
|
||||||
@ -539,9 +609,79 @@ ERROR: node is still EOpNull!
|
|||||||
0:142 2.000000
|
0:142 2.000000
|
||||||
0:142 2.000000
|
0:142 2.000000
|
||||||
0:142 2.000000
|
0:142 2.000000
|
||||||
|
0:153 Function Definition: outputtingOutparam(i1; (global void)
|
||||||
|
0:153 Function Parameters:
|
||||||
|
0:153 'a' (out highp int)
|
||||||
|
0:155 Sequence
|
||||||
|
0:155 move second child to first child (temp highp int)
|
||||||
|
0:155 'a' (out highp int)
|
||||||
|
0:155 Constant:
|
||||||
|
0:155 2 (const int)
|
||||||
|
0:158 Function Definition: outputting( (global void)
|
||||||
|
0:158 Function Parameters:
|
||||||
|
0:160 Sequence
|
||||||
|
0:160 move second child to first child (temp highp int)
|
||||||
|
0:160 indirect index (temp highp int)
|
||||||
|
0:160 'outa' (out 4-element array of highp int)
|
||||||
|
0:160 'gl_InvocationID' (in highp int InvocationID)
|
||||||
|
0:160 Constant:
|
||||||
|
0:160 2 (const int)
|
||||||
|
0:161 move second child to first child (temp highp int)
|
||||||
|
0:161 direct index (temp highp int)
|
||||||
|
0:161 'outa' (out 4-element array of highp int)
|
||||||
|
0:161 Constant:
|
||||||
|
0:161 1 (const int)
|
||||||
|
0:161 Constant:
|
||||||
|
0:161 2 (const int)
|
||||||
|
0:162 move second child to first child (temp highp 4-component vector of float)
|
||||||
|
0:162 gl_Position: direct index for structure (out highp 4-component vector of float Position)
|
||||||
|
0:162 direct index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
|
0:162 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
|
0:162 Constant:
|
||||||
|
0:162 0 (const int)
|
||||||
|
0:162 Constant:
|
||||||
|
0:162 0 (const int)
|
||||||
|
0:162 Constant:
|
||||||
|
0:162 1.000000
|
||||||
|
0:162 1.000000
|
||||||
|
0:162 1.000000
|
||||||
|
0:162 1.000000
|
||||||
|
0:163 direct index (temp highp int)
|
||||||
|
0:163 'outa' (out 4-element array of highp int)
|
||||||
|
0:163 Constant:
|
||||||
|
0:163 1 (const int)
|
||||||
|
0:164 direct index (temp block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
|
0:164 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
|
0:164 Constant:
|
||||||
|
0:164 0 (const int)
|
||||||
|
0:165 Function Call: outputtingOutparam(i1; (global void)
|
||||||
|
0:165 direct index (temp highp int)
|
||||||
|
0:165 'outa' (out 4-element array of highp int)
|
||||||
|
0:165 Constant:
|
||||||
|
0:165 0 (const int)
|
||||||
|
0:166 Function Call: outputtingOutparam(i1; (global void)
|
||||||
|
0:166 indirect index (temp highp int)
|
||||||
|
0:166 'outa' (out 4-element array of highp int)
|
||||||
|
0:166 'gl_InvocationID' (in highp int InvocationID)
|
||||||
|
0:167 move second child to first child (temp highp float)
|
||||||
|
0:167 f: direct index for structure (out highp float)
|
||||||
|
0:167 direct index (patch temp block{out highp float f})
|
||||||
|
0:167 'patchIName' (patch out 4-element array of block{out highp float f})
|
||||||
|
0:167 Constant:
|
||||||
|
0:167 1 (const int)
|
||||||
|
0:167 Constant:
|
||||||
|
0:167 0 (const int)
|
||||||
|
0:167 Constant:
|
||||||
|
0:167 3.140000
|
||||||
|
0:168 move second child to first child (temp highp int)
|
||||||
|
0:168 indirect index (temp highp int)
|
||||||
|
0:168 'outa' (out 4-element array of highp int)
|
||||||
|
0:168 'gl_InvocationID' (in highp int InvocationID)
|
||||||
|
0:168 Constant:
|
||||||
|
0:168 2 (const int)
|
||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
0:? 'gl_out' (out 4-element array of block{out highp 4-component vector of float Position gl_Position, out highp float PointSize gl_PointSize})
|
||||||
0:? 'outa' (global 4-element array of highp int)
|
0:? 'outa' (out 4-element array of highp int)
|
||||||
0:? 'patchIn' (patch in highp 4-component vector of float)
|
0:? 'patchIn' (patch in highp 4-component vector of float)
|
||||||
0:? 'patchOut' (patch out highp 4-component vector of float)
|
0:? 'patchOut' (patch out highp 4-component vector of float)
|
||||||
0:? 'ina' (in highp 2-component vector of float)
|
0:? 'ina' (in highp 2-component vector of float)
|
||||||
@ -563,4 +703,6 @@ ERROR: node is still EOpNull!
|
|||||||
0:? 'misSized' (out 5-element array of highp float)
|
0:? 'misSized' (out 5-element array of highp float)
|
||||||
0:? 'okaySize' (out 4-element array of highp float)
|
0:? 'okaySize' (out 4-element array of highp float)
|
||||||
0:? 'pv3' (temp highp 3-component vector of float)
|
0:? 'pv3' (temp highp 3-component vector of float)
|
||||||
|
0:? 'badpatchIName' (patch out 1-element array of block{out highp float f})
|
||||||
|
0:? 'patchIName' (patch out 4-element array of block{out highp float f})
|
||||||
|
|
||||||
|
@ -81,29 +81,26 @@ ERROR: node is still EOpNull!
|
|||||||
0:29 'gl_InvocationID' (in int InvocationID)
|
0:29 'gl_InvocationID' (in int InvocationID)
|
||||||
0:31 move second child to first child (temp 4-component vector of float)
|
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 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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:31 1 (const int)
|
|
||||||
0:31 Constant:
|
0:31 Constant:
|
||||||
0:31 0 (const int)
|
0:31 0 (const int)
|
||||||
0:31 'p' (temp 4-component vector of float)
|
0:31 'p' (temp 4-component vector of float)
|
||||||
0:32 move second child to first child (temp float)
|
0:32 move second child to first child (temp float)
|
||||||
0:32 gl_PointSize: direct index for structure (out float PointSize)
|
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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:32 1 (const int)
|
|
||||||
0:32 Constant:
|
0:32 Constant:
|
||||||
0:32 1 (const int)
|
0:32 1 (const int)
|
||||||
0:32 'ps' (temp float)
|
0:32 'ps' (temp float)
|
||||||
0:33 move second child to first child (temp float)
|
0:33 move second child to first child (temp float)
|
||||||
0:33 direct index (temp float ClipDistance)
|
0:33 direct index (temp float ClipDistance)
|
||||||
0:33 gl_ClipDistance: direct index for structure (out implicitly-sized array of 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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:33 1 (const int)
|
|
||||||
0:33 Constant:
|
0:33 Constant:
|
||||||
0:33 2 (const int)
|
0:33 2 (const int)
|
||||||
0:33 Constant:
|
0:33 Constant:
|
||||||
@ -279,29 +276,26 @@ ERROR: node is still EOpNull!
|
|||||||
0:29 'gl_InvocationID' (in int InvocationID)
|
0:29 'gl_InvocationID' (in int InvocationID)
|
||||||
0:31 move second child to first child (temp 4-component vector of float)
|
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 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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:31 1 (const int)
|
|
||||||
0:31 Constant:
|
0:31 Constant:
|
||||||
0:31 0 (const int)
|
0:31 0 (const int)
|
||||||
0:31 'p' (temp 4-component vector of float)
|
0:31 'p' (temp 4-component vector of float)
|
||||||
0:32 move second child to first child (temp float)
|
0:32 move second child to first child (temp float)
|
||||||
0:32 gl_PointSize: direct index for structure (out float PointSize)
|
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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:32 1 (const int)
|
|
||||||
0:32 Constant:
|
0:32 Constant:
|
||||||
0:32 1 (const int)
|
0:32 1 (const int)
|
||||||
0:32 'ps' (temp float)
|
0:32 'ps' (temp float)
|
||||||
0:33 move second child to first child (temp float)
|
0:33 move second child to first child (temp float)
|
||||||
0:33 direct index (temp float ClipDistance)
|
0:33 direct index (temp float ClipDistance)
|
||||||
0:33 gl_ClipDistance: direct index for structure (out 1-element array of 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 indirect 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 '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 'gl_InvocationID' (in int InvocationID)
|
||||||
0:33 1 (const int)
|
|
||||||
0:33 Constant:
|
0:33 Constant:
|
||||||
0:33 2 (const int)
|
0:33 2 (const int)
|
||||||
0:33 Constant:
|
0:33 Constant:
|
||||||
|
@ -63,17 +63,15 @@ ERROR: node is still EOpNull!
|
|||||||
0:23 'gl_InvocationID' (in int InvocationID)
|
0:23 'gl_InvocationID' (in int InvocationID)
|
||||||
0:25 move second child to first child (temp 4-component vector of float)
|
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 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 indirect 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 'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position})
|
||||||
0:25 Constant:
|
0:25 'gl_InvocationID' (in int InvocationID)
|
||||||
0:25 1 (const int)
|
|
||||||
0:25 Constant:
|
0:25 Constant:
|
||||||
0:25 0 (const int)
|
0:25 0 (const int)
|
||||||
0:25 'p' (temp 4-component vector of float)
|
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 indirect 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 'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position})
|
||||||
0:26 Constant:
|
0:26 'gl_InvocationID' (in int InvocationID)
|
||||||
0:26 1 (const int)
|
|
||||||
0:34 Function Definition: foo( (global void)
|
0:34 Function Definition: foo( (global void)
|
||||||
0:34 Function Parameters:
|
0:34 Function Parameters:
|
||||||
0:36 Sequence
|
0:36 Sequence
|
||||||
@ -176,17 +174,15 @@ ERROR: node is still EOpNull!
|
|||||||
0:23 'gl_InvocationID' (in int InvocationID)
|
0:23 'gl_InvocationID' (in int InvocationID)
|
||||||
0:25 move second child to first child (temp 4-component vector of float)
|
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 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 indirect 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 'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position})
|
||||||
0:25 Constant:
|
0:25 'gl_InvocationID' (in int InvocationID)
|
||||||
0:25 1 (const int)
|
|
||||||
0:25 Constant:
|
0:25 Constant:
|
||||||
0:25 0 (const int)
|
0:25 0 (const int)
|
||||||
0:25 'p' (temp 4-component vector of float)
|
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 indirect 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 'gl_out' (out 3-element array of block{out 4-component vector of float Position gl_Position})
|
||||||
0:26 Constant:
|
0:26 'gl_InvocationID' (in int InvocationID)
|
||||||
0:26 1 (const int)
|
|
||||||
0:34 Function Definition: foo( (global void)
|
0:34 Function Definition: foo( (global void)
|
||||||
0:34 Function Parameters:
|
0:34 Function Parameters:
|
||||||
0:36 Sequence
|
0:36 Sequence
|
||||||
|
@ -10,10 +10,9 @@ vertices = 0
|
|||||||
0:13 move second child to first child (temp float)
|
0:13 move second child to first child (temp float)
|
||||||
0:13 direct index (temp float CullDistance)
|
0:13 direct index (temp float CullDistance)
|
||||||
0:13 gl_CullDistance: direct index for structure (out implicitly-sized array of float CullDistance)
|
0:13 gl_CullDistance: direct index for structure (out implicitly-sized array of float CullDistance)
|
||||||
0:13 direct index (temp block{out implicitly-sized array of float CullDistance gl_CullDistance})
|
0:13 indirect index (temp block{out implicitly-sized array of float CullDistance gl_CullDistance})
|
||||||
0:13 'gl_out' (out implicitly-sized array of block{out implicitly-sized array of float CullDistance gl_CullDistance})
|
0:13 'gl_out' (out 4-element array of block{out implicitly-sized array of float CullDistance gl_CullDistance})
|
||||||
0:13 Constant:
|
0:13 'gl_InvocationID' (in int InvocationID)
|
||||||
0:13 0 (const int)
|
|
||||||
0:13 Constant:
|
0:13 Constant:
|
||||||
0:13 0 (const int)
|
0:13 0 (const int)
|
||||||
0:13 Constant:
|
0:13 Constant:
|
||||||
@ -30,7 +29,7 @@ vertices = 0
|
|||||||
0:13 2 (const int)
|
0:13 2 (const int)
|
||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'gl_in' (in 32-element array of block{in implicitly-sized array of float CullDistance gl_CullDistance})
|
0:? 'gl_in' (in 32-element array of block{in implicitly-sized array of float CullDistance gl_CullDistance})
|
||||||
0:? 'gl_out' (out implicitly-sized array of block{out implicitly-sized array of float CullDistance gl_CullDistance})
|
0:? 'gl_out' (out 4-element array of block{out implicitly-sized array of float CullDistance gl_CullDistance})
|
||||||
|
|
||||||
|
|
||||||
Linked tessellation control stage:
|
Linked tessellation control stage:
|
||||||
@ -46,10 +45,9 @@ vertices = 0
|
|||||||
0:13 move second child to first child (temp float)
|
0:13 move second child to first child (temp float)
|
||||||
0:13 direct index (temp float CullDistance)
|
0:13 direct index (temp float CullDistance)
|
||||||
0:13 gl_CullDistance: direct index for structure (out 1-element array of float CullDistance)
|
0:13 gl_CullDistance: direct index for structure (out 1-element array of float CullDistance)
|
||||||
0:13 direct index (temp block{out 1-element array of float CullDistance gl_CullDistance})
|
0:13 indirect index (temp block{out 1-element array of float CullDistance gl_CullDistance})
|
||||||
0:13 'gl_out' (out 1-element array of block{out 1-element array of float CullDistance gl_CullDistance})
|
0:13 'gl_out' (out 4-element array of block{out 1-element array of float CullDistance gl_CullDistance})
|
||||||
0:13 Constant:
|
0:13 'gl_InvocationID' (in int InvocationID)
|
||||||
0:13 0 (const int)
|
|
||||||
0:13 Constant:
|
0:13 Constant:
|
||||||
0:13 0 (const int)
|
0:13 0 (const int)
|
||||||
0:13 Constant:
|
0:13 Constant:
|
||||||
@ -66,5 +64,5 @@ vertices = 0
|
|||||||
0:13 2 (const int)
|
0:13 2 (const int)
|
||||||
0:? Linker Objects
|
0:? Linker Objects
|
||||||
0:? 'gl_in' (in 32-element array of block{in 1-element array of float CullDistance gl_CullDistance})
|
0:? 'gl_in' (in 32-element array of block{in 1-element array of float CullDistance gl_CullDistance})
|
||||||
0:? 'gl_out' (out 1-element array of block{out 1-element array of float CullDistance gl_CullDistance})
|
0:? 'gl_out' (out 4-element array of block{out 1-element array of float CullDistance gl_CullDistance})
|
||||||
|
|
||||||
|
@ -7,12 +7,12 @@ Linked tessellation control stage:
|
|||||||
|
|
||||||
// Module Version 10000
|
// Module Version 10000
|
||||||
// Generated by (magic number): 80001
|
// Generated by (magic number): 80001
|
||||||
// Id's are bound by 90
|
// Id's are bound by 93
|
||||||
|
|
||||||
Capability Tessellation
|
Capability Tessellation
|
||||||
1: ExtInstImport "GLSL.std.450"
|
1: ExtInstImport "GLSL.std.450"
|
||||||
MemoryModel Logical GLSL450
|
MemoryModel Logical GLSL450
|
||||||
EntryPoint TessellationControl 4 "main" 52 76 80 81 84 85 88 89
|
EntryPoint TessellationControl 4 "main" 52 79 83 84 87 88 91 92
|
||||||
ExecutionMode 4 OutputVertices 4
|
ExecutionMode 4 OutputVertices 4
|
||||||
Source GLSL 400
|
Source GLSL 400
|
||||||
SourceExtension "GL_ARB_separate_shader_objects"
|
SourceExtension "GL_ARB_separate_shader_objects"
|
||||||
@ -37,16 +37,16 @@ Linked tessellation control stage:
|
|||||||
MemberName 48(gl_PerVertex) 1 "gl_PointSize"
|
MemberName 48(gl_PerVertex) 1 "gl_PointSize"
|
||||||
MemberName 48(gl_PerVertex) 2 "gl_ClipDistance"
|
MemberName 48(gl_PerVertex) 2 "gl_ClipDistance"
|
||||||
Name 52 "gl_out"
|
Name 52 "gl_out"
|
||||||
Name 63 "gl_TessLevelOuter"
|
Name 66 "gl_TessLevelOuter"
|
||||||
Name 70 "gl_TessLevelInner"
|
Name 73 "gl_TessLevelInner"
|
||||||
Name 75 "outa"
|
Name 78 "outa"
|
||||||
Name 76 "patchOut"
|
Name 79 "patchOut"
|
||||||
Name 80 "inb"
|
Name 83 "inb"
|
||||||
Name 81 "ind"
|
Name 84 "ind"
|
||||||
Name 84 "ivla"
|
Name 87 "ivla"
|
||||||
Name 85 "ivlb"
|
Name 88 "ivlb"
|
||||||
Name 88 "ovla"
|
Name 91 "ovla"
|
||||||
Name 89 "ovlb"
|
Name 92 "ovlb"
|
||||||
MemberDecorate 19(gl_PerVertex) 0 BuiltIn Position
|
MemberDecorate 19(gl_PerVertex) 0 BuiltIn Position
|
||||||
MemberDecorate 19(gl_PerVertex) 1 BuiltIn PointSize
|
MemberDecorate 19(gl_PerVertex) 1 BuiltIn PointSize
|
||||||
MemberDecorate 19(gl_PerVertex) 2 BuiltIn ClipDistance
|
MemberDecorate 19(gl_PerVertex) 2 BuiltIn ClipDistance
|
||||||
@ -58,15 +58,15 @@ Linked tessellation control stage:
|
|||||||
MemberDecorate 48(gl_PerVertex) 1 BuiltIn PointSize
|
MemberDecorate 48(gl_PerVertex) 1 BuiltIn PointSize
|
||||||
MemberDecorate 48(gl_PerVertex) 2 BuiltIn ClipDistance
|
MemberDecorate 48(gl_PerVertex) 2 BuiltIn ClipDistance
|
||||||
Decorate 48(gl_PerVertex) Block
|
Decorate 48(gl_PerVertex) Block
|
||||||
Decorate 63(gl_TessLevelOuter) Patch
|
Decorate 66(gl_TessLevelOuter) Patch
|
||||||
Decorate 63(gl_TessLevelOuter) BuiltIn TessLevelOuter
|
Decorate 66(gl_TessLevelOuter) BuiltIn TessLevelOuter
|
||||||
Decorate 70(gl_TessLevelInner) Patch
|
Decorate 73(gl_TessLevelInner) Patch
|
||||||
Decorate 70(gl_TessLevelInner) BuiltIn TessLevelInner
|
Decorate 73(gl_TessLevelInner) BuiltIn TessLevelInner
|
||||||
Decorate 76(patchOut) Patch
|
Decorate 79(patchOut) Patch
|
||||||
Decorate 84(ivla) Location 3
|
Decorate 87(ivla) Location 3
|
||||||
Decorate 85(ivlb) Location 4
|
Decorate 88(ivlb) Location 4
|
||||||
Decorate 88(ovla) Location 3
|
Decorate 91(ovla) Location 3
|
||||||
Decorate 89(ovlb) Location 4
|
Decorate 92(ovlb) Location 4
|
||||||
2: TypeVoid
|
2: TypeVoid
|
||||||
3: TypeFunction 2
|
3: TypeFunction 2
|
||||||
6: TypeInt 32 0
|
6: TypeInt 32 0
|
||||||
@ -100,35 +100,35 @@ Linked tessellation control stage:
|
|||||||
50: TypeArray 48(gl_PerVertex) 49
|
50: TypeArray 48(gl_PerVertex) 49
|
||||||
51: TypePointer Output 50
|
51: TypePointer Output 50
|
||||||
52(gl_out): 51(ptr) Variable Output
|
52(gl_out): 51(ptr) Variable Output
|
||||||
54: TypePointer Output 15(fvec4)
|
55: TypePointer Output 15(fvec4)
|
||||||
57: TypePointer Output 14(float)
|
59: TypePointer Output 14(float)
|
||||||
61: TypeArray 14(float) 49
|
64: TypeArray 14(float) 49
|
||||||
62: TypePointer Output 61
|
65: TypePointer Output 64
|
||||||
63(gl_TessLevelOuter): 62(ptr) Variable Output
|
66(gl_TessLevelOuter): 65(ptr) Variable Output
|
||||||
64: 10(int) Constant 3
|
67: 10(int) Constant 3
|
||||||
65: 14(float) Constant 1078774989
|
68: 14(float) Constant 1078774989
|
||||||
67: 6(int) Constant 2
|
70: 6(int) Constant 2
|
||||||
68: TypeArray 14(float) 67
|
71: TypeArray 14(float) 70
|
||||||
69: TypePointer Output 68
|
72: TypePointer Output 71
|
||||||
70(gl_TessLevelInner): 69(ptr) Variable Output
|
73(gl_TessLevelInner): 72(ptr) Variable Output
|
||||||
71: 14(float) Constant 1067869798
|
74: 14(float) Constant 1067869798
|
||||||
73: TypeArray 10(int) 49
|
76: TypeArray 10(int) 49
|
||||||
74: TypePointer Private 73
|
77: TypePointer Private 76
|
||||||
75(outa): 74(ptr) Variable Private
|
78(outa): 77(ptr) Variable Private
|
||||||
76(patchOut): 54(ptr) Variable Output
|
79(patchOut): 55(ptr) Variable Output
|
||||||
77: TypeVector 14(float) 2
|
80: TypeVector 14(float) 2
|
||||||
78: TypeArray 77(fvec2) 20
|
81: TypeArray 80(fvec2) 20
|
||||||
79: TypePointer Input 78
|
82: TypePointer Input 81
|
||||||
80(inb): 79(ptr) Variable Input
|
83(inb): 82(ptr) Variable Input
|
||||||
81(ind): 79(ptr) Variable Input
|
84(ind): 82(ptr) Variable Input
|
||||||
82: TypeArray 15(fvec4) 20
|
85: TypeArray 15(fvec4) 20
|
||||||
83: TypePointer Input 82
|
86: TypePointer Input 85
|
||||||
84(ivla): 83(ptr) Variable Input
|
87(ivla): 86(ptr) Variable Input
|
||||||
85(ivlb): 83(ptr) Variable Input
|
88(ivlb): 86(ptr) Variable Input
|
||||||
86: TypeArray 15(fvec4) 49
|
89: TypeArray 15(fvec4) 49
|
||||||
87: TypePointer Output 86
|
90: TypePointer Output 89
|
||||||
88(ovla): 87(ptr) Variable Output
|
91(ovla): 90(ptr) Variable Output
|
||||||
89(ovlb): 87(ptr) Variable Output
|
92(ovlb): 90(ptr) Variable Output
|
||||||
4(main): 2 Function None 3
|
4(main): 2 Function None 3
|
||||||
5: Label
|
5: Label
|
||||||
12(a): 11(ptr) Variable Function
|
12(a): 11(ptr) Variable Function
|
||||||
@ -156,18 +156,21 @@ Linked tessellation control stage:
|
|||||||
Store 42(pid) 44
|
Store 42(pid) 44
|
||||||
47: 10(int) Load 46(gl_InvocationID)
|
47: 10(int) Load 46(gl_InvocationID)
|
||||||
Store 45(iid) 47
|
Store 45(iid) 47
|
||||||
53: 15(fvec4) Load 17(p)
|
53: 10(int) Load 46(gl_InvocationID)
|
||||||
55: 54(ptr) AccessChain 52(gl_out) 24 25
|
54: 15(fvec4) Load 17(p)
|
||||||
Store 55 53
|
56: 55(ptr) AccessChain 52(gl_out) 53 25
|
||||||
56: 14(float) Load 30(ps)
|
Store 56 54
|
||||||
58: 57(ptr) AccessChain 52(gl_out) 24 24
|
57: 10(int) Load 46(gl_InvocationID)
|
||||||
Store 58 56
|
58: 14(float) Load 30(ps)
|
||||||
59: 14(float) Load 34(cd)
|
60: 59(ptr) AccessChain 52(gl_out) 57 24
|
||||||
60: 57(ptr) AccessChain 52(gl_out) 24 35 24
|
Store 60 58
|
||||||
Store 60 59
|
61: 10(int) Load 46(gl_InvocationID)
|
||||||
66: 57(ptr) AccessChain 63(gl_TessLevelOuter) 64
|
62: 14(float) Load 34(cd)
|
||||||
Store 66 65
|
63: 59(ptr) AccessChain 52(gl_out) 61 35 24
|
||||||
72: 57(ptr) AccessChain 70(gl_TessLevelInner) 24
|
Store 63 62
|
||||||
Store 72 71
|
69: 59(ptr) AccessChain 66(gl_TessLevelOuter) 67
|
||||||
|
Store 69 68
|
||||||
|
75: 59(ptr) AccessChain 73(gl_TessLevelInner) 24
|
||||||
|
Store 75 74
|
||||||
Return
|
Return
|
||||||
FunctionEnd
|
FunctionEnd
|
||||||
|
@ -23,9 +23,9 @@ void main()
|
|||||||
int pid = gl_PrimitiveID;
|
int pid = gl_PrimitiveID;
|
||||||
int iid = gl_InvocationID;
|
int iid = gl_InvocationID;
|
||||||
|
|
||||||
gl_out[1].gl_Position = p;
|
gl_out[gl_InvocationID].gl_Position = p;
|
||||||
gl_out[1].gl_PointSize = ps;
|
gl_out[gl_InvocationID].gl_PointSize = ps;
|
||||||
gl_out[1].gl_ClipDistance[1] = cd;
|
gl_out[gl_InvocationID].gl_ClipDistance[1] = cd;
|
||||||
|
|
||||||
gl_TessLevelOuter[3] = 3.2;
|
gl_TessLevelOuter[3] = 3.2;
|
||||||
gl_TessLevelInner[1] = 1.3;
|
gl_TessLevelInner[1] = 1.3;
|
||||||
|
@ -2,5 +2,5 @@
|
|||||||
// For the version, it uses the latest git tag followed by the number of commits.
|
// For the version, it uses the latest git tag followed by the number of commits.
|
||||||
// For the date, it uses the current date (when then script is run).
|
// For the date, it uses the current date (when then script is run).
|
||||||
|
|
||||||
#define GLSLANG_REVISION "SPIRV99.807"
|
#define GLSLANG_REVISION "SPIRV99.809"
|
||||||
#define GLSLANG_DATE "28-Nov-2015"
|
#define GLSLANG_DATE "28-Nov-2015"
|
||||||
|
@ -518,8 +518,9 @@ TIntermTyped* TParseContext::handleBracketDereference(const TSourceLoc& loc, TIn
|
|||||||
requireProfile(base->getLoc(), ~EEsProfile, "variable indexing buffer block array");
|
requireProfile(base->getLoc(), ~EEsProfile, "variable indexing buffer block array");
|
||||||
else if (base->getQualifier().storage == EvqUniform)
|
else if (base->getQualifier().storage == EvqUniform)
|
||||||
profileRequires(base->getLoc(), EEsProfile, 0, Num_AEP_gpu_shader5, AEP_gpu_shader5, "variable indexing uniform block array");
|
profileRequires(base->getLoc(), EEsProfile, 0, Num_AEP_gpu_shader5, AEP_gpu_shader5, "variable indexing uniform block array");
|
||||||
else
|
else {
|
||||||
requireProfile(base->getLoc(), ~EEsProfile, "variable indexing in/out block array");
|
// input/output blocks either don't exist or can be variable indexed
|
||||||
|
}
|
||||||
} else if (language == EShLangFragment && base->getQualifier().isPipeOutput())
|
} else if (language == EShLangFragment && base->getQualifier().isPipeOutput())
|
||||||
requireProfile(base->getLoc(), ~EEsProfile, "variable indexing fragment shader ouput array");
|
requireProfile(base->getLoc(), ~EEsProfile, "variable indexing fragment shader ouput array");
|
||||||
else if (base->getBasicType() == EbtSampler && version >= 130) {
|
else if (base->getBasicType() == EbtSampler && version >= 130) {
|
||||||
@ -1871,6 +1872,21 @@ bool TParseContext::lValueErrorCheck(const TSourceLoc& loc, const char* op, TInt
|
|||||||
switch(binaryNode->getOp()) {
|
switch(binaryNode->getOp()) {
|
||||||
case EOpIndexDirect:
|
case EOpIndexDirect:
|
||||||
case EOpIndexIndirect:
|
case EOpIndexIndirect:
|
||||||
|
// ... tessellation control shader ...
|
||||||
|
// If a per-vertex output variable is used as an l-value, it is a
|
||||||
|
// compile-time or link-time error if the expression indicating the
|
||||||
|
// vertex index is not the identifier gl_InvocationID.
|
||||||
|
if (language == EShLangTessControl) {
|
||||||
|
const TType& leftType = binaryNode->getLeft()->getType();
|
||||||
|
if (leftType.getQualifier().storage == EvqVaryingOut && ! leftType.getQualifier().patch && binaryNode->getLeft()->getAsSymbolNode()) {
|
||||||
|
// we have a per-vertex output
|
||||||
|
const TIntermSymbol* rightSymbol = binaryNode->getRight()->getAsSymbolNode();
|
||||||
|
if (! rightSymbol || rightSymbol->getQualifier().builtIn != EbvInvocationId)
|
||||||
|
error(loc, "tessellation-control per-vertex output l-value must be indexed with gl_InvocationID", "[]", "");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// fall through
|
||||||
case EOpIndexDirectStruct:
|
case EOpIndexDirectStruct:
|
||||||
return lValueErrorCheck(loc, op, binaryNode->getLeft());
|
return lValueErrorCheck(loc, op, binaryNode->getLeft());
|
||||||
case EOpVectorSwizzle:
|
case EOpVectorSwizzle:
|
||||||
|
Loading…
Reference in New Issue
Block a user