Require fixed workgroup size declaration
Fix 2479.
This commit is contained in:
parent
9801a9e42a
commit
1c62806468
5 changed files with 99 additions and 0 deletions
69
Test/baseResults/negativeWorkGroupSize.comp.out
Normal file
69
Test/baseResults/negativeWorkGroupSize.comp.out
Normal file
|
|
@ -0,0 +1,69 @@
|
|||
negativeWorkGroupSize.comp
|
||||
ERROR: 0:4: 'initializer' : can't read from gl_WorkGroupSize before a fixed workgroup size has been declared
|
||||
ERROR: 1 compilation errors. No code generated.
|
||||
|
||||
|
||||
Shader version: 460
|
||||
local_size = (64, 1, 1)
|
||||
ERROR: node is still EOpNull!
|
||||
0:3 Function Definition: fn( ( global void)
|
||||
0:3 Function Parameters:
|
||||
0:4 Sequence
|
||||
0:4 Sequence
|
||||
0:4 move second child to first child ( temp 3-component vector of uint)
|
||||
0:4 'wgs' ( temp 3-component vector of uint)
|
||||
0:4 Constant:
|
||||
0:4 1 (const uint)
|
||||
0:4 1 (const uint)
|
||||
0:4 1 (const uint)
|
||||
0:9 Function Definition: main( ( global void)
|
||||
0:9 Function Parameters:
|
||||
0:10 Sequence
|
||||
0:10 Function Call: fn( ( global void)
|
||||
0:11 Sequence
|
||||
0:11 move second child to first child ( temp 3-component vector of uint)
|
||||
0:11 'wgs' ( temp 3-component vector of uint)
|
||||
0:11 Constant:
|
||||
0:11 64 (const uint)
|
||||
0:11 1 (const uint)
|
||||
0:11 1 (const uint)
|
||||
0:? Linker Objects
|
||||
0:? 'gl_WorkGroupSize' ( const 3-component vector of uint WorkGroupSize)
|
||||
0:? 64 (const uint)
|
||||
0:? 1 (const uint)
|
||||
0:? 1 (const uint)
|
||||
|
||||
|
||||
Linked compute stage:
|
||||
|
||||
|
||||
Shader version: 460
|
||||
local_size = (64, 1, 1)
|
||||
ERROR: node is still EOpNull!
|
||||
0:3 Function Definition: fn( ( global void)
|
||||
0:3 Function Parameters:
|
||||
0:4 Sequence
|
||||
0:4 Sequence
|
||||
0:4 move second child to first child ( temp 3-component vector of uint)
|
||||
0:4 'wgs' ( temp 3-component vector of uint)
|
||||
0:4 Constant:
|
||||
0:4 1 (const uint)
|
||||
0:4 1 (const uint)
|
||||
0:4 1 (const uint)
|
||||
0:9 Function Definition: main( ( global void)
|
||||
0:9 Function Parameters:
|
||||
0:10 Sequence
|
||||
0:10 Function Call: fn( ( global void)
|
||||
0:11 Sequence
|
||||
0:11 move second child to first child ( temp 3-component vector of uint)
|
||||
0:11 'wgs' ( temp 3-component vector of uint)
|
||||
0:11 Constant:
|
||||
0:11 64 (const uint)
|
||||
0:11 1 (const uint)
|
||||
0:11 1 (const uint)
|
||||
0:? Linker Objects
|
||||
0:? 'gl_WorkGroupSize' ( const 3-component vector of uint WorkGroupSize)
|
||||
0:? 64 (const uint)
|
||||
0:? 1 (const uint)
|
||||
0:? 1 (const uint)
|
||||
|
||||
12
Test/negativeWorkGroupSize.comp
Normal file
12
Test/negativeWorkGroupSize.comp
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
#version 460
|
||||
|
||||
void fn(){
|
||||
uvec3 wgs = gl_WorkGroupSize; // error: fixed workgroup size has not been declared
|
||||
}
|
||||
|
||||
layout(local_size_x = 64) in; // declare workgroup size
|
||||
|
||||
void main(){
|
||||
fn();
|
||||
uvec3 wgs = gl_WorkGroupSize; // valid
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue