1 // 2 // Copyright (c) 2016 The ANGLE Project Authors. All rights reserved. 3 // Use of this source code is governed by a BSD-style license that can be 4 // found in the LICENSE file. 5 // 6 7 // Workarounds.h: Workarounds for driver bugs and other behaviors seen 8 // on all platforms. 9 10 #ifndef LIBANGLE_WORKAROUNDS_H_ 11 #define LIBANGLE_WORKAROUNDS_H_ 12 13 namespace gl 14 { 15 16 struct Workarounds 17 { 18 // Force the context to be lost (via KHR_robustness) if a GL_OUT_OF_MEMORY error occurs. The 19 // driver may be in an inconsistent state if this happens, and some users of ANGLE rely on this 20 // notification to prevent further execution. 21 bool loseContextOnOutOfMemory = false; 22 23 // Program binaries don't contain transform feedback varyings on Qualcomm GPUs. 24 // Work around this by disabling the program cache for programs with transform feedback. 25 bool disableProgramCachingForTransformFeedback = false; 26 }; 27 } // namespace gl 28 29 #endif // LIBANGLE_WORKAROUNDS_H_ 30