glslang and SPIR-V: Some basic turn on for doubles (previously untested but existed code). Partly from a submission, partly addressing bug 13772.

git-svn-id: https://cvs.khronos.org/svn/repos/ogl/trunk/ecosystem/public/sdk/tools/glslang@30794 e7fa87d3-cd2b-0410-9028-fcbf551c1848
This commit is contained in:
John Kessenich
2015-04-17 21:47:07 +00:00
parent 87a5e2a84b
commit edd181944e
10 changed files with 335 additions and 16 deletions

View File

@@ -14,7 +14,8 @@ ERROR: 0:51: 'local_size' : can only apply to 'in'
ERROR: 0:51: 'local_size' : can only apply to 'in'
ERROR: 0:51: 'local_size' : can only apply to 'in'
ERROR: 0:65: 'assign' : l-value required "ro" (can't modify a readonly buffer)
ERROR: 14 compilation errors. No code generated.
ERROR: 0:77: '=' : cannot convert from 'double' to 'int'
ERROR: 15 compilation errors. No code generated.
Shader version: 430
@@ -69,6 +70,58 @@ ERROR: node is still EOpNull!
0:66 Constant:
0:66 1 (const int)
0:67 Barrier (void)
0:72 Function Definition: fooaoeu( (void)
0:72 Function Parameters:
0:73 Sequence
0:73 Sequence
0:73 move second child to first child (2-component vector of int)
0:73 'storePos' (2-component vector of int)
0:73 Convert uint to int (2-component vector of int)
0:73 vector swizzle (2-component vector of uint)
0:73 'gl_GlobalInvocationID' (in 3-component vector of uint)
0:73 Sequence
0:73 Constant:
0:73 0 (const int)
0:73 Constant:
0:73 1 (const int)
0:74 Sequence
0:74 move second child to first child (double)
0:74 'localCoef' (double)
0:74 Convert float to double (double)
0:74 length (float)
0:74 divide (2-component vector of float)
0:74 Convert int to float (2-component vector of float)
0:74 subtract (2-component vector of int)
0:74 Convert uint to int (2-component vector of int)
0:74 vector swizzle (2-component vector of uint)
0:74 'gl_LocalInvocationID' (in 3-component vector of uint)
0:74 Sequence
0:74 Constant:
0:74 0 (const int)
0:74 Constant:
0:74 1 (const int)
0:74 Constant:
0:74 8 (const int)
0:74 Constant:
0:74 8.000000
0:75 Sequence
0:75 move second child to first child (4-component vector of double)
0:75 'aa' (4-component vector of double)
0:75 Constant:
0:75 0.400000
0:75 0.200000
0:75 0.300000
0:75 0.400000
0:76 Sequence
0:76 move second child to first child (double)
0:76 'globalCoef' (double)
0:76 Constant:
0:76 1.000000
0:78 Sequence
0:78 move second child to first child (double)
0:78 'di' (double)
0:78 Convert int to double (double)
0:78 'i' (int)
0:? Linker Objects
0:? 'gl_WorkGroupSize' (const 3-component vector of uint)
0:? 2 (const uint)
@@ -88,6 +141,8 @@ ERROR: node is still EOpNull!
0:? 'arrY' (1-element array of int)
0:? 'arrZ' (4096-element array of int)
0:? 'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values})
0:? 'roll' (uniform double)
0:? 'destTex' (writeonly uniform image2D)
Linked compute stage:
@@ -145,6 +200,58 @@ ERROR: node is still EOpNull!
0:66 Constant:
0:66 1 (const int)
0:67 Barrier (void)
0:72 Function Definition: fooaoeu( (void)
0:72 Function Parameters:
0:73 Sequence
0:73 Sequence
0:73 move second child to first child (2-component vector of int)
0:73 'storePos' (2-component vector of int)
0:73 Convert uint to int (2-component vector of int)
0:73 vector swizzle (2-component vector of uint)
0:73 'gl_GlobalInvocationID' (in 3-component vector of uint)
0:73 Sequence
0:73 Constant:
0:73 0 (const int)
0:73 Constant:
0:73 1 (const int)
0:74 Sequence
0:74 move second child to first child (double)
0:74 'localCoef' (double)
0:74 Convert float to double (double)
0:74 length (float)
0:74 divide (2-component vector of float)
0:74 Convert int to float (2-component vector of float)
0:74 subtract (2-component vector of int)
0:74 Convert uint to int (2-component vector of int)
0:74 vector swizzle (2-component vector of uint)
0:74 'gl_LocalInvocationID' (in 3-component vector of uint)
0:74 Sequence
0:74 Constant:
0:74 0 (const int)
0:74 Constant:
0:74 1 (const int)
0:74 Constant:
0:74 8 (const int)
0:74 Constant:
0:74 8.000000
0:75 Sequence
0:75 move second child to first child (4-component vector of double)
0:75 'aa' (4-component vector of double)
0:75 Constant:
0:75 0.400000
0:75 0.200000
0:75 0.300000
0:75 0.400000
0:76 Sequence
0:76 move second child to first child (double)
0:76 'globalCoef' (double)
0:76 Constant:
0:76 1.000000
0:78 Sequence
0:78 move second child to first child (double)
0:78 'di' (double)
0:78 Convert int to double (double)
0:78 'i' (int)
0:? Linker Objects
0:? 'gl_WorkGroupSize' (const 3-component vector of uint)
0:? 2 (const uint)
@@ -164,4 +271,6 @@ ERROR: node is still EOpNull!
0:? 'arrY' (1-element array of int)
0:? 'arrZ' (4096-element array of int)
0:? 'ro' (layout(column_major shared ) readonly buffer block{layout(column_major shared ) buffer int value, layout(column_major shared ) buffer implicitly-sized array of float values})
0:? 'roll' (uniform double)
0:? 'destTex' (writeonly uniform image2D)