Removing a D3D limitation from SwiftShader
The limitation of not being able to have
different values for stencil and stencilBack
was put in place in Angle because of a D3D
limitation, which we do not have in Swift
Shader, so I doubt we need the same limitation.
FYI, this fixes about 600 dEQP tests.
Change-Id: I74d1786c612e817fb5ef46f233751e6f2581c33f
Reviewed-on: https://swiftshader-review.googlesource.com/3321
Tested-by: Alexis Hétu <sugoi@google.com>
Reviewed-by: Nicolas Capens <capn@google.com>
diff --git a/src/OpenGL/libGLESv2/Context.cpp b/src/OpenGL/libGLESv2/Context.cpp
index 8e7ebf9..f658447 100644
--- a/src/OpenGL/libGLESv2/Context.cpp
+++ b/src/OpenGL/libGLESv2/Context.cpp
@@ -2674,14 +2674,6 @@
device->setStencilEnable(true);
device->setTwoSidedStencil(true);
- if(mState.stencilWritemask != mState.stencilBackWritemask ||
- mState.stencilRef != mState.stencilBackRef ||
- mState.stencilMask != mState.stencilBackMask)
- {
- ERR("Separate front/back stencil writemasks, reference values, or stencil mask values are invalid under WebGL.");
- return error(GL_INVALID_OPERATION);
- }
-
// get the maximum size of the stencil ref
Renderbuffer *stencilbuffer = framebuffer->getStencilbuffer();
GLuint maxStencil = (1 << stencilbuffer->getStencilSize()) - 1;