1*8975f5c5SAndroid Build Coastguard Worker{ 2*8975f5c5SAndroid Build Coastguard Worker "description": [ 3*8975f5c5SAndroid Build Coastguard Worker "Copyright 2022 The ANGLE Project Authors. All rights reserved.", 4*8975f5c5SAndroid Build Coastguard Worker "Use of this source code is governed by a BSD-style license that can be", 5*8975f5c5SAndroid Build Coastguard Worker "found in the LICENSE file.", 6*8975f5c5SAndroid Build Coastguard Worker "", 7*8975f5c5SAndroid Build Coastguard Worker "frontend_features.json: Features/workarounds for driver bugs and other behaviors seen", 8*8975f5c5SAndroid Build Coastguard Worker "on all platforms." 9*8975f5c5SAndroid Build Coastguard Worker ], 10*8975f5c5SAndroid Build Coastguard Worker "features": [ 11*8975f5c5SAndroid Build Coastguard Worker { 12*8975f5c5SAndroid Build Coastguard Worker "name": "lose_context_on_out_of_memory", 13*8975f5c5SAndroid Build Coastguard Worker "category": "Workarounds", 14*8975f5c5SAndroid Build Coastguard Worker "description": [ 15*8975f5c5SAndroid Build Coastguard Worker "Some users rely on a lost context notification if a GL_OUT_OF_MEMORY error occurs" 16*8975f5c5SAndroid Build Coastguard Worker ] 17*8975f5c5SAndroid Build Coastguard Worker }, 18*8975f5c5SAndroid Build Coastguard Worker { 19*8975f5c5SAndroid Build Coastguard Worker "name": "disable_program_caching_for_transform_feedback", 20*8975f5c5SAndroid Build Coastguard Worker "category": "Workarounds", 21*8975f5c5SAndroid Build Coastguard Worker "description": [ 22*8975f5c5SAndroid Build Coastguard Worker "On some GPUs, program binaries don't contain transform feedback varyings" 23*8975f5c5SAndroid Build Coastguard Worker ] 24*8975f5c5SAndroid Build Coastguard Worker }, 25*8975f5c5SAndroid Build Coastguard Worker { 26*8975f5c5SAndroid Build Coastguard Worker "name": "disable_program_binary", 27*8975f5c5SAndroid Build Coastguard Worker "category": "Features", 28*8975f5c5SAndroid Build Coastguard Worker "description": [ 29*8975f5c5SAndroid Build Coastguard Worker "Disable support for GL_OES_get_program_binary" 30*8975f5c5SAndroid Build Coastguard Worker ], 31*8975f5c5SAndroid Build Coastguard Worker "issue": "http://anglebug.com/42263580" 32*8975f5c5SAndroid Build Coastguard Worker }, 33*8975f5c5SAndroid Build Coastguard Worker { 34*8975f5c5SAndroid Build Coastguard Worker "name": "disable_draw_buffers_indexed", 35*8975f5c5SAndroid Build Coastguard Worker "category": "Features", 36*8975f5c5SAndroid Build Coastguard Worker "description": [ 37*8975f5c5SAndroid Build Coastguard Worker "Disable support for OES_draw_buffers_indexed and EXT_draw_buffers_indexed" 38*8975f5c5SAndroid Build Coastguard Worker ], 39*8975f5c5SAndroid Build Coastguard Worker "issue": "http://anglebug.com/42266194" 40*8975f5c5SAndroid Build Coastguard Worker }, 41*8975f5c5SAndroid Build Coastguard Worker { 42*8975f5c5SAndroid Build Coastguard Worker "name": "disable_anisotropic_filtering", 43*8975f5c5SAndroid Build Coastguard Worker "category": "Workarounds", 44*8975f5c5SAndroid Build Coastguard Worker "description": [ 45*8975f5c5SAndroid Build Coastguard Worker "Disable support for anisotropic filtering" 46*8975f5c5SAndroid Build Coastguard Worker ] 47*8975f5c5SAndroid Build Coastguard Worker }, 48*8975f5c5SAndroid Build Coastguard Worker { 49*8975f5c5SAndroid Build Coastguard Worker "name": "allow_compressed_formats", 50*8975f5c5SAndroid Build Coastguard Worker "category": "Workarounds", 51*8975f5c5SAndroid Build Coastguard Worker "description": [ 52*8975f5c5SAndroid Build Coastguard Worker "Allow compressed formats" 53*8975f5c5SAndroid Build Coastguard Worker ] 54*8975f5c5SAndroid Build Coastguard Worker }, 55*8975f5c5SAndroid Build Coastguard Worker { 56*8975f5c5SAndroid Build Coastguard Worker "name": "single_threaded_texture_decompression", 57*8975f5c5SAndroid Build Coastguard Worker "category": "Workarounds", 58*8975f5c5SAndroid Build Coastguard Worker "description": [ 59*8975f5c5SAndroid Build Coastguard Worker "Disables multi-threaded decompression of compressed texture formats" 60*8975f5c5SAndroid Build Coastguard Worker ] 61*8975f5c5SAndroid Build Coastguard Worker }, 62*8975f5c5SAndroid Build Coastguard Worker { 63*8975f5c5SAndroid Build Coastguard Worker "name": "force_depth_attachment_init_on_clear", 64*8975f5c5SAndroid Build Coastguard Worker "category": "Workarounds", 65*8975f5c5SAndroid Build Coastguard Worker "description": [ 66*8975f5c5SAndroid Build Coastguard Worker "Force depth attachment initialization on clear ops" 67*8975f5c5SAndroid Build Coastguard Worker ], 68*8975f5c5SAndroid Build Coastguard Worker "issue": "https://anglebug.com/42265720" 69*8975f5c5SAndroid Build Coastguard Worker }, 70*8975f5c5SAndroid Build Coastguard Worker { 71*8975f5c5SAndroid Build Coastguard Worker "name": "enable_capture_limits", 72*8975f5c5SAndroid Build Coastguard Worker "category": "Features", 73*8975f5c5SAndroid Build Coastguard Worker "description": [ 74*8975f5c5SAndroid Build Coastguard Worker "Set the context limits like frame capturing was enabled" 75*8975f5c5SAndroid Build Coastguard Worker ], 76*8975f5c5SAndroid Build Coastguard Worker "issue": "http://anglebug.com/42264287" 77*8975f5c5SAndroid Build Coastguard Worker }, 78*8975f5c5SAndroid Build Coastguard Worker { 79*8975f5c5SAndroid Build Coastguard Worker "name": "force_robust_resource_init", 80*8975f5c5SAndroid Build Coastguard Worker "category": "Features", 81*8975f5c5SAndroid Build Coastguard Worker "description": [ 82*8975f5c5SAndroid Build Coastguard Worker "Force-enable robust resource init" 83*8975f5c5SAndroid Build Coastguard Worker ], 84*8975f5c5SAndroid Build Coastguard Worker "issue": "http://anglebug.com/42264571" 85*8975f5c5SAndroid Build Coastguard Worker }, 86*8975f5c5SAndroid Build Coastguard Worker { 87*8975f5c5SAndroid Build Coastguard Worker "name": "force_init_shader_variables", 88*8975f5c5SAndroid Build Coastguard Worker "category": "Features", 89*8975f5c5SAndroid Build Coastguard Worker "description": [ 90*8975f5c5SAndroid Build Coastguard Worker "Force-enable shader variable initialization" 91*8975f5c5SAndroid Build Coastguard Worker ] 92*8975f5c5SAndroid Build Coastguard Worker }, 93*8975f5c5SAndroid Build Coastguard Worker { 94*8975f5c5SAndroid Build Coastguard Worker "name": "enable_program_binary_for_capture", 95*8975f5c5SAndroid Build Coastguard Worker "category": "Features", 96*8975f5c5SAndroid Build Coastguard Worker "description": [ 97*8975f5c5SAndroid Build Coastguard Worker "Even if FrameCapture is enabled, enable GL_OES_get_program_binary" 98*8975f5c5SAndroid Build Coastguard Worker ], 99*8975f5c5SAndroid Build Coastguard Worker "issue": "http://anglebug.com/42264193" 100*8975f5c5SAndroid Build Coastguard Worker }, 101*8975f5c5SAndroid Build Coastguard Worker { 102*8975f5c5SAndroid Build Coastguard Worker "name": "force_gl_error_checking", 103*8975f5c5SAndroid Build Coastguard Worker "category": "Features", 104*8975f5c5SAndroid Build Coastguard Worker "description": [ 105*8975f5c5SAndroid Build Coastguard Worker "Force GL error checking (i.e. prevent applications from disabling error checking" 106*8975f5c5SAndroid Build Coastguard Worker ], 107*8975f5c5SAndroid Build Coastguard Worker "issue": "https://issuetracker.google.com/220069903" 108*8975f5c5SAndroid Build Coastguard Worker }, 109*8975f5c5SAndroid Build Coastguard Worker { 110*8975f5c5SAndroid Build Coastguard Worker "name": "emulate_pixel_local_storage", 111*8975f5c5SAndroid Build Coastguard Worker "category": "Features", 112*8975f5c5SAndroid Build Coastguard Worker "description": [ 113*8975f5c5SAndroid Build Coastguard Worker "Emulate ANGLE_shader_pixel_local_storage using shader images" 114*8975f5c5SAndroid Build Coastguard Worker ], 115*8975f5c5SAndroid Build Coastguard Worker "issue": "http://anglebug.com/40096838" 116*8975f5c5SAndroid Build Coastguard Worker }, 117*8975f5c5SAndroid Build Coastguard Worker { 118*8975f5c5SAndroid Build Coastguard Worker "name": "cache_compiled_shader", 119*8975f5c5SAndroid Build Coastguard Worker "category": "Features", 120*8975f5c5SAndroid Build Coastguard Worker "description": [ 121*8975f5c5SAndroid Build Coastguard Worker "Enable to cache compiled shaders" 122*8975f5c5SAndroid Build Coastguard Worker ], 123*8975f5c5SAndroid Build Coastguard Worker "issue": "http://anglebug.com/42265509" 124*8975f5c5SAndroid Build Coastguard Worker }, 125*8975f5c5SAndroid Build Coastguard Worker { 126*8975f5c5SAndroid Build Coastguard Worker "name": "dump_shader_source", 127*8975f5c5SAndroid Build Coastguard Worker "category": "Features", 128*8975f5c5SAndroid Build Coastguard Worker "description": [ 129*8975f5c5SAndroid Build Coastguard Worker "Write shader source to temp directory" 130*8975f5c5SAndroid Build Coastguard Worker ], 131*8975f5c5SAndroid Build Coastguard Worker "issue": "http://anglebug.com/42266231" 132*8975f5c5SAndroid Build Coastguard Worker }, 133*8975f5c5SAndroid Build Coastguard Worker { 134*8975f5c5SAndroid Build Coastguard Worker "name": "enable_shader_substitution", 135*8975f5c5SAndroid Build Coastguard Worker "category": "Workarounds", 136*8975f5c5SAndroid Build Coastguard Worker "description": [ 137*8975f5c5SAndroid Build Coastguard Worker "Check the filesystem for shaders to use instead of those provided through glShaderSource" 138*8975f5c5SAndroid Build Coastguard Worker ], 139*8975f5c5SAndroid Build Coastguard Worker "issue": "http://anglebug.com/42266232" 140*8975f5c5SAndroid Build Coastguard Worker }, 141*8975f5c5SAndroid Build Coastguard Worker { 142*8975f5c5SAndroid Build Coastguard Worker "name": "disable_program_caching", 143*8975f5c5SAndroid Build Coastguard Worker "category": "Features", 144*8975f5c5SAndroid Build Coastguard Worker "description": [ 145*8975f5c5SAndroid Build Coastguard Worker "Disables saving programs to the cache" 146*8975f5c5SAndroid Build Coastguard Worker ], 147*8975f5c5SAndroid Build Coastguard Worker "issue": "http://anglebug.com/1423136" 148*8975f5c5SAndroid Build Coastguard Worker }, 149*8975f5c5SAndroid Build Coastguard Worker { 150*8975f5c5SAndroid Build Coastguard Worker "name": "dump_translated_shaders", 151*8975f5c5SAndroid Build Coastguard Worker "category": "Features", 152*8975f5c5SAndroid Build Coastguard Worker "description": [ 153*8975f5c5SAndroid Build Coastguard Worker "Write translated shaders to temp directory" 154*8975f5c5SAndroid Build Coastguard Worker ], 155*8975f5c5SAndroid Build Coastguard Worker "issue": "http://anglebug.com/40644912" 156*8975f5c5SAndroid Build Coastguard Worker }, 157*8975f5c5SAndroid Build Coastguard Worker { 158*8975f5c5SAndroid Build Coastguard Worker "name": "enable_translated_shader_substitution", 159*8975f5c5SAndroid Build Coastguard Worker "category": "Workarounds", 160*8975f5c5SAndroid Build Coastguard Worker "description": [ 161*8975f5c5SAndroid Build Coastguard Worker "Check the filesystem for translated shaders to use instead of the shader translator's" 162*8975f5c5SAndroid Build Coastguard Worker ], 163*8975f5c5SAndroid Build Coastguard Worker "issue": "http://anglebug.com/40644912" 164*8975f5c5SAndroid Build Coastguard Worker }, 165*8975f5c5SAndroid Build Coastguard Worker { 166*8975f5c5SAndroid Build Coastguard Worker "name": "compile_job_is_thread_safe", 167*8975f5c5SAndroid Build Coastguard Worker "category": "Features", 168*8975f5c5SAndroid Build Coastguard Worker "description": [ 169*8975f5c5SAndroid Build Coastguard Worker "If false, parts of the compile job cannot be parallelized" 170*8975f5c5SAndroid Build Coastguard Worker ], 171*8975f5c5SAndroid Build Coastguard Worker "issue": "http://anglebug.com/41488637" 172*8975f5c5SAndroid Build Coastguard Worker }, 173*8975f5c5SAndroid Build Coastguard Worker { 174*8975f5c5SAndroid Build Coastguard Worker "name": "link_job_is_thread_safe", 175*8975f5c5SAndroid Build Coastguard Worker "category": "Features", 176*8975f5c5SAndroid Build Coastguard Worker "description": [ 177*8975f5c5SAndroid Build Coastguard Worker "If false, parts of the link job cannot be parallelized" 178*8975f5c5SAndroid Build Coastguard Worker ], 179*8975f5c5SAndroid Build Coastguard Worker "issue": "http://anglebug.com/41488637" 180*8975f5c5SAndroid Build Coastguard Worker }, 181*8975f5c5SAndroid Build Coastguard Worker { 182*8975f5c5SAndroid Build Coastguard Worker "name": "always_run_link_sub_jobs_threaded", 183*8975f5c5SAndroid Build Coastguard Worker "category": "Features", 184*8975f5c5SAndroid Build Coastguard Worker "description": [ 185*8975f5c5SAndroid Build Coastguard Worker "If true, sub tasks of the link job are always threaded, regardless of GL_KHR_parallel_shader_compile" 186*8975f5c5SAndroid Build Coastguard Worker ], 187*8975f5c5SAndroid Build Coastguard Worker "issue": "http://anglebug.com/42266842" 188*8975f5c5SAndroid Build Coastguard Worker }, 189*8975f5c5SAndroid Build Coastguard Worker { 190*8975f5c5SAndroid Build Coastguard Worker "name": "uncurrent_egl_surface_upon_surface_destroy", 191*8975f5c5SAndroid Build Coastguard Worker "category": "Workarounds", 192*8975f5c5SAndroid Build Coastguard Worker "description": [ 193*8975f5c5SAndroid Build Coastguard Worker "Make egl surface uncurrent when calling eglDestroySurface(), if the surface is still bound by the context of current render thread" 194*8975f5c5SAndroid Build Coastguard Worker ], 195*8975f5c5SAndroid Build Coastguard Worker "issue": "https://issuetracker.google.com/292285899" 196*8975f5c5SAndroid Build Coastguard Worker }, 197*8975f5c5SAndroid Build Coastguard Worker { 198*8975f5c5SAndroid Build Coastguard Worker "name": "force_minimum_max_vertex_attributes", 199*8975f5c5SAndroid Build Coastguard Worker "category": "Features", 200*8975f5c5SAndroid Build Coastguard Worker "description": [ 201*8975f5c5SAndroid Build Coastguard Worker "Force the minimum GL_MAX_VERTEX_ATTRIBS that the context's client version allows." 202*8975f5c5SAndroid Build Coastguard Worker ], 203*8975f5c5SAndroid Build Coastguard Worker "issue": "" 204*8975f5c5SAndroid Build Coastguard Worker }, 205*8975f5c5SAndroid Build Coastguard Worker { 206*8975f5c5SAndroid Build Coastguard Worker "name": "force_flush_after_drawcall_using_shadowmap", 207*8975f5c5SAndroid Build Coastguard Worker "category": "Workarounds", 208*8975f5c5SAndroid Build Coastguard Worker "description": [ 209*8975f5c5SAndroid Build Coastguard Worker "Force flush after drawcall use shadow map for intel device." 210*8975f5c5SAndroid Build Coastguard Worker ], 211*8975f5c5SAndroid Build Coastguard Worker "issue": "https://issuetracker.google.com/349489248" 212*8975f5c5SAndroid Build Coastguard Worker }, 213*8975f5c5SAndroid Build Coastguard Worker { 214*8975f5c5SAndroid Build Coastguard Worker "name": "reject_webgl_shaders_with_undefined_behavior", 215*8975f5c5SAndroid Build Coastguard Worker "category": "Workarounds", 216*8975f5c5SAndroid Build Coastguard Worker "description": [ 217*8975f5c5SAndroid Build Coastguard Worker "Attempts to detect undefined behavior when in WebGL mode and reject shaders if any detected." 218*8975f5c5SAndroid Build Coastguard Worker ], 219*8975f5c5SAndroid Build Coastguard Worker "issue": "http://crbug.com/350528343" 220*8975f5c5SAndroid Build Coastguard Worker }, 221*8975f5c5SAndroid Build Coastguard Worker { 222*8975f5c5SAndroid Build Coastguard Worker "name": "always_enable_emulated_multidraw_extensions", 223*8975f5c5SAndroid Build Coastguard Worker "category": "Workarounds", 224*8975f5c5SAndroid Build Coastguard Worker "description": [ 225*8975f5c5SAndroid Build Coastguard Worker "Enable multi-draw and base vertex base instance extensions for non-WebGL contexts if they are emulated." 226*8975f5c5SAndroid Build Coastguard Worker ], 227*8975f5c5SAndroid Build Coastguard Worker "issue": "http://anglebug.com/355645824" 228*8975f5c5SAndroid Build Coastguard Worker } 229*8975f5c5SAndroid Build Coastguard Worker ] 230*8975f5c5SAndroid Build Coastguard Worker} 231