cancel
Showing results for 
Search instead for 
Did you mean: 

Archives Discussions

limdor
Journeyman III

Possible GLSL 4.2 compiler bug

Dear AMD team,

I'm a OpenGL developer and I've detected a possible compiler error that not corresponds to the GLSL standard.

Here I copy the information of glew:

Log: GL_VENDOR: ATI Technologies Inc.

Log: GL_RENDERER: AMD Radeon HD 6900 Series

Log: GL_VERSION: 4.2.12002 Compatibility Profile Context 9.12.0.0

Log: GL_SHADING_LANGUAGE_VERSION: 4.20

Here the shader that I try to compile:

#version 420

layout(r32ui) uniform volatile coherent uimage2D countersImage;

void main()

{

     unsigned int currentValue = imageAtomicAdd(countersImage, ivec2(gl_FragCoord.x, gl_FragCoord.y), 1);

}

And here the error that the compiler give me back:

Error: shaders/ProjectionGL4.frag: Fragment shader failed to compile with the following errors:

ERROR: 0:3: error(#392) At most one: memory qualifier is allowed

ERROR: error(#273) 1 compilation errors.  No code generated

I will like to confirm if multiple memory qualifiers are supported in driver 13.1. If I'm not wrong, the standard says that multiple memory qualifiers should be possible.

I'm developing under Windows 7 x64

My graphic card is: HD6950 2G GDDR5

Thanks Xavi

0 Likes
1 Solution
gsellers
Staff

Hi Xavi,

Yes, this looks like a bug. Indeed, the compiler explicitly checks that only one qualifier is used on the declaration and fails to compile your shader. Using only one of the two qualifiers (volatile or coherent) works. We will fix the issue.

Thanks,

Graham

View solution in original post

3 Replies
gsellers
Staff

Hi Xavi,

Yes, this looks like a bug. Indeed, the compiler explicitly checks that only one qualifier is used on the declaration and fails to compile your shader. Using only one of the two qualifiers (volatile or coherent) works. We will fix the issue.

Thanks,

Graham

Hi Graham,

Do you know in which driver version it's planned to be solved this bug?

Thanks

Xavi

0 Likes

It looks that the driver version 13.9 solves this bug.

0 Likes