OLD | NEW |
| (Empty) |
1 // Copyright (c) 2013 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 // Determines whether a certain driver bug exists in the current system. | |
6 // The format of a valid gpu_driver_bug_list.json file is defined in | |
7 // <gpu/config/gpu_control_list_format.txt>. | |
8 // The supported "features" can be found in | |
9 // <gpu/config/gpu_driver_bug_workaround_type.h>. | |
10 | |
11 #include "gpu/config/gpu_control_list_jsons.h" | |
12 | |
13 #define LONG_STRING_CONST(...) #__VA_ARGS__ | |
14 | |
15 namespace gpu { | |
16 | |
17 const char kGpuDriverBugListJson[] = LONG_STRING_CONST( | |
18 | |
19 { | |
20 "name": "gpu driver bug list", | |
21 // Please update the version number whenever you change this file. | |
22 "version": "9.37", | |
23 "entries": [ | |
24 { | |
25 "id": 1, | |
26 "description": "Imagination driver doesn't like uploading lots of buffer d
ata constantly", | |
27 "os": { | |
28 "type": "android" | |
29 }, | |
30 "gl_vendor": "Imagination.*", | |
31 "features": [ | |
32 "use_client_side_arrays_for_stream_buffers" | |
33 ] | |
34 }, | |
35 { | |
36 "id": 2, | |
37 "description": "ARM driver doesn't like uploading lots of buffer data cons
tantly", | |
38 "os": { | |
39 "type": "android" | |
40 }, | |
41 "gl_vendor": "ARM.*", | |
42 "features": [ | |
43 "use_client_side_arrays_for_stream_buffers" | |
44 ] | |
45 }, | |
46 { | |
47 "id": 6, | |
48 "description": "Restore scissor on FBO change with Qualcomm GPUs on older
versions of Android", | |
49 "cr_bugs": [165493, 222018], | |
50 "os": { | |
51 "type": "android", | |
52 "version": { | |
53 "op": "<", | |
54 "value": "4.3" | |
55 } | |
56 }, | |
57 "gl_vendor": "Qualcomm.*", | |
58 "features": [ | |
59 "restore_scissor_on_fbo_change" | |
60 ] | |
61 }, | |
62 { | |
63 "id": 7, | |
64 "cr_bugs": [89557], | |
65 "description": "Work around a bug in offscreen buffers on NVIDIA GPUs on M
acs", | |
66 "os": { | |
67 "type": "macosx" | |
68 }, | |
69 "vendor_id": "0x10de", | |
70 "features": [ | |
71 "needs_offscreen_buffer_workaround" | |
72 ] | |
73 }, | |
74 { | |
75 "id": 17, | |
76 "description": "Some drivers are unable to reset the D3D device in the GPU
process sandbox", | |
77 "os": { | |
78 "type": "win" | |
79 }, | |
80 "features": [ | |
81 "exit_on_context_lost" | |
82 ] | |
83 }, | |
84 { | |
85 "id": 19, | |
86 "description": "Disable depth textures on Android with Qualcomm GPUs", | |
87 "cr_bugs": [682075], | |
88 "os": { | |
89 "type": "android", | |
90 "version": { | |
91 "op": "<", | |
92 "value": "6.0" | |
93 } | |
94 }, | |
95 "gl_vendor": "Qualcomm.*", | |
96 "features": [ | |
97 "disable_depth_texture" | |
98 ], | |
99 "disabled_extensions": [ | |
100 "GL_OES_depth_texture" | |
101 ] | |
102 }, | |
103 { | |
104 "id": 20, | |
105 "description": "Disable EXT_draw_buffers on GeForce GT 650M on Mac OS X du
e to driver bugs", | |
106 "os": { | |
107 "type": "macosx" | |
108 }, | |
109 "vendor_id": "0x10de", | |
110 "device_id": ["0x0fd5"], | |
111 "multi_gpu_category": "any", | |
112 "features": [ | |
113 "disable_ext_draw_buffers" | |
114 ] | |
115 }, | |
116 { | |
117 "id": 21, | |
118 "description": "Vivante GPUs are buggy with context switching", | |
119 "cr_bugs": [179250, 235935], | |
120 "os": { | |
121 "type": "android" | |
122 }, | |
123 "gl_extensions": ".*GL_VIV_shader_binary.*", | |
124 "features": [ | |
125 "unbind_fbo_on_context_switch" | |
126 ] | |
127 }, | |
128 { | |
129 "id": 22, | |
130 "description": "Imagination drivers are buggy with context switching", | |
131 "cr_bugs": [230896], | |
132 "os": { | |
133 "type": "android" | |
134 }, | |
135 "gl_vendor": "Imagination.*", | |
136 "features": [ | |
137 "unbind_fbo_on_context_switch" | |
138 ] | |
139 }, | |
140 { | |
141 "id": 23, | |
142 "cr_bugs": [243038], | |
143 "description": "Disable OES_standard_derivative on Intel Pineview M Galliu
m drivers", | |
144 "os": { | |
145 "type": "chromeos" | |
146 }, | |
147 "vendor_id": "0x8086", | |
148 "device_id": ["0xa011", "0xa012"], | |
149 "disabled_extensions": [ | |
150 "GL_OES_standard_derivatives" | |
151 ] | |
152 }, | |
153 { | |
154 "id": 24, | |
155 "cr_bugs": [231082], | |
156 "description": "Mali-4xx drivers throw an error when a buffer object's siz
e is set to 0", | |
157 "os": { | |
158 "type": "android" | |
159 }, | |
160 "gl_vendor": "ARM.*", | |
161 "gl_renderer": ".*Mali-4.*", | |
162 "features": [ | |
163 "use_non_zero_size_for_client_side_stream_buffers" | |
164 ] | |
165 }, | |
166 { | |
167 "id": 26, | |
168 "description": "Disable use of Direct3D 11 on Windows Vista and lower", | |
169 "os": { | |
170 "type": "win", | |
171 "version": { | |
172 "op": "<=", | |
173 "value": "6.0" | |
174 } | |
175 }, | |
176 "features": [ | |
177 "disable_d3d11" | |
178 ] | |
179 }, | |
180 { | |
181 "id": 27, | |
182 "cr_bugs": [265115], | |
183 "description": "Async Readpixels with GL_BGRA format is broken on Haswell
chipset on Macs", | |
184 "os": { | |
185 "type": "macosx" | |
186 }, | |
187 "vendor_id": "0x8086", | |
188 "device_id": ["0x0402", "0x0406", "0x040a", "0x0412", "0x0416", "0x041a", | |
189 "0x0a04", "0x0a16", "0x0a22", "0x0a26", "0x0a2a"], | |
190 "features": [ | |
191 "swizzle_rgba_for_async_readpixels" | |
192 ] | |
193 }, | |
194 { | |
195 "id": 30, | |
196 "cr_bugs": [237931], | |
197 "description": "Multisampling is buggy on OSX when multiple monitors are c
onnected", | |
198 "os": { | |
199 "type": "macosx" | |
200 }, | |
201 "features": [ | |
202 "disable_multimonitor_multisampling" | |
203 ] | |
204 }, | |
205 { | |
206 "id": 31, | |
207 "cr_bugs": [154715, 10068, 269829, 294779, 285292], | |
208 "description": "The Mali-Txxx driver does not guarantee flush ordering", | |
209 "gl_vendor": "ARM.*", | |
210 "gl_renderer": "Mali-T.*", | |
211 "features": [ | |
212 "use_virtualized_gl_contexts" | |
213 ] | |
214 }, | |
215 { | |
216 "id": 32, | |
217 "cr_bugs": [179815], | |
218 "description": "Share groups are not working on (older?) Broadcom drivers"
, | |
219 "os": { | |
220 "type": "android" | |
221 }, | |
222 "gl_vendor": "Broadcom.*", | |
223 "features": [ | |
224 "use_virtualized_gl_contexts" | |
225 ] | |
226 }, | |
227 { | |
228 "id": 33, | |
229 "description": "Share group-related crashes and poor context switching per
f on Imagination drivers", | |
230 "gl_vendor": "Imagination.*", | |
231 "features": [ | |
232 "use_virtualized_gl_contexts" | |
233 ] | |
234 }, | |
235 { | |
236 "id": 34, | |
237 "cr_bugs": [179250, 229643, 230896], | |
238 "description": "Share groups are not working on (older?) Vivante drivers", | |
239 "os": { | |
240 "type": "android" | |
241 }, | |
242 "gl_extensions": ".*GL_VIV_shader_binary.*", | |
243 "features": [ | |
244 "use_virtualized_gl_contexts" | |
245 ] | |
246 }, | |
247 { | |
248 "id": 35, | |
249 "cr_bugs": [163464], | |
250 "description": "Share-group related crashes on older NVIDIA drivers", | |
251 "os": { | |
252 "type": "android", | |
253 "version": { | |
254 "op": "<", | |
255 "value": "4.3" | |
256 } | |
257 }, | |
258 "gl_vendor": "NVIDIA.*", | |
259 "features": [ | |
260 "use_virtualized_gl_contexts" | |
261 ] | |
262 }, | |
263 { | |
264 "id": 36, | |
265 "cr_bugs": [163464, 233612], | |
266 "description": "Share-group related crashes on Qualcomm drivers", | |
267 "os": { | |
268 "type": "android", | |
269 "version": { | |
270 "op": "<", | |
271 "value": "4.3" | |
272 } | |
273 }, | |
274 "gl_vendor": "Qualcomm.*", | |
275 "features": [ | |
276 "use_virtualized_gl_contexts" | |
277 ] | |
278 }, | |
279 { | |
280 "id": 37, | |
281 "cr_bugs": [286468], | |
282 "description": "Program link fails in NVIDIA Linux if gl_Position is not s
et", | |
283 "os": { | |
284 "type": "linux" | |
285 }, | |
286 "vendor_id": "0x10de", | |
287 "gl_vendor": "NVIDIA.*", | |
288 "features": [ | |
289 "init_gl_position_in_vertex_shader" | |
290 ] | |
291 }, | |
292 { | |
293 "id": 38, | |
294 "cr_bugs": [289461], | |
295 "description": "Non-virtual contexts on Qualcomm sometimes cause out-of-or
der frames", | |
296 "os": { | |
297 "type": "android" | |
298 }, | |
299 "gl_vendor": "Qualcomm.*", | |
300 "features": [ | |
301 "use_virtualized_gl_contexts" | |
302 ] | |
303 }, | |
304 { | |
305 "id": 39, | |
306 "cr_bugs": [290391], | |
307 "description": "Multisampled renderbuffer allocation must be validated on
some Macs", | |
308 "os": { | |
309 "type": "macosx", | |
310 "version": { | |
311 "op": "<", | |
312 "value": "10.10" | |
313 } | |
314 }, | |
315 "features": [ | |
316 "validate_multisample_buffer_allocation" | |
317 ] | |
318 }, | |
319 { | |
320 "id": 40, | |
321 "cr_bugs": [290876], | |
322 "description": "Framebuffer discarding causes flickering on old ARM driver
s", | |
323 "os": { | |
324 "type": "android", | |
325 "version": { | |
326 "op": "<", | |
327 "value": "4.4" | |
328 } | |
329 }, | |
330 "gl_vendor": "ARM.*", | |
331 "features": [ | |
332 "disable_discard_framebuffer" | |
333 ] | |
334 }, | |
335 { | |
336 "id": 42, | |
337 "cr_bugs": [290876, 488463], | |
338 "description": "Framebuffer discarding causes flickering on older IMG driv
ers", | |
339 "os": { | |
340 "type": "android" | |
341 }, | |
342 "gl_vendor": "Imagination.*", | |
343 "gl_renderer": "PowerVR SGX 5.*", | |
344 "features": [ | |
345 "disable_discard_framebuffer" | |
346 ] | |
347 }, | |
348 { | |
349 "id": 43, | |
350 "cr_bugs": [299494], | |
351 "description": "Framebuffer discarding doesn't accept trivial attachments
on Vivante", | |
352 "os": { | |
353 "type": "android" | |
354 }, | |
355 "gl_extensions": ".*GL_VIV_shader_binary.*", | |
356 "features": [ | |
357 "disable_discard_framebuffer" | |
358 ] | |
359 }, | |
360 { | |
361 "id": 44, | |
362 "cr_bugs": [301988], | |
363 "description": "Framebuffer discarding causes jumpy scrolling on Mali driv
ers", | |
364 "os": { | |
365 "type": "chromeos" | |
366 }, | |
367 "features": [ | |
368 "disable_discard_framebuffer" | |
369 ] | |
370 }, | |
371 { | |
372 "id": 45, | |
373 "cr_bugs": [307751], | |
374 "description": "Unfold short circuit on Mac OS X", | |
375 "os": { | |
376 "type": "macosx" | |
377 }, | |
378 "features": [ | |
379 "unfold_short_circuit_as_ternary_operation" | |
380 ] | |
381 }, | |
382 { | |
383 "id": 48, | |
384 "description": "Force to use discrete GPU on older MacBookPro models", | |
385 "cr_bugs": [113703], | |
386 "os": { | |
387 "type": "macosx" | |
388 }, | |
389 "machine_model_name": ["MacBookPro"], | |
390 "machine_model_version": { | |
391 "op": "<", | |
392 "value": "8" | |
393 }, | |
394 "gpu_count": { | |
395 "op": "=", | |
396 "value": "2" | |
397 }, | |
398 "features": [ | |
399 "force_discrete_gpu" | |
400 ] | |
401 }, | |
402 { | |
403 "id": 49, | |
404 "cr_bugs": [309734], | |
405 "description": "The first draw operation from an idle state is slow", | |
406 "os": { | |
407 "type": "android" | |
408 }, | |
409 "gl_vendor": "Qualcomm.*", | |
410 "features": [ | |
411 "wake_up_gpu_before_drawing" | |
412 ] | |
413 }, | |
414 { | |
415 "id": 51, | |
416 "description": "TexSubImage is faster for full uploads on ANGLE", | |
417 "os": { | |
418 "type": "win" | |
419 }, | |
420 "gl_renderer": "ANGLE.*", | |
421 "features": [ | |
422 "texsubimage_faster_than_teximage" | |
423 ] | |
424 }, | |
425 { | |
426 "id": 52, | |
427 "cr_bugs": [449116, 471200, 612474, 682075], | |
428 "description": "ES3 MSAA is broken on Qualcomm", | |
429 "os": { | |
430 "type": "android", | |
431 "version": { | |
432 "op": "<", | |
433 "value": "6.0" | |
434 } | |
435 }, | |
436 "gl_vendor": "Qualcomm.*", | |
437 "features": [ | |
438 "disable_chromium_framebuffer_multisample" | |
439 ] | |
440 }, | |
441 { | |
442 "id": 54, | |
443 "cr_bugs": [124764, 349137], | |
444 "description": "Clear uniforms before first program use on all platforms", | |
445 "exceptions": [ | |
446 { | |
447 "os": { | |
448 "type": "macosx" | |
449 } | |
450 } | |
451 ], | |
452 "features": [ | |
453 "clear_uniforms_before_first_program_use" | |
454 ] | |
455 }, | |
456 { | |
457 "id": 55, | |
458 "cr_bugs": [333885], | |
459 "description": "Mesa drivers in Linux handle varyings without static use i
ncorrectly", | |
460 "os": { | |
461 "type": "linux" | |
462 }, | |
463 "driver_vendor": "Mesa", | |
464 "features": [ | |
465 "count_all_in_varyings_packing" | |
466 ] | |
467 }, | |
468 { | |
469 "id": 56, | |
470 "cr_bugs": [333885], | |
471 "description": "Mesa drivers in ChromeOS handle varyings without static us
e incorrectly", | |
472 "os": { | |
473 "type": "chromeos" | |
474 }, | |
475 "driver_vendor": "Mesa", | |
476 "features": [ | |
477 "count_all_in_varyings_packing" | |
478 ] | |
479 }, | |
480 { | |
481 "id": 59, | |
482 "description": "Multisampling is buggy in Intel IvyBridge", | |
483 "cr_bugs": [116370], | |
484 "os": { | |
485 "type": "linux" | |
486 }, | |
487 "vendor_id": "0x8086", | |
488 "device_id": ["0x0152", "0x0156", "0x015a", "0x0162", "0x0166"], | |
489 "features": [ | |
490 "disable_chromium_framebuffer_multisample" | |
491 ] | |
492 }, | |
493 { | |
494 "id": 64, | |
495 "description": "Linux AMD drivers incorrectly return initial value of 1 fo
r TEXTURE_MAX_ANISOTROPY", | |
496 "cr_bugs": [348237], | |
497 "os": { | |
498 "type": "linux" | |
499 }, | |
500 "vendor_id": "0x1002", | |
501 "features": [ | |
502 "init_texture_max_anisotropy" | |
503 ] | |
504 }, | |
505 { | |
506 "id": 65, | |
507 "description": "Linux NVIDIA drivers don't have the correct defaults for v
ertex attributes", | |
508 "cr_bugs": [351528], | |
509 "os": { | |
510 "type": "linux" | |
511 }, | |
512 "vendor_id": "0x10de", | |
513 "gl_vendor": "NVIDIA.*", | |
514 "features": [ | |
515 "init_vertex_attributes" | |
516 ] | |
517 }, | |
518 { | |
519 "id": 68, | |
520 "description": "Disable partial swaps on Mesa drivers (detected with GL_RE
NDERER)", | |
521 "cr_bugs": [339493], | |
522 "os": { | |
523 "type": "linux" | |
524 }, | |
525 "gl_type": "gl", | |
526 "gl_renderer": ".*Mesa.*", | |
527 "features": [ | |
528 "disable_post_sub_buffers_for_onscreen_surfaces" | |
529 ] | |
530 }, | |
531 { | |
532 "id": 69, | |
533 "description": "Some shaders in Skia need more than the min available vert
ex and fragment shader uniform vectors in case of OSMesa", | |
534 "cr_bugs": [174845], | |
535 "driver_vendor": "osmesa", | |
536 "features": [ | |
537 "max_fragment_uniform_vectors_32", | |
538 "max_varying_vectors_16", | |
539 "max_vertex_uniform_vectors_256" | |
540 ] | |
541 }, | |
542 { | |
543 "id": 70, | |
544 "description": "Disable D3D11 on older nVidia drivers", | |
545 "cr_bugs": [349929], | |
546 "os": { | |
547 "type": "win" | |
548 }, | |
549 "vendor_id": "0x10de", | |
550 "driver_version": { | |
551 "op": "<=", | |
552 "value": "8.17.12.6973" | |
553 }, | |
554 "features": [ | |
555 "disable_d3d11" | |
556 ] | |
557 }, | |
558 { | |
559 "id": 71, | |
560 "description": "Vivante's support of OES_standard_derivatives is buggy", | |
561 "cr_bugs": [368005], | |
562 "os": { | |
563 "type": "android" | |
564 }, | |
565 "gl_extensions": ".*GL_VIV_shader_binary.*", | |
566 "disabled_extensions": [ | |
567 "GL_OES_standard_derivatives" | |
568 ] | |
569 }, | |
570 { | |
571 "id": 72, | |
572 "description": "Use virtual contexts on NVIDIA with GLES 3.1", | |
573 "cr_bugs": [369316], | |
574 "os": { | |
575 "type": "android" | |
576 }, | |
577 "gl_type": "gles", | |
578 "gl_version": { | |
579 "op": "=", | |
580 "value": "3.1" | |
581 }, | |
582 "gl_vendor": "NVIDIA.*", | |
583 "features": [ | |
584 "use_virtualized_gl_contexts" | |
585 ] | |
586 }, | |
587 ) // LONG_STRING_CONST macro | |
588 // Avoid C2026 (string too big) error on VisualStudio. | |
589 LONG_STRING_CONST( | |
590 { | |
591 "id": 74, | |
592 "cr_bugs": [278606, 382686], | |
593 "description": "Testing EGL sync fences was broken on most Qualcomm driver
s", | |
594 "os": { | |
595 "type": "android", | |
596 "version": { | |
597 "op": "<=", | |
598 "value": "4.4.4" | |
599 } | |
600 }, | |
601 "gl_vendor": "Qualcomm.*", | |
602 "disabled_extensions": [ | |
603 "EGL_KHR_fence_sync" | |
604 ] | |
605 }, | |
606 { | |
607 "id": 75, | |
608 "description": "Mali-4xx support of EXT_multisampled_render_to_texture is
buggy on Android < 4.3", | |
609 "cr_bugs": [362435], | |
610 "os": { | |
611 "type": "android", | |
612 "version": { | |
613 "op": "<", | |
614 "value": "4.3" | |
615 } | |
616 }, | |
617 "gl_vendor": "ARM.*", | |
618 "gl_renderer": ".*Mali-4.*", | |
619 "disabled_extensions": [ | |
620 "GL_EXT_multisampled_render_to_texture" | |
621 ] | |
622 }, | |
623 { | |
624 "id": 76, | |
625 "cr_bugs": [371530], | |
626 "description": "Testing EGL sync fences was broken on IMG", | |
627 "os": { | |
628 "type": "android", | |
629 "version": { | |
630 "op": "<=", | |
631 "value": "4.4.4" | |
632 } | |
633 }, | |
634 "gl_vendor": "Imagination Technologies.*", | |
635 "disabled_extensions": [ | |
636 "EGL_KHR_fence_sync" | |
637 ] | |
638 }, | |
639 { | |
640 "id": 77, | |
641 "cr_bugs": [378691, 373360, 371530, 398964], | |
642 "description": "Testing fences was broken on Mali ES2 drivers", | |
643 "os": { | |
644 "type": "android", | |
645 "version": { | |
646 "op": "<=", | |
647 "value": "4.4.4" | |
648 } | |
649 }, | |
650 "gl_vendor": "ARM.*", | |
651 "gl_renderer": "Mali.*", | |
652 "gl_type": "gles", | |
653 "gl_version": { | |
654 "op": "<", | |
655 "value": "3.0" | |
656 }, | |
657 "disabled_extensions": [ | |
658 "EGL_KHR_fence_sync" | |
659 ] | |
660 }, | |
661 { | |
662 "id": 78, | |
663 "cr_bugs": [378691, 373360, 371530], | |
664 "description": "Testing fences was broken on Broadcom drivers", | |
665 "os": { | |
666 "type": "android", | |
667 "version": { | |
668 "op": "<=", | |
669 "value": "4.4.4" | |
670 } | |
671 }, | |
672 "gl_vendor": "Broadcom.*", | |
673 "disabled_extensions": [ | |
674 "EGL_KHR_fence_sync" | |
675 ] | |
676 }, | |
677 { | |
678 "id": 82, | |
679 "description": "PBO mappings segfault on certain older Qualcomm drivers", | |
680 "cr_bugs": [394510], | |
681 "os": { | |
682 "type": "android", | |
683 "version": { | |
684 "op": "<", | |
685 "value": "4.3" | |
686 } | |
687 }, | |
688 "gl_vendor": "Qualcomm.*", | |
689 "features": [ | |
690 "disable_async_readpixels" | |
691 ] | |
692 }, | |
693 { | |
694 "id": 86, | |
695 "description": "Disable use of Direct3D 11 on Matrox video cards", | |
696 "cr_bugs": [395861], | |
697 "os": { | |
698 "type": "win" | |
699 }, | |
700 "vendor_id": "0x102b", | |
701 "features": [ | |
702 "disable_d3d11" | |
703 ] | |
704 }, | |
705 { | |
706 "id": 87, | |
707 "description": "Disable use of Direct3D 11 on older AMD drivers", | |
708 "cr_bugs": [402134], | |
709 "os": { | |
710 "type": "win" | |
711 }, | |
712 "vendor_id": "0x1002", | |
713 "driver_date": { | |
714 "op": "<", | |
715 "value": "2011.1" | |
716 }, | |
717 "features": [ | |
718 "disable_d3d11" | |
719 ] | |
720 }, | |
721 { | |
722 "id": 88, | |
723 "description": "Always rewrite vec/mat constructors to be consistent", | |
724 "cr_bugs": [398694], | |
725 "features": [ | |
726 "scalarize_vec_and_mat_constructor_args" | |
727 ] | |
728 }, | |
729 { | |
730 "id": 89, | |
731 "description": "Mac drivers handle struct scopes incorrectly", | |
732 "cr_bugs": [403957], | |
733 "os": { | |
734 "type": "macosx" | |
735 }, | |
736 "features": [ | |
737 "regenerate_struct_names" | |
738 ] | |
739 }, | |
740 { | |
741 "id": 90, | |
742 "description": "Linux AMD drivers handle struct scopes incorrectly", | |
743 "cr_bugs": [403957], | |
744 "os": { | |
745 "type": "linux" | |
746 }, | |
747 "vendor_id": "0x1002", | |
748 "features": [ | |
749 "regenerate_struct_names" | |
750 ] | |
751 }, | |
752 { | |
753 "id": 91, | |
754 "cr_bugs": [150500, 414816], | |
755 "description": "ETC1 non-power-of-two sized textures crash older IMG drive
rs", | |
756 "os": { | |
757 "type": "android" | |
758 }, | |
759 "gl_vendor": "Imagination.*", | |
760 "gl_renderer": "PowerVR SGX 5.*", | |
761 "features": [ | |
762 "etc1_power_of_two_only" | |
763 ] | |
764 }, | |
765 { | |
766 "id": 92, | |
767 "description": "Old Intel drivers cannot reliably support D3D11", | |
768 "cr_bugs": [363721], | |
769 "os": { | |
770 "type": "win" | |
771 }, | |
772 "vendor_id": "0x8086", | |
773 "driver_version": { | |
774 "op": "<", | |
775 "value": "8.16" | |
776 }, | |
777 "features": [ | |
778 "disable_d3d11" | |
779 ] | |
780 }, | |
781 { | |
782 "id": 93, | |
783 "description": "The GL implementation on the Android emulator has problems
with PBOs.", | |
784 "cr_bugs": [340882], | |
785 "os": { | |
786 "type": "android" | |
787 }, | |
788 "gl_vendor": "VMware.*", | |
789 "gl_renderer": "Gallium.*", | |
790 "gl_type": "gles", | |
791 "gl_version": { | |
792 "op": "=", | |
793 "value": "3.0" | |
794 }, | |
795 "features": [ | |
796 "disable_async_readpixels" | |
797 ] | |
798 }, | |
799 { | |
800 "id": 94, | |
801 "description": "Disable EGL_KHR_wait_sync on NVIDIA with GLES 3.1", | |
802 "cr_bugs": [433057], | |
803 "os": { | |
804 "type": "android", | |
805 "version": { | |
806 "op": "<=", | |
807 "value": "5.0.2" | |
808 } | |
809 }, | |
810 "gl_vendor": "NVIDIA.*", | |
811 "gl_type": "gles", | |
812 "gl_version": { | |
813 "op": "=", | |
814 "value": "3.1" | |
815 }, | |
816 "disabled_extensions": [ | |
817 "EGL_KHR_wait_sync" | |
818 ] | |
819 }, | |
820 { | |
821 "id": 95, | |
822 "cr_bugs": [421271], | |
823 "description": "glClear does not always work on these drivers", | |
824 "os": { | |
825 "type": "android" | |
826 }, | |
827 "gl_type": "gles", | |
828 "gl_version": { | |
829 "op": "<", | |
830 "value": "3.0" | |
831 }, | |
832 "gl_vendor": "Imagination.*", | |
833 "features": [ | |
834 "gl_clear_broken" | |
835 ] | |
836 }, | |
837 { | |
838 "id": 97, | |
839 "description": "Multisampling has poor performance in Intel BayTrail", | |
840 "cr_bugs": [443517], | |
841 "os": { | |
842 "type": "android" | |
843 }, | |
844 "gl_vendor": "Intel", | |
845 "gl_renderer": "Intel.*BayTrail", | |
846 "features": [ | |
847 "disable_chromium_framebuffer_multisample" | |
848 ] | |
849 }, | |
850 { | |
851 "id": 98, | |
852 "description": "PowerVR SGX 540 drivers throw GL_OUT_OF_MEMORY error when
a buffer object's size is set to 0", | |
853 "cr_bugs": [451501], | |
854 "os": { | |
855 "type": "android" | |
856 }, | |
857 "gl_vendor": "Imagination.*", | |
858 "gl_renderer": "PowerVR SGX 540", | |
859 "features": [ | |
860 "use_non_zero_size_for_client_side_stream_buffers" | |
861 ] | |
862 }, | |
863 { | |
864 "id": 99, | |
865 "description": "Qualcomm driver before Lollipop deletes egl sync objects a
fter context destruction", | |
866 "cr_bugs": [453857], | |
867 "os": { | |
868 "type": "android", | |
869 "version": { | |
870 "op": "<", | |
871 "value": "5.0.0" | |
872 } | |
873 }, | |
874 "gl_vendor": "Qualcomm.*", | |
875 "features": [ | |
876 "ignore_egl_sync_failures" | |
877 ] | |
878 }, | |
879 { | |
880 "id": 100, | |
881 "description": "Disable Direct3D11 on systems with AMD switchable graphics
", | |
882 "cr_bugs": [451420], | |
883 "os": { | |
884 "type": "win" | |
885 }, | |
886 "multi_gpu_style": "amd_switchable", | |
887 "features": [ | |
888 "disable_d3d11" | |
889 ] | |
890 }, | |
891 { | |
892 "id": 101, | |
893 "description": "The Mali-Txxx driver hangs when reading from currently dis
played buffer", | |
894 "cr_bugs": [457511], | |
895 "os": { | |
896 "type": "chromeos" | |
897 }, | |
898 "gl_vendor": "ARM.*", | |
899 "gl_renderer": "Mali-T.*", | |
900 "features": [ | |
901 "disable_post_sub_buffers_for_onscreen_surfaces" | |
902 ] | |
903 }, | |
904 { | |
905 "id": 102, | |
906 "description": "Adreno 420 driver loses FBO attachment contents on bound F
BO deletion", | |
907 "cr_bugs": [457027], | |
908 "os": { | |
909 "type": "android", | |
910 "version": { | |
911 "op": ">", | |
912 "value": "5.0.2" | |
913 } | |
914 }, | |
915 "gl_renderer": "Adreno \\(TM\\) 4.*", | |
916 "features": [ | |
917 "unbind_attachments_on_bound_render_fbo_delete" | |
918 ] | |
919 }, | |
920 { | |
921 "id": 103, | |
922 "description": "Adreno 420 driver drops draw calls after FBO invalidation"
, | |
923 "cr_bugs": [443060], | |
924 "os": { | |
925 "type": "android" | |
926 }, | |
927 "gl_renderer": "Adreno \\(TM\\) 4.*", | |
928 "features": [ | |
929 "disable_discard_framebuffer" | |
930 ] | |
931 }, | |
932 { | |
933 "id": 104, | |
934 "description": "EXT_occlusion_query_boolean hangs on MediaTek MT8135 pre-L
ollipop", | |
935 "os": { | |
936 "type": "android", | |
937 "version": { | |
938 "op": "<", | |
939 "value": "5.0.0" | |
940 } | |
941 }, | |
942 "gl_vendor": "Imagination.*", | |
943 "gl_renderer": "PowerVR Rogue Han", | |
944 "disabled_extensions": [ | |
945 "GL_EXT_occlusion_query_boolean" | |
946 ] | |
947 }, | |
948 { | |
949 "id": 105, | |
950 "cr_bugs": [449488,451230], | |
951 "description": "Framebuffer discarding causes corruption on Mali-4xx", | |
952 "gl_renderer": "Mali-4.*", | |
953 "os": { | |
954 "type": "android" | |
955 }, | |
956 "features": [ | |
957 "disable_discard_framebuffer" | |
958 ] | |
959 }, | |
960 { | |
961 "id": 106, | |
962 "description": "EXT_occlusion_query_boolean hangs on PowerVR SGX 544 (IMG)
drivers", | |
963 "os": { | |
964 "type": "android" | |
965 }, | |
966 "gl_vendor": "Imagination.*", | |
967 "gl_renderer": "PowerVR SGX 544", | |
968 "disabled_extensions": [ | |
969 "GL_EXT_occlusion_query_boolean" | |
970 ] | |
971 }, | |
972 { | |
973 "id": 107, | |
974 "description": "Workaround IMG PowerVR G6xxx drivers bugs", | |
975 "cr_bugs": [480992], | |
976 "os": { | |
977 "type": "android", | |
978 "version": { | |
979 "op": "between", | |
980 "value": "5.0.0", | |
981 "value2": "5.1.99" | |
982 } | |
983 }, | |
984 "gl_vendor": "Imagination.*", | |
985 "gl_renderer": "PowerVR Rogue.*", | |
986 "driver_version": { | |
987 "op": "between", | |
988 "value": "1.3", | |
989 "value2": "1.4" | |
990 }, | |
991 "features": [ | |
992 "avoid_egl_image_target_texture_reuse" | |
993 ], | |
994 "disabled_extensions": [ | |
995 "EGL_KHR_wait_sync" | |
996 ] | |
997 }, | |
998 { | |
999 "id": 108, | |
1000 "cr_bugs": [449150], | |
1001 "description": "Mali-4xx does not support GL_RGB format", | |
1002 "gl_vendor": "ARM.*", | |
1003 "gl_renderer": ".*Mali-4.*", | |
1004 "features": [ | |
1005 "disable_gl_rgb_format" | |
1006 ] | |
1007 }, | |
1008 { | |
1009 "id": 109, | |
1010 "cr_bugs": [449150, 514510], | |
1011 "description": "MakeCurrent is slow on Linux with NVIDIA drivers", | |
1012 "vendor_id": "0x10de", | |
1013 "os": { | |
1014 "type": "linux" | |
1015 }, | |
1016 "gl_vendor": "NVIDIA.*", | |
1017 "features": [ | |
1018 "use_virtualized_gl_contexts" | |
1019 ] | |
1020 }, | |
1021 { | |
1022 "id": 110, | |
1023 "description": "EGL Sync server causes crashes on Adreno 2xx and 3xx drive
rs", | |
1024 "cr_bugs": [482298], | |
1025 "os": { | |
1026 "type": "android" | |
1027 }, | |
1028 "gl_vendor": "Qualcomm.*", | |
1029 "gl_renderer": "Adreno \\(TM\\) [23].*", | |
1030 "driver_version": { | |
1031 "op": "<", | |
1032 "value": "95" | |
1033 }, | |
1034 "disabled_extensions": [ | |
1035 "EGL_KHR_wait_sync" | |
1036 ] | |
1037 }, | |
1038 { | |
1039 "id": 111, | |
1040 "description": "Discard Framebuffer breaks WebGL on Mali-4xx Linux", | |
1041 "cr_bugs": [485814], | |
1042 "os": { | |
1043 "type": "linux" | |
1044 }, | |
1045 "gl_vendor": "ARM.*", | |
1046 "gl_renderer": ".*Mali-4.*", | |
1047 "features": [ | |
1048 "disable_discard_framebuffer" | |
1049 ] | |
1050 }, | |
1051 { | |
1052 "id": 112, | |
1053 "cr_bugs": [477514], | |
1054 "description": "EXT_disjoint_timer_query fails after 2 queries on adreno 3
xx in lollypop", | |
1055 "os": { | |
1056 "type": "android", | |
1057 "version": { | |
1058 "op": ">=", | |
1059 "value": "5.0.0" | |
1060 } | |
1061 }, | |
1062 "gl_vendor": "Qualcomm.*", | |
1063 "gl_renderer": "Adreno \\(TM\\) 3.*", | |
1064 "features": [ | |
1065 "disable_timestamp_queries" | |
1066 ] | |
1067 }, | |
1068 { | |
1069 "id": 113, | |
1070 "cr_bugs": [477514], | |
1071 "description": "EXT_disjoint_timer_query fails after 256 queries on adreno
4xx", | |
1072 "os": { | |
1073 "type": "android" | |
1074 }, | |
1075 "gl_renderer": "Adreno \\(TM\\) 4.*", | |
1076 "disabled_extensions": [ | |
1077 "GL_EXT_disjoint_timer_query" | |
1078 ] | |
1079 }, | |
1080 { | |
1081 "id": 115, | |
1082 "cr_bugs": [462553], | |
1083 "description": "glGetIntegerv with GL_GPU_DISJOINT_EXT causes GL_INVALID_E
NUM error", | |
1084 "os": { | |
1085 "type": "android" | |
1086 }, | |
1087 "gl_vendor": "NVIDIA.*", | |
1088 "gl_type": "gles", | |
1089 "gl_version": { | |
1090 "op": ">=", | |
1091 "value": "3.0" | |
1092 }, | |
1093 "disabled_extensions": [ | |
1094 "GL_EXT_disjoint_timer_query" | |
1095 ] | |
1096 }, | |
1097 { | |
1098 "id": 116, | |
1099 "description": "Adreno 420 support for EXT_multisampled_render_to_texture
is buggy on Android < 5.1", | |
1100 "cr_bugs": [490379], | |
1101 "os": { | |
1102 "type": "android", | |
1103 "version": { | |
1104 "op": "<", | |
1105 "value": "5.1" | |
1106 } | |
1107 }, | |
1108 "gl_renderer": "Adreno \\(TM\\) 4.*", | |
1109 "disabled_extensions": [ | |
1110 "GL_EXT_multisampled_render_to_texture" | |
1111 ] | |
1112 }, | |
1113 { | |
1114 "id": 117, | |
1115 "description": "GL_KHR_blend_equation_advanced breaks blending on Adreno 4
xx", | |
1116 "cr_bugs": [488485], | |
1117 "os": { | |
1118 "type": "android" | |
1119 }, | |
1120 "gl_vendor": "Qualcomm.*", | |
1121 "gl_renderer": ".*4\\d\\d", | |
1122 "features": [ | |
1123 "disable_blend_equation_advanced" | |
1124 ] | |
1125 }, | |
1126 { | |
1127 "id": 118, | |
1128 "cr_bugs": [477306], | |
1129 "description": "NVIDIA 331 series drivers shader compiler may crash when a
ttempting to optimize pow()", | |
1130 "os": { | |
1131 "type": "linux" | |
1132 }, | |
1133 "driver_version": { | |
1134 "op": "<=", | |
1135 "value": "331" | |
1136 }, | |
1137 "vendor_id": "0x10de", | |
1138 "gl_vendor": "NVIDIA.*", | |
1139 "features": [ | |
1140 "remove_pow_with_constant_exponent" | |
1141 ] | |
1142 }, | |
1143 { | |
1144 "id": 119, | |
1145 "description": "Context lost recovery often fails on Mali-400/450 on Andro
id.", | |
1146 "cr_bugs": [496438], | |
1147 "os": { | |
1148 "type": "android" | |
1149 }, | |
1150 "gl_vendor": "ARM.*", | |
1151 "gl_renderer": ".*Mali-4.*", | |
1152 "features": [ | |
1153 "exit_on_context_lost" | |
1154 ] | |
1155 }, | |
1156 { | |
1157 "id": 120, | |
1158 "description": "CHROMIUM_copy_texture is slow on Mali pre-Lollipop", | |
1159 "cr_bugs": [498443], | |
1160 "os": { | |
1161 "type": "android", | |
1162 "version": { | |
1163 "op": "<", | |
1164 "value": "5.0.0" | |
1165 } | |
1166 }, | |
1167 "gl_vendor": "ARM.*", | |
1168 "gl_renderer": "Mali.*", | |
1169 "features": [ | |
1170 "max_copy_texture_chromium_size_262144" | |
1171 ] | |
1172 }, | |
1173 { | |
1174 "id": 123, | |
1175 "cr_bugs": [344330], | |
1176 "description": "NVIDIA drivers before 346 lack features in NV_path_renderi
ng and related extensions to implement driver level path rendering.", | |
1177 "vendor_id": "0x10de", | |
1178 "os": { | |
1179 "type": "linux" | |
1180 }, | |
1181 "driver_version": { | |
1182 "op": "<", | |
1183 "value": "346" | |
1184 }, | |
1185 "disabled_extensions": ["GL_NV_path_rendering"] | |
1186 }, | |
1187 { | |
1188 "id": 125, | |
1189 "description": "glFinish doesn't clear caches on Android", | |
1190 "cr_bugs": [509727], | |
1191 "os": { | |
1192 "type": "android" | |
1193 }, | |
1194 "gl_renderer": "Adreno.*", | |
1195 "features": [ | |
1196 "unbind_egl_context_to_flush_driver_caches" | |
1197 ] | |
1198 }, | |
1199 { | |
1200 "id": 126, | |
1201 "description": "Program binaries contain incorrect bound attribute locatio
ns on Adreno 3xx GPUs", | |
1202 "cr_bugs": [510637], | |
1203 "os": { | |
1204 "type": "android" | |
1205 }, | |
1206 "gl_renderer": "Adreno \\(TM\\) 3.*", | |
1207 "features": [ | |
1208 "disable_program_cache" | |
1209 ] | |
1210 }, | |
1211 { | |
1212 "id": 127, | |
1213 "description": "Android Adreno crashes on binding incomplete cube map text
ure to FBO", | |
1214 "cr_bugs": [518889], | |
1215 "os": { | |
1216 "type": "android" | |
1217 }, | |
1218 "gl_renderer": "Adreno.*", | |
1219 "features": [ | |
1220 "force_cube_map_positive_x_allocation" | |
1221 ] | |
1222 }, | |
1223 { | |
1224 "id": 128, | |
1225 "description": "Linux ATI drivers crash on binding incomplete cube map tex
ture to FBO", | |
1226 "cr_bugs": [518889], | |
1227 "os": { | |
1228 "type": "linux" | |
1229 }, | |
1230 "vendor_id": "0x1002", | |
1231 "features": [ | |
1232 "force_cube_map_positive_x_allocation" | |
1233 ] | |
1234 }, | |
1235 { | |
1236 "id": 129, | |
1237 // TODO(dshwang): Fix ANGLE crash. crbug.com/518889 | |
1238 "description": "ANGLE crash on glReadPixels from incomplete cube map textu
re", | |
1239 "cr_bugs": [518889], | |
1240 "os": { | |
1241 "type": "win" | |
1242 }, | |
1243 "gl_renderer": "ANGLE.*", | |
1244 "features": [ | |
1245 "force_cube_complete" | |
1246 ] | |
1247 }, | |
1248 { | |
1249 "id": 130, | |
1250 "description": "NVIDIA fails glReadPixels from incomplete cube map texture
", | |
1251 "cr_bugs": [518889], | |
1252 "vendor_id": "0x10de", | |
1253 "os": { | |
1254 "type": "linux" | |
1255 }, | |
1256 "gl_vendor": "NVIDIA.*", | |
1257 "features": [ | |
1258 "force_cube_complete" | |
1259 ] | |
1260 }, | |
1261 { | |
1262 "id": 131, | |
1263 "description": "Linux Mesa drivers crash on glTexSubImage2D() to texture s
torage bound to FBO", | |
1264 "cr_bugs": [521904], | |
1265 "os": { | |
1266 "type": "linux" | |
1267 }, | |
1268 "driver_vendor": "Mesa", | |
1269 "driver_version": { | |
1270 "op": "<", | |
1271 "value": "10.6" | |
1272 }, | |
1273 "features": [ | |
1274 "disable_texture_storage" | |
1275 ] | |
1276 }, | |
1277 { | |
1278 "id": 132, | |
1279 "description": "On Intel GPUs MSAA performance is not acceptable for GPU r
asterization", | |
1280 "cr_bugs": [527565], | |
1281 "vendor_id": "0x8086", | |
1282 "multi_gpu_category": "active", | |
1283 "features": [ | |
1284 "msaa_is_slow" | |
1285 ] | |
1286 }, | |
1287 { | |
1288 "id": 133, | |
1289 "description": "CHROMIUM_copy_texture with 1MB copy per flush to avoid unw
anted cache growth on Adreno", | |
1290 "cr_bugs": [542478], | |
1291 "os": { | |
1292 "type": "android" | |
1293 }, | |
1294 "gl_renderer": "Adreno.*", | |
1295 "features": [ | |
1296 "max_copy_texture_chromium_size_1048576" | |
1297 ] | |
1298 }, | |
1299 { | |
1300 "id": 134, | |
1301 "description": "glReadPixels fails on FBOs with SRGB_ALPHA textures", | |
1302 "cr_bugs": [550292], | |
1303 "os": { | |
1304 "type": "android", | |
1305 "version": { | |
1306 "op": "<", | |
1307 "value": "5.0" | |
1308 } | |
1309 }, | |
1310 "gl_vendor": "Qualcomm.*", | |
1311 "disabled_extensions": ["GL_EXT_sRGB"] | |
1312 }, | |
1313 { | |
1314 "id": 135, | |
1315 "description": "Screen flickers on 2009 iMacs", | |
1316 "cr_bugs": [543324], | |
1317 "os": { | |
1318 "type": "macosx" | |
1319 }, | |
1320 "vendor_id": "0x1002", | |
1321 "device_id": ["0x9440", "0x944a", "0x9488", "0x9490"], | |
1322 "features": [ | |
1323 "disable_overlay_ca_layers", | |
1324 "disable_post_sub_buffers_for_onscreen_surfaces" | |
1325 ] | |
1326 }, | |
1327 { | |
1328 "id": 136, | |
1329 "description": "glGenerateMipmap fails if the zero texture level is not se
t on some Mac drivers", | |
1330 "cr_bugs": [560499], | |
1331 "os": { | |
1332 "type": "macosx" | |
1333 }, | |
1334 "features": [ | |
1335 "set_zero_level_before_generating_mipmap" | |
1336 ] | |
1337 }, | |
1338 { | |
1339 "id": 137, | |
1340 "description": "NVIDIA fails glReadPixels from incomplete cube map texture
", | |
1341 "cr_bugs": [518889], | |
1342 "os": { | |
1343 "type": "android" | |
1344 }, | |
1345 "gl_vendor": "NVIDIA.*", | |
1346 "features": [ | |
1347 "force_cube_complete" | |
1348 ] | |
1349 }, | |
1350 { | |
1351 "id": 138, | |
1352 "description": "NVIDIA drivers before 346 lack features in NV_path_renderi
ng and related extensions to implement driver level path rendering.", | |
1353 "cr_bugs": [344330], | |
1354 "os": { | |
1355 "type": "android" | |
1356 }, | |
1357 "gl_vendor": "NVIDIA.*", | |
1358 "driver_version": { | |
1359 "op": "<", | |
1360 "value": "346" | |
1361 }, | |
1362 "disabled_extensions": ["GL_NV_path_rendering"] | |
1363 }, | |
1364 { | |
1365 "id": 139, | |
1366 "description": "Mesa drivers wrongly report supporting GL_EXT_texture_rg w
ith GLES 2.0 prior version 11.1", | |
1367 "cr_bugs": [545904], | |
1368 "os": { | |
1369 "type": "linux" | |
1370 }, | |
1371 "driver_vendor": "Mesa", | |
1372 "driver_version": { | |
1373 "op": "<", | |
1374 "value": "11.1" | |
1375 }, | |
1376 "gl_type": "gles", | |
1377 "gl_version": { | |
1378 "op": "<", | |
1379 "value": "3.0" | |
1380 }, | |
1381 "disabled_extensions": [ | |
1382 "GL_EXT_texture_rg" | |
1383 ] | |
1384 }, | |
1385 { | |
1386 "id": 140, | |
1387 "description": "glReadPixels fails on FBOs with SRGB_ALPHA textures, Nexus
5X", | |
1388 "cr_bugs": [550292, 565179], | |
1389 "os": { | |
1390 "type": "android" | |
1391 // Originally on Android 6.0. Expect it to fail in later versions. | |
1392 }, | |
1393 "gl_vendor": "Qualcomm", | |
1394 "gl_renderer": "Adreno \\(TM\\) 4.*", // Originally on 418. | |
1395 "disabled_extensions": ["GL_EXT_sRGB"] | |
1396 }, | |
1397 { | |
1398 "id": 141, | |
1399 "cr_bugs": [570897], | |
1400 "description": "Framebuffer discarding can hurt performance on non-tilers"
, | |
1401 "os": { | |
1402 "type": "win" | |
1403 }, | |
1404 "features": [ | |
1405 "disable_discard_framebuffer" | |
1406 ] | |
1407 }, | |
1408 { | |
1409 "id": 142, | |
1410 "cr_bugs": [563714], | |
1411 "description": "Pack parameters work incorrectly with pack buffer bound", | |
1412 "os": { | |
1413 "type": "linux" | |
1414 }, | |
1415 "vendor_id": "0x10de", | |
1416 "gl_vendor": "NVIDIA.*", | |
1417 "features": [ | |
1418 "pack_parameters_workaround_with_pack_buffer" | |
1419 ] | |
1420 }, | |
1421 { | |
1422 "id": 143, | |
1423 "description": "Timer queries crash on Intel GPUs on Linux", | |
1424 "cr_bugs": [540543, 576991], | |
1425 "os": { | |
1426 "type": "linux" | |
1427 }, | |
1428 "vendor_id": "0x8086", | |
1429 "driver_vendor": "Mesa", | |
1430 "disabled_extensions": [ | |
1431 "GL_ARB_timer_query", | |
1432 "GL_EXT_timer_query" | |
1433 ] | |
1434 }, | |
1435 { | |
1436 "id": 144, | |
1437 "cr_bugs": [563714], | |
1438 "description": "Pack parameters work incorrectly with pack buffer bound", | |
1439 "os": { | |
1440 "type": "macosx" | |
1441 }, | |
1442 "features": [ | |
1443 "pack_parameters_workaround_with_pack_buffer" | |
1444 ] | |
1445 }, | |
1446 { | |
1447 "id": 145, | |
1448 "cr_bugs": [585250], | |
1449 "description": "EGLImage ref counting across EGLContext/threads is broken"
, | |
1450 "os": { | |
1451 "type": "android" | |
1452 }, | |
1453 "gl_vendor": "Qualcomm.*", | |
1454 "gl_renderer": "Adreno \\(TM\\) [45].*", | |
1455 "features": [ | |
1456 "broken_egl_image_ref_counting" | |
1457 ] | |
1458 }, | |
1459 ) // LONG_STRING_CONST macro | |
1460 // Avoid C2026 (string too big) error on VisualStudio. | |
1461 LONG_STRING_CONST( | |
1462 { | |
1463 "id": 147, | |
1464 "description": "Limit max texure size to 4096 on all of Android", | |
1465 "os": { | |
1466 "type": "android" | |
1467 }, | |
1468 "features": [ | |
1469 "max_texture_size_limit_4096" | |
1470 ] | |
1471 }, | |
1472 { | |
1473 "id": 148, | |
1474 "description": "Mali-4xx GPU on JB doesn't support DetachGLContext", | |
1475 "os": { | |
1476 "type": "android", | |
1477 "version": { | |
1478 "op": "<=", | |
1479 "value": "4.4.4" | |
1480 } | |
1481 }, | |
1482 "gl_renderer": ".*Mali-4.*", | |
1483 "features": [ | |
1484 "surface_texture_cant_detach" | |
1485 ] | |
1486 }, | |
1487 { | |
1488 "id": 149, | |
1489 "description": "Direct composition flashes black initially on Win <10", | |
1490 "cr_bugs": [588588], | |
1491 "os": { | |
1492 "type": "win", | |
1493 "version": { | |
1494 "op": "<", | |
1495 "value": "10.0" | |
1496 } | |
1497 }, | |
1498 "features": [ | |
1499 "disable_direct_composition" | |
1500 ] | |
1501 }, | |
1502 { | |
1503 "id": 150, | |
1504 "cr_bugs": [563714], | |
1505 "description": "Alignment works incorrectly with unpack buffer bound", | |
1506 "os": { | |
1507 "type": "linux" | |
1508 }, | |
1509 "vendor_id": "0x10de", | |
1510 "gl_vendor": "NVIDIA.*", | |
1511 "features": [ | |
1512 "unpack_alignment_workaround_with_unpack_buffer" | |
1513 ] | |
1514 }, | |
1515 { | |
1516 "id": 151, | |
1517 "cr_bugs": [563714], | |
1518 "description": "Alignment works incorrectly with unpack buffer bound", | |
1519 "os": { | |
1520 "type": "macosx" | |
1521 }, | |
1522 "features": [ | |
1523 "unpack_alignment_workaround_with_unpack_buffer" | |
1524 ] | |
1525 }, | |
1526 { | |
1527 "id": 152, | |
1528 "cr_bugs": [581777], | |
1529 "description": "copyTexImage2D fails when reading from IOSurface on multip
le GPU types.", | |
1530 "os": { | |
1531 "type": "macosx" | |
1532 }, | |
1533 "features": [ | |
1534 "use_intermediary_for_copy_texture_image" | |
1535 ] | |
1536 }, | |
1537 { | |
1538 "id": 153, | |
1539 "cr_bugs": [594016], | |
1540 "description": "Vivante GC1000 with EXT_multisampled_render_to_texture fai
ls glReadPixels", | |
1541 "os": { | |
1542 "type": "linux" | |
1543 }, | |
1544 "gl_vendor": "Vivante Corporation", | |
1545 "gl_renderer": "Vivante GC1000", | |
1546 "disabled_extensions": [ | |
1547 "GL_EXT_multisampled_render_to_texture" | |
1548 ] | |
1549 }, | |
1550 { | |
1551 "id": 156, | |
1552 "cr_bugs": [598474], | |
1553 "description": "glEGLImageTargetTexture2DOES crashes", | |
1554 "os": { | |
1555 "type": "android", | |
1556 "version": { | |
1557 "op": "between", | |
1558 "value": "4.4", | |
1559 "value2": "4.4.4" | |
1560 } | |
1561 }, | |
1562 "gl_vendor": "Imagination.*", | |
1563 "gl_renderer": "PowerVR SGX 544MP", | |
1564 "features": [ | |
1565 "avda_dont_copy_pictures" | |
1566 ] | |
1567 }, | |
1568 { | |
1569 "id": 157, | |
1570 "description": "Testing fences was broken on Mali ES2 drivers for specific
phone models", | |
1571 "cr_bugs": [589814], | |
1572 "os": { | |
1573 "type": "android" | |
1574 }, | |
1575 "machine_model_name": ["SM-G361H", "SM-G531H"], | |
1576 "gl_vendor": "ARM.*", | |
1577 "gl_renderer": "Mali.*", | |
1578 "gl_type": "gles", | |
1579 "gl_version": { | |
1580 "op": "<", | |
1581 "value": "3.0" | |
1582 }, | |
1583 "disabled_extensions": [ | |
1584 "EGL_KHR_fence_sync" | |
1585 ] | |
1586 }, | |
1587 { | |
1588 "id": 158, | |
1589 "description": "IOSurface use becomes pathologically slow over time on 10.
10.", | |
1590 "cr_bugs": [580616], | |
1591 "os": { | |
1592 "type": "macosx", | |
1593 "version": { | |
1594 "op": "=", | |
1595 "value": "10.10" | |
1596 } | |
1597 }, | |
1598 "vendor_id": "0x10de", | |
1599 "device_id": ["0x0fd5"], | |
1600 "features": [ | |
1601 "disable_overlay_ca_layers" | |
1602 ] | |
1603 }, | |
1604 { | |
1605 "id": 159, | |
1606 "cr_bugs": [570897], | |
1607 "description": "Framebuffer discarding can hurt performance on non-tilers"
, | |
1608 "os": { | |
1609 "type": "linux" | |
1610 }, | |
1611 "vendor_id": "0x10de", | |
1612 "gl_vendor": "NVIDIA.*", | |
1613 "gl_type": "gl", | |
1614 "features": [ | |
1615 "disable_discard_framebuffer" | |
1616 ] | |
1617 }, | |
1618 { | |
1619 "id": 160, | |
1620 "cr_bugs": [601753], | |
1621 "description": "Framebuffer discarding not useful on NVIDIA Kepler archite
cture and later", | |
1622 "os": { | |
1623 "type": "linux" | |
1624 }, | |
1625 "vendor_id": "0x10de", | |
1626 "gl_vendor": "NVIDIA.*", | |
1627 "gl_type": "gles", | |
1628 "gl_version": { | |
1629 "op": ">=", | |
1630 "value": "3.0" | |
1631 }, | |
1632 "features": [ | |
1633 "disable_discard_framebuffer" | |
1634 ] | |
1635 }, | |
1636 { | |
1637 "id": 161, | |
1638 "cr_bugs": [601753], | |
1639 "description": "Framebuffer discarding not useful on NVIDIA Kepler archite
cture and later", | |
1640 "os": { | |
1641 "type": "chromeos" | |
1642 }, | |
1643 "vendor_id": "0x10de", | |
1644 "gl_vendor": "NVIDIA.*", | |
1645 "gl_type": "gles", | |
1646 "gl_version": { | |
1647 "op": ">=", | |
1648 "value": "3.0" | |
1649 }, | |
1650 "features": [ | |
1651 "disable_discard_framebuffer" | |
1652 ] | |
1653 }, | |
1654 { | |
1655 "id": 162, | |
1656 "cr_bugs": [601753], | |
1657 "description": "Framebuffer discarding not useful on NVIDIA Kepler archite
cture and later", | |
1658 "os": { | |
1659 "type": "android" | |
1660 }, | |
1661 "gl_vendor": "NVIDIA.*", | |
1662 "gl_type": "gles", | |
1663 "gl_version": { | |
1664 "op": ">=", | |
1665 "value": "3.0" | |
1666 }, | |
1667 "features": [ | |
1668 "disable_discard_framebuffer" | |
1669 ] | |
1670 }, | |
1671 { | |
1672 "id": 163, | |
1673 "cr_bugs": [607130], | |
1674 "description": "Multisample renderbuffers with format GL_RGB8 have perform
ance issues on Intel GPUs.", | |
1675 "os": { | |
1676 "type": "macosx" | |
1677 }, | |
1678 "vendor_id": "0x8086", | |
1679 "features": [ | |
1680 "disable_webgl_rgb_multisampling_usage" | |
1681 ] | |
1682 }, | |
1683 { | |
1684 "id": 164, | |
1685 "cr_bugs": [595948], | |
1686 "description": "glColorMask does not work for multisample renderbuffers on
old AMD GPUs.", | |
1687 "os": { | |
1688 "type": "macosx" | |
1689 }, | |
1690 "vendor_id": "0x1002", | |
1691 "device_id": ["0x6720", "0x6740", "0x6741", "0x68b8"], | |
1692 "features": [ | |
1693 "disable_multisampling_color_mask_usage" | |
1694 ] | |
1695 }, | |
1696 { | |
1697 "id": 165, | |
1698 "cr_bugs": [596774], | |
1699 "description": "Unpacking overlapping rows from unpack buffers is unstable
on NVIDIA GL driver", | |
1700 "gl_vendor": "NVIDIA.*", | |
1701 "features": [ | |
1702 "unpack_overlapping_rows_separately_unpack_buffer" | |
1703 ] | |
1704 }, | |
1705 { | |
1706 "id": 167, | |
1707 "cr_bugs": [610516], | |
1708 "description": "glEGLImageTargetTexture2DOES crashes on Mali-400", | |
1709 "os": { | |
1710 "type": "android" | |
1711 }, | |
1712 "gl_vendor": "ARM.*", | |
1713 "gl_renderer": ".*Mali-4.*", | |
1714 "features": [ | |
1715 "avda_dont_copy_pictures" | |
1716 ] | |
1717 }, | |
1718 { | |
1719 "id": 168, | |
1720 "description": "VirtualBox driver doesn't correctly support partial swaps.
", | |
1721 "cr_bugs": [613722], | |
1722 "os": { | |
1723 "type": "linux" | |
1724 }, | |
1725 "vendor_id": "0x80ee", | |
1726 "features": [ | |
1727 "disable_post_sub_buffers_for_onscreen_surfaces" | |
1728 ] | |
1729 }, | |
1730 { | |
1731 "id": 169, | |
1732 "description": "Mac Drivers store texture level parameters on int16_t that
overflow", | |
1733 "cr_bugs": [610153], | |
1734 "os": { | |
1735 "type": "macosx", | |
1736 "version": { | |
1737 "op": "<", | |
1738 "value": "10.12.2" | |
1739 } | |
1740 }, | |
1741 "features": [ | |
1742 "use_shadowed_tex_level_params" | |
1743 ] | |
1744 }, | |
1745 { | |
1746 "id": 170, | |
1747 "description": "Zero copy DXGI video hangs on shutdown on Win < 8.1", | |
1748 "cr_bugs": [621190], | |
1749 "os": { | |
1750 "type": "win", | |
1751 "version": { | |
1752 "op": "<", | |
1753 "value": "8.1" | |
1754 } | |
1755 }, | |
1756 "features": [ | |
1757 "disable_dxgi_zero_copy_video" | |
1758 ] | |
1759 }, | |
1760 { | |
1761 "id": 172, | |
1762 "description": "Limited enabling of Chromium GL_INTEL_framebuffer_CMAA", | |
1763 "cr_bugs": [535198], | |
1764 "exceptions" : [ | |
1765 { | |
1766 "os": { | |
1767 "type" : "chromeos" | |
1768 }, | |
1769 "vendor_id": "0x8086", | |
1770 "driver_vendor": "Mesa", | |
1771 "gl_vendor": "Intel.*", | |
1772 "gl_renderer": ".*Intel.*(Braswell|Broadwell|Skylake).*", | |
1773 "gl_type": "gles", | |
1774 "gl_version": { | |
1775 "op": ">=", | |
1776 "value": "3.1" | |
1777 } | |
1778 } | |
1779 ], | |
1780 "features": [ | |
1781 "disable_framebuffer_cmaa" | |
1782 ] | |
1783 }, | |
1784 { | |
1785 "id": 174, | |
1786 "description": "Adreno 4xx support for EXT_multisampled_render_to_texture
is buggy on Android 7.0", | |
1787 "cr_bugs": [612474], | |
1788 "os": { | |
1789 "type": "android", | |
1790 "version": { | |
1791 "op": "between", | |
1792 "value": "7.0.0", | |
1793 "value2": "7.0.99" | |
1794 // Only initial version of N. | |
1795 } | |
1796 }, | |
1797 "gl_renderer": "Adreno \\(TM\\) 4.*", | |
1798 "disabled_extensions": [ | |
1799 "GL_EXT_multisampled_render_to_texture" | |
1800 ] | |
1801 }, | |
1802 { | |
1803 "id": 175, | |
1804 "description": "Adreno 5xx support for EXT_multisampled_render_to_texture
is buggy on Android < 7.0", | |
1805 "cr_bugs": [612474], | |
1806 "os": { | |
1807 "type": "android", | |
1808 "version": { | |
1809 "op": "<", | |
1810 "value": "7.0" | |
1811 } | |
1812 }, | |
1813 "gl_renderer": "Adreno \\(TM\\) 5.*", | |
1814 "disabled_extensions": [ | |
1815 "GL_EXT_multisampled_render_to_texture" | |
1816 ] | |
1817 }, | |
1818 { | |
1819 "id": 176, | |
1820 "description": "glClear does not work on Acer Predator GT-810", | |
1821 "cr_bugs": [633634], | |
1822 "os": { | |
1823 "type": "android" | |
1824 }, | |
1825 "gl_vendor": "Intel", | |
1826 "gl_renderer": ".*Atom.*x5/x7.*", | |
1827 "features": [ | |
1828 "gl_clear_broken" | |
1829 ] | |
1830 }, | |
1831 { | |
1832 "id": 177, | |
1833 "description": "glGetFragData{Location|Index} works incorrectly on Max", | |
1834 "cr_bugs": [638340], | |
1835 "os": { | |
1836 "type": "macosx" | |
1837 }, | |
1838 "features": [ | |
1839 "get_frag_data_info_bug" | |
1840 ] | |
1841 }, | |
1842 { | |
1843 "id": 178, | |
1844 "description": "GL_KHR_blend_equation_advanced is incorrectly implemented
on Intel BayTrail on KitKat", | |
1845 "cr_bugs": [639470], | |
1846 "os": { | |
1847 "type": "android", | |
1848 "version": { | |
1849 "op": "<", | |
1850 "value": "5.0" | |
1851 } | |
1852 }, | |
1853 "gl_vendor": "Intel.*", | |
1854 "gl_renderer": "Intel(R) HD Graphics for BayTrail", | |
1855 "features": [ | |
1856 "disable_blend_equation_advanced" | |
1857 ] | |
1858 }, | |
1859 { | |
1860 "id": 179, | |
1861 "description": "glResumeTransformFeedback works incorrectly on Intel GPUs"
, | |
1862 "cr_bugs": [638514], | |
1863 "os": { | |
1864 "type": "macosx" | |
1865 }, | |
1866 "vendor_id": "0x8086", | |
1867 "features": [ | |
1868 "rebind_transform_feedback_before_resume" | |
1869 ] | |
1870 }, | |
1871 { | |
1872 "id": 180, | |
1873 "cr_bugs": [579060,632461], | |
1874 "description": "eglCreateImageKHR fails for one component textures on Powe
rVR", | |
1875 "os": { | |
1876 "type": "android" | |
1877 }, | |
1878 "gl_vendor": "Imagination.*", | |
1879 "gl_renderer": "PowerVR .*", | |
1880 "features": [ | |
1881 "avoid_one_component_egl_images" | |
1882 ] | |
1883 }, | |
1884 { | |
1885 "id": 181, | |
1886 "description": "glTexStorage* are buggy when base mipmap level is not 0", | |
1887 "cr_bugs": [640506], | |
1888 "os": { | |
1889 "type": "macosx", | |
1890 "version": { | |
1891 "op": "<", | |
1892 "value": "10.12.4" | |
1893 } | |
1894 }, | |
1895 "features": [ | |
1896 "reset_base_mipmap_level_before_texstorage" | |
1897 ] | |
1898 }, | |
1899 { | |
1900 "id": 182, | |
1901 "cr_bugs": [638691], | |
1902 "description": "Frequent hang in glClear on old android versions on Mali-T
7xx", | |
1903 "os": { | |
1904 "type": "android", | |
1905 "version": { | |
1906 "op": "<", | |
1907 "value": "6.0" | |
1908 } | |
1909 }, | |
1910 "gl_renderer": ".*Mali-T7.*", | |
1911 "features": [ | |
1912 "gl_clear_broken" | |
1913 ] | |
1914 }, | |
1915 { | |
1916 "id": 183, | |
1917 "description": "Result of abs(i) where i is an integer in vertex shader is
wrong", | |
1918 "cr_bugs": [642227], | |
1919 "os": { | |
1920 "type": "macosx" | |
1921 }, | |
1922 "vendor_id": "0x8086", | |
1923 "features": [ | |
1924 "emulate_abs_int_function" | |
1925 ] | |
1926 }, | |
1927 { | |
1928 "id": 184, | |
1929 "description": "Rewrite texelFetchOffset to texelFetch for Intel Mac", | |
1930 "cr_bugs": [642605], | |
1931 "os": { | |
1932 "type": "macosx" | |
1933 }, | |
1934 "vendor_id": "0x8086", | |
1935 "features": [ | |
1936 "rewrite_texelfetchoffset_to_texelfetch" | |
1937 ] | |
1938 }, | |
1939 { | |
1940 "id": 185, | |
1941 "description": "Zero-copy NV12 video displays incorrect colors on NVIDIA d
rivers.", | |
1942 "cr_bugs": [635319], | |
1943 "os": { | |
1944 "type": "win" | |
1945 }, | |
1946 "vendor_id": "0x10de", | |
1947 "features": [ | |
1948 "disable_dxgi_zero_copy_video" | |
1949 ] | |
1950 }, | |
1951 { | |
1952 "id": 186, | |
1953 "description": "Rewrite condition in for and while loops for Intel Mac", | |
1954 "cr_bugs": [644669], | |
1955 "os": { | |
1956 "type": "macosx" | |
1957 }, | |
1958 "vendor_id": "0x8086", | |
1959 "features": [ | |
1960 "add_and_true_to_loop_condition" | |
1961 ] | |
1962 }, | |
1963 { | |
1964 "id": 187, | |
1965 "description": "Rewrite do-while loops to simpler constructs on Mac", | |
1966 "cr_bugs": [644669], | |
1967 "os": { | |
1968 "type": "macosx", | |
1969 "version": { | |
1970 "op": "<", | |
1971 "value": "10.11" | |
1972 } | |
1973 }, | |
1974 "features": [ | |
1975 "rewrite_do_while_loops" | |
1976 ] | |
1977 }, | |
1978 { | |
1979 "id": 188, | |
1980 "description": "AVSampleBufferDisplayLayer leaks IOSurfaces on 10.9.", | |
1981 "cr_bugs": [632178], | |
1982 "os": { | |
1983 "type": "macosx", | |
1984 "version": { | |
1985 "op": "<=", | |
1986 "value": "10.10" | |
1987 } | |
1988 }, | |
1989 "features": [ | |
1990 "disable_av_sample_buffer_display_layer" | |
1991 ] | |
1992 }, | |
1993 { | |
1994 "id": 189, | |
1995 "description": "Do TexImage2D first before CopyTexImage2D for cube map tex
ture on Intel Mac 10.11", | |
1996 "cr_bugs": [648197], | |
1997 "os": { | |
1998 "type": "macosx", | |
1999 "version": { | |
2000 "op": "<=", | |
2001 "value": "10.11" | |
2002 } | |
2003 }, | |
2004 "vendor_id": "0x8086", | |
2005 "features": [ | |
2006 "init_one_cube_map_level_before_copyteximage" | |
2007 ] | |
2008 }, | |
2009 { | |
2010 "id": 190, | |
2011 "description": "Disable partial swaps on Mesa drivers (detected with GL_VE
RSION)", | |
2012 "cr_bugs": [339493], | |
2013 "os": { | |
2014 "type": "linux" | |
2015 }, | |
2016 "gl_type": "gl", | |
2017 "gl_version_string": ".*Mesa.*", | |
2018 "features": [ | |
2019 "disable_post_sub_buffers_for_onscreen_surfaces" | |
2020 ] | |
2021 }, | |
2022 { | |
2023 "id": 191, | |
2024 "description": "Emulate GLSL function isnan() on Intel Mac", | |
2025 "cr_bugs": [650547], | |
2026 "os": { | |
2027 "type": "macosx" | |
2028 }, | |
2029 "vendor_id": "0x8086", | |
2030 "device_id" : [ | |
2031 "0x1902", "0x1906", "0x190A", "0x190B", "0x190E", "0x1912", "0x1913", "0
x1915", | |
2032 "0x1916", "0x1917", "0x191A", "0x191B", "0x191D", "0x191E", "0x1921", "0
x1923", | |
2033 "0x1926", "0x1927", "0x192A", "0x192B", "0x192D", "0x1932", "0x193A", "0
x193B", | |
2034 "0x193D" | |
2035 ], | |
2036 "features" : [ | |
2037 "emulate_isnan_on_float" | |
2038 ] | |
2039 }, | |
2040 { | |
2041 "id": 192, | |
2042 "description": "Decode and encode before generateMipmap for srgb format te
xtures on os except macosx", | |
2043 "cr_bugs": [634519], | |
2044 "gl_type": "gl", | |
2045 "gl_version": { | |
2046 "op": "<", | |
2047 "value": "4.4" | |
2048 }, | |
2049 "exceptions": [ | |
2050 { | |
2051 "os": { | |
2052 "type": "macosx" | |
2053 } | |
2054 } | |
2055 ], | |
2056 "features": [ | |
2057 "decode_encode_srgb_for_generatemipmap" | |
2058 ] | |
2059 }, | |
2060 { | |
2061 "id": 193, | |
2062 "description": "Decode and encode before generateMipmap for srgb format te
xtures on macosx", | |
2063 "cr_bugs": [634519], | |
2064 "os": { | |
2065 "type": "macosx" | |
2066 }, | |
2067 "features": [ | |
2068 "decode_encode_srgb_for_generatemipmap" | |
2069 ] | |
2070 }, | |
2071 { | |
2072 "id": 194, | |
2073 "description": "Init first two levels before CopyTexImage2D for cube map t
exture on Intel Mac 10.12", | |
2074 "cr_bugs": [648197], | |
2075 "os": { | |
2076 "type": "macosx", | |
2077 "version": { | |
2078 "op": ">=", | |
2079 "value": "10.12" | |
2080 } | |
2081 }, | |
2082 "vendor_id": "0x8086", | |
2083 "features": [ | |
2084 "init_two_cube_map_levels_before_copyteximage" | |
2085 ] | |
2086 }, | |
2087 { | |
2088 "id": 195, | |
2089 "description": "Insert statements to reference all members in unused std14
0/shared blocks on Mac", | |
2090 "cr_bugs": [618464], | |
2091 "os": { | |
2092 "type": "macosx" | |
2093 }, | |
2094 "features": [ | |
2095 "use_unused_standard_shared_blocks" | |
2096 ] | |
2097 }, | |
2098 { | |
2099 "id": 196, | |
2100 "description": "Tex(Sub)Image3D performs incorrectly when uploading from u
npack buffer with GL_UNPACK_IMAGE_HEIGHT greater than zero on Intel Macs", | |
2101 "cr_bugs": [654258], | |
2102 "os": { | |
2103 "type": "macosx" | |
2104 }, | |
2105 "vendor_id": "0x8086", | |
2106 "features": [ | |
2107 "unpack_image_height_workaround_with_unpack_buffer" | |
2108 ] | |
2109 }, | |
2110 { | |
2111 "id": 197, | |
2112 "description": "adjust src/dst region if blitting pixels outside read fram
ebuffer on Mac", | |
2113 "cr_bugs": [644740], | |
2114 "os": { | |
2115 "type": "macosx" | |
2116 }, | |
2117 "features": [ | |
2118 "adjust_src_dst_region_for_blitframebuffer" | |
2119 ] | |
2120 }, | |
2121 { | |
2122 "id": 198, | |
2123 "description": "adjust src/dst region if blitting pixels outside read fram
ebuffer on Linux Intel", | |
2124 "cr_bugs": [664740], | |
2125 "os": { | |
2126 "type": "linux" | |
2127 }, | |
2128 "vendor_id": "0x8086", | |
2129 "features": [ | |
2130 "adjust_src_dst_region_for_blitframebuffer" | |
2131 ] | |
2132 }, | |
2133 { | |
2134 "id": 199, | |
2135 "description": "adjust src/dst region if blitting pixels outside read fram
ebuffer on Linux AMD", | |
2136 "cr_bugs": [664740], | |
2137 "os": { | |
2138 "type": "linux" | |
2139 }, | |
2140 "vendor_id": "0x1002", | |
2141 "features": [ | |
2142 "adjust_src_dst_region_for_blitframebuffer" | |
2143 ] | |
2144 }, | |
2145 { | |
2146 "id": 200, | |
2147 "description": "ES3 support is unreliable on some older drivers", | |
2148 "cr_bugs": [657925], | |
2149 "os": { | |
2150 "type": "android", | |
2151 "version": { | |
2152 "op": "<", | |
2153 "value": "4.4" | |
2154 } | |
2155 }, | |
2156 "features": [ | |
2157 "disable_es3_gl_context" | |
2158 ] | |
2159 }, | |
2160 { | |
2161 "id": 201, | |
2162 "cr_bugs": [659326,639760], | |
2163 "description": "AMD drivers in Linux require invariant qualifier to match
between vertex and fragment shaders", | |
2164 "os": { | |
2165 "type": "linux" | |
2166 }, | |
2167 "vendor_id": "0x1002", | |
2168 "features": [ | |
2169 "dont_remove_invariant_for_fragment_input", | |
2170 "remove_invariant_and_centroid_for_essl3" | |
2171 ] | |
2172 }, | |
2173 { | |
2174 "id": 202, | |
2175 "cr_bugs": [639760,641129], | |
2176 "description": "Mac driver GL 4.1 requires invariant and centroid to match
between shaders", | |
2177 "os": { | |
2178 "type": "macosx" | |
2179 }, | |
2180 "features": [ | |
2181 "remove_invariant_and_centroid_for_essl3" | |
2182 ] | |
2183 }, | |
2184 { | |
2185 "id": 203, | |
2186 "cr_bugs": [639760,641129], | |
2187 "description": "Mesa driver GL 3.3 requires invariant and centroid to matc
h between shaders", | |
2188 "os": { | |
2189 "type": "linux" | |
2190 }, | |
2191 "driver_vendor": "Mesa", | |
2192 "gl_version": { | |
2193 "op": "=", | |
2194 "value": "3.3" | |
2195 }, | |
2196 "features": [ | |
2197 "remove_invariant_and_centroid_for_essl3" | |
2198 ] | |
2199 }, | |
2200 { | |
2201 "id": 205, | |
2202 "description": "Adreno 5xx support for EXT_multisampled_render_to_texture
is buggy on Android 7.1", | |
2203 "cr_bugs": [663811], | |
2204 "os": { | |
2205 "type": "android", | |
2206 "version": { | |
2207 "op": "=", | |
2208 "value": "7.1.0" | |
2209 } | |
2210 }, | |
2211 "gl_renderer": "Adreno \\(TM\\) 5.*", | |
2212 "disabled_extensions": [ | |
2213 "GL_EXT_multisampled_render_to_texture" | |
2214 ] | |
2215 }, | |
2216 { | |
2217 "id": 206, | |
2218 "description": "Disable KHR_blend_equation_advanced until cc shaders are u
pdated", | |
2219 "cr_bugs": [661715], | |
2220 "disabled_extensions": [ | |
2221 "GL_KHR_blend_equation_advanced", | |
2222 "GL_KHR_blend_equation_advanced_coherent" | |
2223 ] | |
2224 }, | |
2225 { | |
2226 "id": 207, | |
2227 "description": "Decode and Encode before generateMipmap for srgb format te
xtures on Windows", | |
2228 "cr_bugs": [634519], | |
2229 "os" : { | |
2230 "type": "win" | |
2231 }, | |
2232 "features" : [ | |
2233 "decode_encode_srgb_for_generatemipmap" | |
2234 ] | |
2235 }, | |
2236 { | |
2237 "id": 208, | |
2238 "description": "Decode and Encode before generateMipmap for srgb format te
xtures on Linux Mesa ANGLE path", | |
2239 "cr_bugs": [634519], | |
2240 "os": { | |
2241 "type": "linux" | |
2242 }, | |
2243 "gl_renderer": "ANGLE.*", | |
2244 "vendor_id": "0x8086", | |
2245 "features": [ | |
2246 "decode_encode_srgb_for_generatemipmap" | |
2247 ] | |
2248 }, | |
2249 { | |
2250 "id": 209, | |
2251 "description": "Decode and Encode before generateMipmap for srgb format te
xtures on Chromeos Intel", | |
2252 "cr_bugs": [634519], | |
2253 "os": { | |
2254 "type": "chromeos" | |
2255 }, | |
2256 "vendor_id": "0x8086", | |
2257 "features": [ | |
2258 "decode_encode_srgb_for_generatemipmap" | |
2259 ] | |
2260 }, | |
2261 { | |
2262 "id": 210, | |
2263 "description": "Decode and Encode before generateMipmap for srgb format te
xtures on Linux AMD", | |
2264 "cr_bugs": [634519], | |
2265 "os": { | |
2266 "type": "linux" | |
2267 }, | |
2268 "vendor_id": "0x1002", | |
2269 "features": [ | |
2270 "decode_encode_srgb_for_generatemipmap" | |
2271 ] | |
2272 }, | |
2273 { | |
2274 "id": 211, | |
2275 "description": "Rewrite -float to 0.0 - float for Intel Mac", | |
2276 "cr_bugs": [672380], | |
2277 "os": { | |
2278 "type": "macosx", | |
2279 "version": { | |
2280 "op": "<=", | |
2281 "value": "10.11" | |
2282 } | |
2283 }, | |
2284 "vendor_id": "0x8086", | |
2285 "features": [ | |
2286 "rewrite_float_unary_minus_operator" | |
2287 ] | |
2288 }, | |
2289 { | |
2290 "id": 212, | |
2291 "description": "Program binaries don't contain transform feedback varyings
on Qualcomm GPUs", | |
2292 "cr_bugs": [658074], | |
2293 "os": { | |
2294 "type": "android" | |
2295 }, | |
2296 "gl_renderer": "Adreno.*", | |
2297 "features": [ | |
2298 "disable_program_caching_for_transform_feedback" | |
2299 ] | |
2300 }, | |
2301 { | |
2302 "id": 213, | |
2303 "description": "The Mali-Gxx driver does not guarantee flush ordering", | |
2304 "cr_bugs": [678508], | |
2305 "gl_vendor": "ARM.*", | |
2306 "gl_renderer": "Mali-G.*", | |
2307 "features": [ | |
2308 "use_virtualized_gl_contexts" | |
2309 ] | |
2310 }, | |
2311 ) // LONG_STRING_CONST macro | |
2312 // Avoid C2026 (string too big) error on VisualStudio. | |
2313 LONG_STRING_CONST( | |
2314 { | |
2315 // Corresponds to software rendering list #140. | |
2316 "id": 214, | |
2317 "description": "Certain versions of Qualcomm driver don't setup scissor st
ate correctly when FBO0 is bound.", | |
2318 "cr_bugs": [670607, 696627, 698197], | |
2319 "gl_vendor": "Qualcomm.*", | |
2320 "machine_model_name": ["Nexus 7", "KFTHWI", "KFSAWI", "KFAPWI", "KFTHWA",
"KFSAWA", "KFAPWA"], | |
2321 "features": [ | |
2322 "force_update_scissor_state_when_binding_fbo0", | |
2323 // Somehow the main workaround above won't work without the one below. | |
2324 // See https://crbug.com/698197 for details. | |
2325 "disable_chromium_framebuffer_multisample" | |
2326 ] | |
2327 }, | |
2328 { | |
2329 "id": 215, | |
2330 "description": "Fake no-op GPU driver bug workaround for testing", | |
2331 "cr_bugs": [682912], | |
2332 "vendor_id": "0xbad9", | |
2333 "device_id": ["0xbad9"], | |
2334 "features": [ | |
2335 "use_gpu_driver_workaround_for_testing" | |
2336 ] | |
2337 }, | |
2338 { | |
2339 "id": 216, | |
2340 "cr_bugs": [698926], | |
2341 "description": "Pack parameters work incorrectly with pack buffer bound", | |
2342 "os": { | |
2343 "type": "android" | |
2344 }, | |
2345 "gl_vendor": "NVIDIA.*", | |
2346 "features": [ | |
2347 "pack_parameters_workaround_with_pack_buffer" | |
2348 ] | |
2349 }, | |
2350 { | |
2351 "id": 217, | |
2352 "cr_bugs": [698926], | |
2353 "description": "Alignment works incorrectly with unpack buffer bound", | |
2354 "os": { | |
2355 "type": "android" | |
2356 }, | |
2357 "gl_vendor": "NVIDIA.*", | |
2358 "features": [ | |
2359 "unpack_alignment_workaround_with_unpack_buffer" | |
2360 ] | |
2361 }, | |
2362 { | |
2363 "id": 219, | |
2364 "description": "Zero-copy DXGI video hangs or displays incorrect colors on
AMD drivers", | |
2365 "cr_bugs": [623029], | |
2366 "os": { | |
2367 "type": "win" | |
2368 }, | |
2369 "vendor_id": "0x1002", | |
2370 "features": [ | |
2371 "disable_dxgi_zero_copy_video" | |
2372 ] | |
2373 }, | |
2374 { | |
2375 "id": 220, | |
2376 "description": "NV12 DXGI video displays incorrect colors on older AMD dri
vers", | |
2377 "cr_bugs": [644293], | |
2378 "os": { | |
2379 "type": "win" | |
2380 }, | |
2381 "vendor_id": "0x1002", | |
2382 "driver_version": { | |
2383 "op": "<", | |
2384 "value": "21.19.519.2" | |
2385 }, | |
2386 "features": [ | |
2387 "disable_nv12_dxgi_video" | |
2388 ] | |
2389 }, | |
2390 { | |
2391 "id": 221, | |
2392 "description": "Very large instanced draw calls crash on some Adreno 3xx d
rivers", | |
2393 "cr_bugs": [701682], | |
2394 "os": { | |
2395 "type": "android" | |
2396 }, | |
2397 "gl_renderer": "Adreno \\(TM\\) 3.*", | |
2398 "features": [ | |
2399 "disallow_large_instanced_draw" | |
2400 ] | |
2401 } | |
2402 ] | |
2403 // Please update the version number at beginning of this file whenever you | |
2404 // change this file. | |
2405 } | |
2406 | |
2407 ); // LONG_STRING_CONST macro | |
2408 | |
2409 } // namespace gpu | |
OLD | NEW |