Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
glslang
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Chen Yisong
glslang
Commits
14d65beb
Commit
14d65beb
authored
Jun 07, 2017
by
John Kessenich
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
GLSL: Fix Khronos private Bugzilla 15973: local sizes can't be 0.
parent
2eb13550
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
15 additions
and
4 deletions
+15
-4
310.comp
Test/310.comp
+1
-1
450.comp
Test/450.comp
+2
-0
310.comp.out
Test/baseResults/310.comp.out
+2
-1
450.comp.out
Test/baseResults/450.comp.out
+6
-2
ParseHelper.cpp
glslang/MachineIndependent/ParseHelper.cpp
+4
-0
No files found.
Test/310.comp
View file @
14d65beb
...
@@ -4,7 +4,7 @@ layout(local_size_x = 2) in;
...
@@ -4,7 +4,7 @@ layout(local_size_x = 2) in;
layout(local_size_x = 16) in; // ERROR, changing
layout(local_size_x = 16) in; // ERROR, changing
layout(local_size_z = 4096) in; // ERROR, too large
layout(local_size_z = 4096) in; // ERROR, too large
layout(local_size_x = 2) in;
layout(local_size_x = 2) in;
layout(local_size_y = 0) in; // ERROR, 0 not allowed
const int total = gl_MaxComputeWorkGroupCount.y
const int total = gl_MaxComputeWorkGroupCount.y
+ gl_MaxComputeUniformComponents
+ gl_MaxComputeUniformComponents
+ gl_MaxComputeTextureImageUnits
+ gl_MaxComputeTextureImageUnits
...
...
Test/450.comp
View file @
14d65beb
#version 450 core
#version 450 core
layout(local_size_x = 0) in; // ERROR, 0 not allowed
\ No newline at end of file
Test/baseResults/310.comp.out
View file @
14d65beb
310.comp
310.comp
ERROR: 0:4: 'local_size' : cannot change previously set size
ERROR: 0:4: 'local_size' : cannot change previously set size
ERROR: 0:5: 'local_size' : too large; see gl_MaxComputeWorkGroupSize
ERROR: 0:5: 'local_size' : too large; see gl_MaxComputeWorkGroupSize
ERROR: 0:7: 'local_size_y' : must be at least 1
ERROR: 0:23: '' : array size required
ERROR: 0:23: '' : array size required
ERROR: 0:39: 'in' : global storage input qualifier cannot be used in a compute shader
ERROR: 0:39: 'in' : global storage input qualifier cannot be used in a compute shader
ERROR: 0:39: 'location qualifier on input' : not supported in this stage: compute
ERROR: 0:39: 'location qualifier on input' : not supported in this stage: compute
...
@@ -83,7 +84,7 @@ WARNING: 0:238: '#define' : names containing consecutive underscores are reserve
...
@@ -83,7 +84,7 @@ WARNING: 0:238: '#define' : names containing consecutive underscores are reserve
ERROR: 0:244: 'gl_DeviceIndex' : required extension not requested: GL_EXT_device_group
ERROR: 0:244: 'gl_DeviceIndex' : required extension not requested: GL_EXT_device_group
ERROR: 0:245: 'gl_ViewIndex' : undeclared identifier
ERROR: 0:245: 'gl_ViewIndex' : undeclared identifier
ERROR: 0:255: 'gl_ViewIndex' : undeclared identifier
ERROR: 0:255: 'gl_ViewIndex' : undeclared identifier
ERROR: 8
2
compilation errors. No code generated.
ERROR: 8
3
compilation errors. No code generated.
Shader version: 310
Shader version: 310
...
...
Test/baseResults/450.comp.out
View file @
14d65beb
450.comp
450.comp
ERROR: 0:2: 'local_size_x' : must be at least 1
ERROR: 1 compilation errors. No code generated.
Shader version: 450
Shader version: 450
local_size = (1, 1, 1)
local_size = (1, 1, 1)
0:? Sequence
ERROR: node is still EOpNull!
0:? Linker Objects
0:? Linker Objects
...
@@ -11,6 +15,6 @@ ERROR: Linking compute stage: Missing entry point: Each stage requires one entry
...
@@ -11,6 +15,6 @@ ERROR: Linking compute stage: Missing entry point: Each stage requires one entry
Shader version: 450
Shader version: 450
local_size = (1, 1, 1)
local_size = (1, 1, 1)
0:? Sequence
ERROR: node is still EOpNull!
0:? Linker Objects
0:? Linker Objects
glslang/MachineIndependent/ParseHelper.cpp
View file @
14d65beb
...
@@ -4260,6 +4260,10 @@ void TParseContext::setLayoutQualifier(const TSourceLoc& loc, TPublicType& publi
...
@@ -4260,6 +4260,10 @@ void TParseContext::setLayoutQualifier(const TSourceLoc& loc, TPublicType& publi
if
(
id
.
compare
(
0
,
11
,
"local_size_"
)
==
0
)
{
if
(
id
.
compare
(
0
,
11
,
"local_size_"
)
==
0
)
{
profileRequires
(
loc
,
EEsProfile
,
310
,
0
,
"gl_WorkGroupSize"
);
profileRequires
(
loc
,
EEsProfile
,
310
,
0
,
"gl_WorkGroupSize"
);
profileRequires
(
loc
,
~
EEsProfile
,
430
,
E_GL_ARB_compute_shader
,
"gl_WorkGroupSize"
);
profileRequires
(
loc
,
~
EEsProfile
,
430
,
E_GL_ARB_compute_shader
,
"gl_WorkGroupSize"
);
if
(
id
.
size
()
==
12
&&
value
==
0
)
{
error
(
loc
,
"must be at least 1"
,
id
.
c_str
(),
""
);
return
;
}
if
(
id
==
"local_size_x"
)
{
if
(
id
==
"local_size_x"
)
{
publicType
.
shaderQualifiers
.
localSize
[
0
]
=
value
;
publicType
.
shaderQualifiers
.
localSize
[
0
]
=
value
;
return
;
return
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment