summaryrefslogtreecommitdiffstats
path: root/dom/canvas/WebGLShaderValidator.cpp
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@gmail.com>2018-07-11 22:58:54 +0200
committerwolfbeast <mcwerewolf@gmail.com>2018-07-11 22:58:54 +0200
commitfb0b7cdb5097fb91fc0041a7d7b44ecb637a847a (patch)
tree977f787cd068df4d46fbbbba07ffef38082db726 /dom/canvas/WebGLShaderValidator.cpp
parent4706e8bed616e0ef816a7fb579333f892508c64b (diff)
downloadUXP-fb0b7cdb5097fb91fc0041a7d7b44ecb637a847a.tar
UXP-fb0b7cdb5097fb91fc0041a7d7b44ecb637a847a.tar.gz
UXP-fb0b7cdb5097fb91fc0041a7d7b44ecb637a847a.tar.lz
UXP-fb0b7cdb5097fb91fc0041a7d7b44ecb637a847a.tar.xz
UXP-fb0b7cdb5097fb91fc0041a7d7b44ecb637a847a.zip
Restore emulated functions for OS X 10.8/10.7
Diffstat (limited to 'dom/canvas/WebGLShaderValidator.cpp')
-rw-r--r--dom/canvas/WebGLShaderValidator.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/dom/canvas/WebGLShaderValidator.cpp b/dom/canvas/WebGLShaderValidator.cpp
index 80ba359a3..57abb68dc 100644
--- a/dom/canvas/WebGLShaderValidator.cpp
+++ b/dom/canvas/WebGLShaderValidator.cpp
@@ -55,6 +55,17 @@ ChooseValidatorCompileOptions(const ShBuiltInResources& resources,
// Work around https://bugs.webkit.org/show_bug.cgi?id=124684,
// https://chromium.googlesource.com/angle/angle/+/5e70cf9d0b1bb
options |= SH_UNFOLD_SHORT_CIRCUIT;
+
+ // OS X 10.7/10.8 specific:
+
+ // Work around bug 665578 and bug 769810
+ if (gl->Vendor() == gl::GLVendor::ATI) {
+ options |= SH_EMULATE_BUILT_IN_FUNCTIONS;
+ }
+ // Work around bug 735560
+ if (gl->Vendor() == gl::GLVendor::Intel) {
+ options |= SH_EMULATE_BUILT_IN_FUNCTIONS;
+ }
// Work around that Mac drivers handle struct scopes incorrectly.
options |= SH_REGENERATE_STRUCT_NAMES;