The scissor tests has multiples problem on AMD involving glClearBuffer but also so reordering of the GL commands it seams.
I have a bug scissor test in this scenario:
glScissorIndexed(0, ScissorRectA);
glDraw*(A);
glScissorIndexed(0, ScissorRectB);
glDraw*(B);
glScissorIndexed(0, ScissorRectC);
glDraw*(C);
glDraw*(B) is actually rendered with glScissorIndexed(0, ScissorRectC) which make me fell that the drivers reorder the command in an inappropriate way.
To check this theory, I did the following test:
glScissorIndexed(0, ScissorRectA);
glDraw*(A);
glFinish();
glScissorIndexed(0, ScissorRectB);
glDraw*(B);
glFinish();
glScissorIndexed(0, ScissorRectC);
glDraw*(C);
glFinish();
Which fixed this issue even if my code really don’t need any glFinish.