Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8)

Side by Side Diff: gpu/config/gpu_driver_bug_list_autogen.cc

Issue 2756793003: Move GPU blacklist and driver bug workaround list from json to data struct. (Closed)
Patch Set: pure rebase Created 3 years, 8 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2017 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 // This file is auto-generated from
6 // gpu/config/process_json.py
7 // It's formatted by clang-format using chromium coding style:
8 // clang-format -i -style=chromium filename
9 // DO NOT EDIT!
10
11 #include "gpu/config/gpu_driver_bug_list_autogen.h"
12
13 #include "gpu/config/gpu_driver_bug_list_arrays_and_structs_autogen.h"
14 #include "gpu/config/gpu_driver_bug_list_exceptions_autogen.h"
15
16 namespace gpu {
17
18 const char kGpuDriverBugListVersion[] = "10.0";
19
20 const size_t kGpuDriverBugListEntryCount = 172;
21 const GpuControlList::Entry kGpuDriverBugListEntries[172] = {
22 {
23 1, // id
24 "Imagination driver doesn't like uploading lots of buffer data "
25 "constantly",
26 arraysize(kFeatureListForEntry1), // features size
27 kFeatureListForEntry1, // features
28 0, // DisabledExtensions size
29 nullptr, // DisabledExtensions
30 0, // CrBugs size
31 nullptr, // CrBugs
32 {
33 GpuControlList::kOsAndroid, // os_type
34 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
35 nullptr, nullptr}, // os_version
36 0x00, // vendor_id
37 0, // DeviceIDs size
38 nullptr, // DeviceIDs
39 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
40 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
41 nullptr, // driver info
42 &kGLStringsForEntry1, // GL strings
43 nullptr, // machine model info
44 nullptr, // more conditions
45 },
46 0, // exceptions count
47 nullptr, // exceptions
48 },
49 {
50 2, // id
51 "ARM driver doesn't like uploading lots of buffer data constantly",
52 arraysize(kFeatureListForEntry2), // features size
53 kFeatureListForEntry2, // features
54 0, // DisabledExtensions size
55 nullptr, // DisabledExtensions
56 0, // CrBugs size
57 nullptr, // CrBugs
58 {
59 GpuControlList::kOsAndroid, // os_type
60 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
61 nullptr, nullptr}, // os_version
62 0x00, // vendor_id
63 0, // DeviceIDs size
64 nullptr, // DeviceIDs
65 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
66 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
67 nullptr, // driver info
68 &kGLStringsForEntry2, // GL strings
69 nullptr, // machine model info
70 nullptr, // more conditions
71 },
72 0, // exceptions count
73 nullptr, // exceptions
74 },
75 {
76 6, // id
77 "Restore scissor on FBO change with Qualcomm GPUs on older versions of "
78 "Android",
79 arraysize(kFeatureListForEntry6), // features size
80 kFeatureListForEntry6, // features
81 0, // DisabledExtensions size
82 nullptr, // DisabledExtensions
83 arraysize(kCrBugsForEntry6), // CrBugs size
84 kCrBugsForEntry6, // CrBugs
85 {
86 GpuControlList::kOsAndroid, // os_type
87 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical, "4.3",
88 nullptr}, // os_version
89 0x00, // vendor_id
90 0, // DeviceIDs size
91 nullptr, // DeviceIDs
92 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
93 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
94 nullptr, // driver info
95 &kGLStringsForEntry6, // GL strings
96 nullptr, // machine model info
97 nullptr, // more conditions
98 },
99 0, // exceptions count
100 nullptr, // exceptions
101 },
102 {
103 7, // id
104 "Work around a bug in offscreen buffers on NVIDIA GPUs on Macs",
105 arraysize(kFeatureListForEntry7), // features size
106 kFeatureListForEntry7, // features
107 0, // DisabledExtensions size
108 nullptr, // DisabledExtensions
109 arraysize(kCrBugsForEntry7), // CrBugs size
110 kCrBugsForEntry7, // CrBugs
111 {
112 GpuControlList::kOsMacosx, // os_type
113 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
114 nullptr, nullptr}, // os_version
115 0x10de, // vendor_id
116 0, // DeviceIDs size
117 nullptr, // DeviceIDs
118 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
119 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
120 nullptr, // driver info
121 nullptr, // GL strings
122 nullptr, // machine model info
123 nullptr, // more conditions
124 },
125 0, // exceptions count
126 nullptr, // exceptions
127 },
128 {
129 17, // id
130 "Some drivers are unable to reset the D3D device in the GPU process "
131 "sandbox",
132 arraysize(kFeatureListForEntry17), // features size
133 kFeatureListForEntry17, // features
134 0, // DisabledExtensions size
135 nullptr, // DisabledExtensions
136 0, // CrBugs size
137 nullptr, // CrBugs
138 {
139 GpuControlList::kOsWin, // os_type
140 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
141 nullptr, nullptr}, // os_version
142 0x00, // vendor_id
143 0, // DeviceIDs size
144 nullptr, // DeviceIDs
145 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
146 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
147 nullptr, // driver info
148 nullptr, // GL strings
149 nullptr, // machine model info
150 nullptr, // more conditions
151 },
152 0, // exceptions count
153 nullptr, // exceptions
154 },
155 {
156 19, // id
157 "Disable depth textures on Android with Qualcomm GPUs",
158 arraysize(kFeatureListForEntry19), // features size
159 kFeatureListForEntry19, // features
160 arraysize(kDisabledExtensionsForEntry19), // DisabledExtensions size
161 kDisabledExtensionsForEntry19, // DisabledExtensions
162 arraysize(kCrBugsForEntry19), // CrBugs size
163 kCrBugsForEntry19, // CrBugs
164 {
165 GpuControlList::kOsAndroid, // os_type
166 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical, "6.0",
167 nullptr}, // os_version
168 0x00, // vendor_id
169 0, // DeviceIDs size
170 nullptr, // DeviceIDs
171 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
172 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
173 nullptr, // driver info
174 &kGLStringsForEntry19, // GL strings
175 nullptr, // machine model info
176 nullptr, // more conditions
177 },
178 0, // exceptions count
179 nullptr, // exceptions
180 },
181 {
182 20, // id
183 "Disable EXT_draw_buffers on GeForce GT 650M on Mac OS X due to driver "
184 "bugs",
185 arraysize(kFeatureListForEntry20), // features size
186 kFeatureListForEntry20, // features
187 0, // DisabledExtensions size
188 nullptr, // DisabledExtensions
189 0, // CrBugs size
190 nullptr, // CrBugs
191 {
192 GpuControlList::kOsMacosx, // os_type
193 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
194 nullptr, nullptr}, // os_version
195 0x10de, // vendor_id
196 arraysize(kDeviceIDsForEntry20), // DeviceIDs size
197 kDeviceIDsForEntry20, // DeviceIDs
198 GpuControlList::kMultiGpuCategoryAny, // multi_gpu_category
199 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
200 nullptr, // driver info
201 nullptr, // GL strings
202 nullptr, // machine model info
203 nullptr, // more conditions
204 },
205 0, // exceptions count
206 nullptr, // exceptions
207 },
208 {
209 21, // id
210 "Vivante GPUs are buggy with context switching",
211 arraysize(kFeatureListForEntry21), // features size
212 kFeatureListForEntry21, // features
213 0, // DisabledExtensions size
214 nullptr, // DisabledExtensions
215 arraysize(kCrBugsForEntry21), // CrBugs size
216 kCrBugsForEntry21, // CrBugs
217 {
218 GpuControlList::kOsAndroid, // os_type
219 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
220 nullptr, nullptr}, // os_version
221 0x00, // vendor_id
222 0, // DeviceIDs size
223 nullptr, // DeviceIDs
224 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
225 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
226 nullptr, // driver info
227 &kGLStringsForEntry21, // GL strings
228 nullptr, // machine model info
229 nullptr, // more conditions
230 },
231 0, // exceptions count
232 nullptr, // exceptions
233 },
234 {
235 22, // id
236 "Imagination drivers are buggy with context switching",
237 arraysize(kFeatureListForEntry22), // features size
238 kFeatureListForEntry22, // features
239 0, // DisabledExtensions size
240 nullptr, // DisabledExtensions
241 arraysize(kCrBugsForEntry22), // CrBugs size
242 kCrBugsForEntry22, // CrBugs
243 {
244 GpuControlList::kOsAndroid, // os_type
245 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
246 nullptr, nullptr}, // os_version
247 0x00, // vendor_id
248 0, // DeviceIDs size
249 nullptr, // DeviceIDs
250 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
251 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
252 nullptr, // driver info
253 &kGLStringsForEntry22, // GL strings
254 nullptr, // machine model info
255 nullptr, // more conditions
256 },
257 0, // exceptions count
258 nullptr, // exceptions
259 },
260 {
261 23, // id
262 "Disable OES_standard_derivative on Intel Pineview M Gallium drivers",
263 0, // feature size
264 nullptr, // features
265 arraysize(kDisabledExtensionsForEntry23), // DisabledExtensions size
266 kDisabledExtensionsForEntry23, // DisabledExtensions
267 arraysize(kCrBugsForEntry23), // CrBugs size
268 kCrBugsForEntry23, // CrBugs
269 {
270 GpuControlList::kOsChromeOS, // os_type
271 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
272 nullptr, nullptr}, // os_version
273 0x8086, // vendor_id
274 arraysize(kDeviceIDsForEntry23), // DeviceIDs size
275 kDeviceIDsForEntry23, // DeviceIDs
276 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
277 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
278 nullptr, // driver info
279 nullptr, // GL strings
280 nullptr, // machine model info
281 nullptr, // more conditions
282 },
283 0, // exceptions count
284 nullptr, // exceptions
285 },
286 {
287 24, // id
288 "Mali-4xx drivers throw an error when a buffer object's size is set to "
289 "0",
290 arraysize(kFeatureListForEntry24), // features size
291 kFeatureListForEntry24, // features
292 0, // DisabledExtensions size
293 nullptr, // DisabledExtensions
294 arraysize(kCrBugsForEntry24), // CrBugs size
295 kCrBugsForEntry24, // CrBugs
296 {
297 GpuControlList::kOsAndroid, // os_type
298 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
299 nullptr, nullptr}, // os_version
300 0x00, // vendor_id
301 0, // DeviceIDs size
302 nullptr, // DeviceIDs
303 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
304 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
305 nullptr, // driver info
306 &kGLStringsForEntry24, // GL strings
307 nullptr, // machine model info
308 nullptr, // more conditions
309 },
310 0, // exceptions count
311 nullptr, // exceptions
312 },
313 {
314 26, // id
315 "Disable use of Direct3D 11 on Windows Vista and lower",
316 arraysize(kFeatureListForEntry26), // features size
317 kFeatureListForEntry26, // features
318 0, // DisabledExtensions size
319 nullptr, // DisabledExtensions
320 0, // CrBugs size
321 nullptr, // CrBugs
322 {
323 GpuControlList::kOsWin, // os_type
324 {GpuControlList::kLE, GpuControlList::kVersionStyleNumerical, "6.0",
325 nullptr}, // os_version
326 0x00, // vendor_id
327 0, // DeviceIDs size
328 nullptr, // DeviceIDs
329 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
330 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
331 nullptr, // driver info
332 nullptr, // GL strings
333 nullptr, // machine model info
334 nullptr, // more conditions
335 },
336 0, // exceptions count
337 nullptr, // exceptions
338 },
339 {
340 27, // id
341 "Async Readpixels with GL_BGRA format is broken on Haswell chipset on "
342 "Macs",
343 arraysize(kFeatureListForEntry27), // features size
344 kFeatureListForEntry27, // features
345 0, // DisabledExtensions size
346 nullptr, // DisabledExtensions
347 arraysize(kCrBugsForEntry27), // CrBugs size
348 kCrBugsForEntry27, // CrBugs
349 {
350 GpuControlList::kOsMacosx, // os_type
351 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
352 nullptr, nullptr}, // os_version
353 0x8086, // vendor_id
354 arraysize(kDeviceIDsForEntry27), // DeviceIDs size
355 kDeviceIDsForEntry27, // DeviceIDs
356 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
357 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
358 nullptr, // driver info
359 nullptr, // GL strings
360 nullptr, // machine model info
361 nullptr, // more conditions
362 },
363 0, // exceptions count
364 nullptr, // exceptions
365 },
366 {
367 30, // id
368 "Multisampling is buggy on OSX when multiple monitors are connected",
369 arraysize(kFeatureListForEntry30), // features size
370 kFeatureListForEntry30, // features
371 0, // DisabledExtensions size
372 nullptr, // DisabledExtensions
373 arraysize(kCrBugsForEntry30), // CrBugs size
374 kCrBugsForEntry30, // CrBugs
375 {
376 GpuControlList::kOsMacosx, // os_type
377 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
378 nullptr, nullptr}, // os_version
379 0x00, // vendor_id
380 0, // DeviceIDs size
381 nullptr, // DeviceIDs
382 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
383 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
384 nullptr, // driver info
385 nullptr, // GL strings
386 nullptr, // machine model info
387 nullptr, // more conditions
388 },
389 0, // exceptions count
390 nullptr, // exceptions
391 },
392 {
393 31, // id
394 "The Mali-Txxx driver does not guarantee flush ordering",
395 arraysize(kFeatureListForEntry31), // features size
396 kFeatureListForEntry31, // features
397 0, // DisabledExtensions size
398 nullptr, // DisabledExtensions
399 arraysize(kCrBugsForEntry31), // CrBugs size
400 kCrBugsForEntry31, // CrBugs
401 {
402 GpuControlList::kOsAny, // os_type
403 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
404 nullptr, nullptr}, // os_version
405 0x00, // vendor_id
406 0, // DeviceIDs size
407 nullptr, // DeviceIDs
408 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
409 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
410 nullptr, // driver info
411 &kGLStringsForEntry31, // GL strings
412 nullptr, // machine model info
413 nullptr, // more conditions
414 },
415 0, // exceptions count
416 nullptr, // exceptions
417 },
418 {
419 32, // id
420 "Share groups are not working on (older?) Broadcom drivers",
421 arraysize(kFeatureListForEntry32), // features size
422 kFeatureListForEntry32, // features
423 0, // DisabledExtensions size
424 nullptr, // DisabledExtensions
425 arraysize(kCrBugsForEntry32), // CrBugs size
426 kCrBugsForEntry32, // CrBugs
427 {
428 GpuControlList::kOsAndroid, // os_type
429 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
430 nullptr, nullptr}, // os_version
431 0x00, // vendor_id
432 0, // DeviceIDs size
433 nullptr, // DeviceIDs
434 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
435 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
436 nullptr, // driver info
437 &kGLStringsForEntry32, // GL strings
438 nullptr, // machine model info
439 nullptr, // more conditions
440 },
441 0, // exceptions count
442 nullptr, // exceptions
443 },
444 {
445 33, // id
446 "Share group-related crashes and poor context switching perf on "
447 "Imagination drivers",
448 arraysize(kFeatureListForEntry33), // features size
449 kFeatureListForEntry33, // features
450 0, // DisabledExtensions size
451 nullptr, // DisabledExtensions
452 0, // CrBugs size
453 nullptr, // CrBugs
454 {
455 GpuControlList::kOsAny, // os_type
456 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
457 nullptr, nullptr}, // os_version
458 0x00, // vendor_id
459 0, // DeviceIDs size
460 nullptr, // DeviceIDs
461 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
462 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
463 nullptr, // driver info
464 &kGLStringsForEntry33, // GL strings
465 nullptr, // machine model info
466 nullptr, // more conditions
467 },
468 0, // exceptions count
469 nullptr, // exceptions
470 },
471 {
472 34, // id
473 "Share groups are not working on (older?) Vivante drivers",
474 arraysize(kFeatureListForEntry34), // features size
475 kFeatureListForEntry34, // features
476 0, // DisabledExtensions size
477 nullptr, // DisabledExtensions
478 arraysize(kCrBugsForEntry34), // CrBugs size
479 kCrBugsForEntry34, // CrBugs
480 {
481 GpuControlList::kOsAndroid, // os_type
482 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
483 nullptr, nullptr}, // os_version
484 0x00, // vendor_id
485 0, // DeviceIDs size
486 nullptr, // DeviceIDs
487 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
488 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
489 nullptr, // driver info
490 &kGLStringsForEntry34, // GL strings
491 nullptr, // machine model info
492 nullptr, // more conditions
493 },
494 0, // exceptions count
495 nullptr, // exceptions
496 },
497 {
498 35, // id
499 "Share-group related crashes on older NVIDIA drivers",
500 arraysize(kFeatureListForEntry35), // features size
501 kFeatureListForEntry35, // features
502 0, // DisabledExtensions size
503 nullptr, // DisabledExtensions
504 arraysize(kCrBugsForEntry35), // CrBugs size
505 kCrBugsForEntry35, // CrBugs
506 {
507 GpuControlList::kOsAndroid, // os_type
508 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical, "4.3",
509 nullptr}, // os_version
510 0x00, // vendor_id
511 0, // DeviceIDs size
512 nullptr, // DeviceIDs
513 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
514 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
515 nullptr, // driver info
516 &kGLStringsForEntry35, // GL strings
517 nullptr, // machine model info
518 nullptr, // more conditions
519 },
520 0, // exceptions count
521 nullptr, // exceptions
522 },
523 {
524 36, // id
525 "Share-group related crashes on Qualcomm drivers",
526 arraysize(kFeatureListForEntry36), // features size
527 kFeatureListForEntry36, // features
528 0, // DisabledExtensions size
529 nullptr, // DisabledExtensions
530 arraysize(kCrBugsForEntry36), // CrBugs size
531 kCrBugsForEntry36, // CrBugs
532 {
533 GpuControlList::kOsAndroid, // os_type
534 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical, "4.3",
535 nullptr}, // os_version
536 0x00, // vendor_id
537 0, // DeviceIDs size
538 nullptr, // DeviceIDs
539 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
540 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
541 nullptr, // driver info
542 &kGLStringsForEntry36, // GL strings
543 nullptr, // machine model info
544 nullptr, // more conditions
545 },
546 0, // exceptions count
547 nullptr, // exceptions
548 },
549 {
550 37, // id
551 "Program link fails in NVIDIA Linux if gl_Position is not set",
552 arraysize(kFeatureListForEntry37), // features size
553 kFeatureListForEntry37, // features
554 0, // DisabledExtensions size
555 nullptr, // DisabledExtensions
556 arraysize(kCrBugsForEntry37), // CrBugs size
557 kCrBugsForEntry37, // CrBugs
558 {
559 GpuControlList::kOsLinux, // os_type
560 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
561 nullptr, nullptr}, // os_version
562 0x10de, // vendor_id
563 0, // DeviceIDs size
564 nullptr, // DeviceIDs
565 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
566 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
567 nullptr, // driver info
568 &kGLStringsForEntry37, // GL strings
569 nullptr, // machine model info
570 nullptr, // more conditions
571 },
572 0, // exceptions count
573 nullptr, // exceptions
574 },
575 {
576 38, // id
577 "Non-virtual contexts on Qualcomm sometimes cause out-of-order frames",
578 arraysize(kFeatureListForEntry38), // features size
579 kFeatureListForEntry38, // features
580 0, // DisabledExtensions size
581 nullptr, // DisabledExtensions
582 arraysize(kCrBugsForEntry38), // CrBugs size
583 kCrBugsForEntry38, // CrBugs
584 {
585 GpuControlList::kOsAndroid, // os_type
586 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
587 nullptr, nullptr}, // os_version
588 0x00, // vendor_id
589 0, // DeviceIDs size
590 nullptr, // DeviceIDs
591 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
592 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
593 nullptr, // driver info
594 &kGLStringsForEntry38, // GL strings
595 nullptr, // machine model info
596 nullptr, // more conditions
597 },
598 0, // exceptions count
599 nullptr, // exceptions
600 },
601 {
602 39, // id
603 "Multisampled renderbuffer allocation must be validated on some Macs",
604 arraysize(kFeatureListForEntry39), // features size
605 kFeatureListForEntry39, // features
606 0, // DisabledExtensions size
607 nullptr, // DisabledExtensions
608 arraysize(kCrBugsForEntry39), // CrBugs size
609 kCrBugsForEntry39, // CrBugs
610 {
611 GpuControlList::kOsMacosx, // os_type
612 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical,
613 "10.10", nullptr}, // os_version
614 0x00, // vendor_id
615 0, // DeviceIDs size
616 nullptr, // DeviceIDs
617 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
618 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
619 nullptr, // driver info
620 nullptr, // GL strings
621 nullptr, // machine model info
622 nullptr, // more conditions
623 },
624 0, // exceptions count
625 nullptr, // exceptions
626 },
627 {
628 40, // id
629 "Framebuffer discarding causes flickering on old ARM drivers",
630 arraysize(kFeatureListForEntry40), // features size
631 kFeatureListForEntry40, // features
632 0, // DisabledExtensions size
633 nullptr, // DisabledExtensions
634 arraysize(kCrBugsForEntry40), // CrBugs size
635 kCrBugsForEntry40, // CrBugs
636 {
637 GpuControlList::kOsAndroid, // os_type
638 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical, "4.4",
639 nullptr}, // os_version
640 0x00, // vendor_id
641 0, // DeviceIDs size
642 nullptr, // DeviceIDs
643 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
644 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
645 nullptr, // driver info
646 &kGLStringsForEntry40, // GL strings
647 nullptr, // machine model info
648 nullptr, // more conditions
649 },
650 0, // exceptions count
651 nullptr, // exceptions
652 },
653 {
654 42, // id
655 "Framebuffer discarding causes flickering on older IMG drivers",
656 arraysize(kFeatureListForEntry42), // features size
657 kFeatureListForEntry42, // features
658 0, // DisabledExtensions size
659 nullptr, // DisabledExtensions
660 arraysize(kCrBugsForEntry42), // CrBugs size
661 kCrBugsForEntry42, // CrBugs
662 {
663 GpuControlList::kOsAndroid, // os_type
664 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
665 nullptr, nullptr}, // os_version
666 0x00, // vendor_id
667 0, // DeviceIDs size
668 nullptr, // DeviceIDs
669 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
670 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
671 nullptr, // driver info
672 &kGLStringsForEntry42, // GL strings
673 nullptr, // machine model info
674 nullptr, // more conditions
675 },
676 0, // exceptions count
677 nullptr, // exceptions
678 },
679 {
680 43, // id
681 "Framebuffer discarding doesn't accept trivial attachments on Vivante",
682 arraysize(kFeatureListForEntry43), // features size
683 kFeatureListForEntry43, // features
684 0, // DisabledExtensions size
685 nullptr, // DisabledExtensions
686 arraysize(kCrBugsForEntry43), // CrBugs size
687 kCrBugsForEntry43, // CrBugs
688 {
689 GpuControlList::kOsAndroid, // os_type
690 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
691 nullptr, nullptr}, // os_version
692 0x00, // vendor_id
693 0, // DeviceIDs size
694 nullptr, // DeviceIDs
695 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
696 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
697 nullptr, // driver info
698 &kGLStringsForEntry43, // GL strings
699 nullptr, // machine model info
700 nullptr, // more conditions
701 },
702 0, // exceptions count
703 nullptr, // exceptions
704 },
705 {
706 44, // id
707 "Framebuffer discarding causes jumpy scrolling on Mali drivers",
708 arraysize(kFeatureListForEntry44), // features size
709 kFeatureListForEntry44, // features
710 0, // DisabledExtensions size
711 nullptr, // DisabledExtensions
712 arraysize(kCrBugsForEntry44), // CrBugs size
713 kCrBugsForEntry44, // CrBugs
714 {
715 GpuControlList::kOsChromeOS, // os_type
716 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
717 nullptr, nullptr}, // os_version
718 0x00, // vendor_id
719 0, // DeviceIDs size
720 nullptr, // DeviceIDs
721 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
722 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
723 nullptr, // driver info
724 nullptr, // GL strings
725 nullptr, // machine model info
726 nullptr, // more conditions
727 },
728 0, // exceptions count
729 nullptr, // exceptions
730 },
731 {
732 45, // id
733 "Unfold short circuit on Mac OS X",
734 arraysize(kFeatureListForEntry45), // features size
735 kFeatureListForEntry45, // features
736 0, // DisabledExtensions size
737 nullptr, // DisabledExtensions
738 arraysize(kCrBugsForEntry45), // CrBugs size
739 kCrBugsForEntry45, // CrBugs
740 {
741 GpuControlList::kOsMacosx, // os_type
742 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
743 nullptr, nullptr}, // os_version
744 0x00, // vendor_id
745 0, // DeviceIDs size
746 nullptr, // DeviceIDs
747 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
748 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
749 nullptr, // driver info
750 nullptr, // GL strings
751 nullptr, // machine model info
752 nullptr, // more conditions
753 },
754 0, // exceptions count
755 nullptr, // exceptions
756 },
757 {
758 48, // id
759 "Force to use discrete GPU on older MacBookPro models",
760 arraysize(kFeatureListForEntry48), // features size
761 kFeatureListForEntry48, // features
762 0, // DisabledExtensions size
763 nullptr, // DisabledExtensions
764 arraysize(kCrBugsForEntry48), // CrBugs size
765 kCrBugsForEntry48, // CrBugs
766 {
767 GpuControlList::kOsMacosx, // os_type
768 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
769 nullptr, nullptr}, // os_version
770 0x00, // vendor_id
771 0, // DeviceIDs size
772 nullptr, // DeviceIDs
773 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
774 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
775 nullptr, // driver info
776 nullptr, // GL strings
777 &kMachineModelInfoForEntry48, // machine model info
778 &kMoreForEntry48, // more data
779 },
780 0, // exceptions count
781 nullptr, // exceptions
782 },
783 {
784 49, // id
785 "The first draw operation from an idle state is slow",
786 arraysize(kFeatureListForEntry49), // features size
787 kFeatureListForEntry49, // features
788 0, // DisabledExtensions size
789 nullptr, // DisabledExtensions
790 arraysize(kCrBugsForEntry49), // CrBugs size
791 kCrBugsForEntry49, // CrBugs
792 {
793 GpuControlList::kOsAndroid, // os_type
794 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
795 nullptr, nullptr}, // os_version
796 0x00, // vendor_id
797 0, // DeviceIDs size
798 nullptr, // DeviceIDs
799 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
800 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
801 nullptr, // driver info
802 &kGLStringsForEntry49, // GL strings
803 nullptr, // machine model info
804 nullptr, // more conditions
805 },
806 0, // exceptions count
807 nullptr, // exceptions
808 },
809 {
810 51, // id
811 "TexSubImage is faster for full uploads on ANGLE",
812 arraysize(kFeatureListForEntry51), // features size
813 kFeatureListForEntry51, // features
814 0, // DisabledExtensions size
815 nullptr, // DisabledExtensions
816 0, // CrBugs size
817 nullptr, // CrBugs
818 {
819 GpuControlList::kOsWin, // os_type
820 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
821 nullptr, nullptr}, // os_version
822 0x00, // vendor_id
823 0, // DeviceIDs size
824 nullptr, // DeviceIDs
825 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
826 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
827 nullptr, // driver info
828 &kGLStringsForEntry51, // GL strings
829 nullptr, // machine model info
830 nullptr, // more conditions
831 },
832 0, // exceptions count
833 nullptr, // exceptions
834 },
835 {
836 52, // id
837 "ES3 MSAA is broken on Qualcomm",
838 arraysize(kFeatureListForEntry52), // features size
839 kFeatureListForEntry52, // features
840 0, // DisabledExtensions size
841 nullptr, // DisabledExtensions
842 arraysize(kCrBugsForEntry52), // CrBugs size
843 kCrBugsForEntry52, // CrBugs
844 {
845 GpuControlList::kOsAndroid, // os_type
846 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical, "6.0",
847 nullptr}, // os_version
848 0x00, // vendor_id
849 0, // DeviceIDs size
850 nullptr, // DeviceIDs
851 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
852 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
853 nullptr, // driver info
854 &kGLStringsForEntry52, // GL strings
855 nullptr, // machine model info
856 nullptr, // more conditions
857 },
858 0, // exceptions count
859 nullptr, // exceptions
860 },
861 {
862 54, // id
863 "Clear uniforms before first program use on all platforms",
864 arraysize(kFeatureListForEntry54), // features size
865 kFeatureListForEntry54, // features
866 0, // DisabledExtensions size
867 nullptr, // DisabledExtensions
868 arraysize(kCrBugsForEntry54), // CrBugs size
869 kCrBugsForEntry54, // CrBugs
870 {
871 GpuControlList::kOsAny, // os_type
872 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
873 nullptr, nullptr}, // os_version
874 0x00, // vendor_id
875 0, // DeviceIDs size
876 nullptr, // DeviceIDs
877 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
878 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
879 nullptr, // driver info
880 nullptr, // GL strings
881 nullptr, // machine model info
882 nullptr, // more conditions
883 },
884 arraysize(kExceptionsForEntry54), // exceptions count
885 kExceptionsForEntry54, // exceptions
886 },
887 {
888 55, // id
889 "Mesa drivers in Linux handle varyings without static use incorrectly",
890 arraysize(kFeatureListForEntry55), // features size
891 kFeatureListForEntry55, // features
892 0, // DisabledExtensions size
893 nullptr, // DisabledExtensions
894 arraysize(kCrBugsForEntry55), // CrBugs size
895 kCrBugsForEntry55, // CrBugs
896 {
897 GpuControlList::kOsLinux, // os_type
898 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
899 nullptr, nullptr}, // os_version
900 0x00, // vendor_id
901 0, // DeviceIDs size
902 nullptr, // DeviceIDs
903 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
904 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
905 &kDriverInfoForEntry55, // driver info
906 nullptr, // GL strings
907 nullptr, // machine model info
908 nullptr, // more conditions
909 },
910 0, // exceptions count
911 nullptr, // exceptions
912 },
913 {
914 56, // id
915 "Mesa drivers in ChromeOS handle varyings without static use "
916 "incorrectly",
917 arraysize(kFeatureListForEntry56), // features size
918 kFeatureListForEntry56, // features
919 0, // DisabledExtensions size
920 nullptr, // DisabledExtensions
921 arraysize(kCrBugsForEntry56), // CrBugs size
922 kCrBugsForEntry56, // CrBugs
923 {
924 GpuControlList::kOsChromeOS, // os_type
925 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
926 nullptr, nullptr}, // os_version
927 0x00, // vendor_id
928 0, // DeviceIDs size
929 nullptr, // DeviceIDs
930 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
931 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
932 &kDriverInfoForEntry56, // driver info
933 nullptr, // GL strings
934 nullptr, // machine model info
935 nullptr, // more conditions
936 },
937 0, // exceptions count
938 nullptr, // exceptions
939 },
940 {
941 59, // id
942 "Multisampling is buggy in Intel IvyBridge",
943 arraysize(kFeatureListForEntry59), // features size
944 kFeatureListForEntry59, // features
945 0, // DisabledExtensions size
946 nullptr, // DisabledExtensions
947 arraysize(kCrBugsForEntry59), // CrBugs size
948 kCrBugsForEntry59, // CrBugs
949 {
950 GpuControlList::kOsLinux, // os_type
951 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
952 nullptr, nullptr}, // os_version
953 0x8086, // vendor_id
954 arraysize(kDeviceIDsForEntry59), // DeviceIDs size
955 kDeviceIDsForEntry59, // DeviceIDs
956 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
957 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
958 nullptr, // driver info
959 nullptr, // GL strings
960 nullptr, // machine model info
961 nullptr, // more conditions
962 },
963 0, // exceptions count
964 nullptr, // exceptions
965 },
966 {
967 64, // id
968 "Linux AMD drivers incorrectly return initial value of 1 for "
969 "TEXTURE_MAX_ANISOTROPY",
970 arraysize(kFeatureListForEntry64), // features size
971 kFeatureListForEntry64, // features
972 0, // DisabledExtensions size
973 nullptr, // DisabledExtensions
974 arraysize(kCrBugsForEntry64), // CrBugs size
975 kCrBugsForEntry64, // CrBugs
976 {
977 GpuControlList::kOsLinux, // os_type
978 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
979 nullptr, nullptr}, // os_version
980 0x1002, // vendor_id
981 0, // DeviceIDs size
982 nullptr, // DeviceIDs
983 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
984 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
985 nullptr, // driver info
986 nullptr, // GL strings
987 nullptr, // machine model info
988 nullptr, // more conditions
989 },
990 0, // exceptions count
991 nullptr, // exceptions
992 },
993 {
994 65, // id
995 "Linux NVIDIA drivers don't have the correct defaults for vertex "
996 "attributes",
997 arraysize(kFeatureListForEntry65), // features size
998 kFeatureListForEntry65, // features
999 0, // DisabledExtensions size
1000 nullptr, // DisabledExtensions
1001 arraysize(kCrBugsForEntry65), // CrBugs size
1002 kCrBugsForEntry65, // CrBugs
1003 {
1004 GpuControlList::kOsLinux, // os_type
1005 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1006 nullptr, nullptr}, // os_version
1007 0x10de, // vendor_id
1008 0, // DeviceIDs size
1009 nullptr, // DeviceIDs
1010 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1011 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1012 nullptr, // driver info
1013 &kGLStringsForEntry65, // GL strings
1014 nullptr, // machine model info
1015 nullptr, // more conditions
1016 },
1017 0, // exceptions count
1018 nullptr, // exceptions
1019 },
1020 {
1021 68, // id
1022 "Disable partial swaps on Mesa drivers (detected with GL_RENDERER)",
1023 arraysize(kFeatureListForEntry68), // features size
1024 kFeatureListForEntry68, // features
1025 0, // DisabledExtensions size
1026 nullptr, // DisabledExtensions
1027 arraysize(kCrBugsForEntry68), // CrBugs size
1028 kCrBugsForEntry68, // CrBugs
1029 {
1030 GpuControlList::kOsLinux, // os_type
1031 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1032 nullptr, nullptr}, // os_version
1033 0x00, // vendor_id
1034 0, // DeviceIDs size
1035 nullptr, // DeviceIDs
1036 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1037 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1038 nullptr, // driver info
1039 &kGLStringsForEntry68, // GL strings
1040 nullptr, // machine model info
1041 nullptr, // more conditions
1042 },
1043 0, // exceptions count
1044 nullptr, // exceptions
1045 },
1046 {
1047 69, // id
1048 "Some shaders in Skia need more than the min available vertex and "
1049 "fragment shader uniform vectors in case of OSMesa",
1050 arraysize(kFeatureListForEntry69), // features size
1051 kFeatureListForEntry69, // features
1052 0, // DisabledExtensions size
1053 nullptr, // DisabledExtensions
1054 arraysize(kCrBugsForEntry69), // CrBugs size
1055 kCrBugsForEntry69, // CrBugs
1056 {
1057 GpuControlList::kOsAny, // os_type
1058 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1059 nullptr, nullptr}, // os_version
1060 0x00, // vendor_id
1061 0, // DeviceIDs size
1062 nullptr, // DeviceIDs
1063 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1064 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1065 &kDriverInfoForEntry69, // driver info
1066 nullptr, // GL strings
1067 nullptr, // machine model info
1068 nullptr, // more conditions
1069 },
1070 0, // exceptions count
1071 nullptr, // exceptions
1072 },
1073 {
1074 70, // id
1075 "Disable D3D11 on older nVidia drivers",
1076 arraysize(kFeatureListForEntry70), // features size
1077 kFeatureListForEntry70, // features
1078 0, // DisabledExtensions size
1079 nullptr, // DisabledExtensions
1080 arraysize(kCrBugsForEntry70), // CrBugs size
1081 kCrBugsForEntry70, // CrBugs
1082 {
1083 GpuControlList::kOsWin, // os_type
1084 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1085 nullptr, nullptr}, // os_version
1086 0x10de, // vendor_id
1087 0, // DeviceIDs size
1088 nullptr, // DeviceIDs
1089 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1090 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1091 &kDriverInfoForEntry70, // driver info
1092 nullptr, // GL strings
1093 nullptr, // machine model info
1094 nullptr, // more conditions
1095 },
1096 0, // exceptions count
1097 nullptr, // exceptions
1098 },
1099 {
1100 71, // id
1101 "Vivante's support of OES_standard_derivatives is buggy",
1102 0, // feature size
1103 nullptr, // features
1104 arraysize(kDisabledExtensionsForEntry71), // DisabledExtensions size
1105 kDisabledExtensionsForEntry71, // DisabledExtensions
1106 arraysize(kCrBugsForEntry71), // CrBugs size
1107 kCrBugsForEntry71, // CrBugs
1108 {
1109 GpuControlList::kOsAndroid, // os_type
1110 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1111 nullptr, nullptr}, // os_version
1112 0x00, // vendor_id
1113 0, // DeviceIDs size
1114 nullptr, // DeviceIDs
1115 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1116 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1117 nullptr, // driver info
1118 &kGLStringsForEntry71, // GL strings
1119 nullptr, // machine model info
1120 nullptr, // more conditions
1121 },
1122 0, // exceptions count
1123 nullptr, // exceptions
1124 },
1125 {
1126 72, // id
1127 "Use virtual contexts on NVIDIA with GLES 3.1",
1128 arraysize(kFeatureListForEntry72), // features size
1129 kFeatureListForEntry72, // features
1130 0, // DisabledExtensions size
1131 nullptr, // DisabledExtensions
1132 arraysize(kCrBugsForEntry72), // CrBugs size
1133 kCrBugsForEntry72, // CrBugs
1134 {
1135 GpuControlList::kOsAndroid, // os_type
1136 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1137 nullptr, nullptr}, // os_version
1138 0x00, // vendor_id
1139 0, // DeviceIDs size
1140 nullptr, // DeviceIDs
1141 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1142 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1143 nullptr, // driver info
1144 &kGLStringsForEntry72, // GL strings
1145 nullptr, // machine model info
1146 &kMoreForEntry72, // more data
1147 },
1148 0, // exceptions count
1149 nullptr, // exceptions
1150 },
1151 {
1152 74, // id
1153 "Testing EGL sync fences was broken on most Qualcomm drivers",
1154 0, // feature size
1155 nullptr, // features
1156 arraysize(kDisabledExtensionsForEntry74), // DisabledExtensions size
1157 kDisabledExtensionsForEntry74, // DisabledExtensions
1158 arraysize(kCrBugsForEntry74), // CrBugs size
1159 kCrBugsForEntry74, // CrBugs
1160 {
1161 GpuControlList::kOsAndroid, // os_type
1162 {GpuControlList::kLE, GpuControlList::kVersionStyleNumerical,
1163 "4.4.4", nullptr}, // os_version
1164 0x00, // vendor_id
1165 0, // DeviceIDs size
1166 nullptr, // DeviceIDs
1167 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1168 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1169 nullptr, // driver info
1170 &kGLStringsForEntry74, // GL strings
1171 nullptr, // machine model info
1172 nullptr, // more conditions
1173 },
1174 0, // exceptions count
1175 nullptr, // exceptions
1176 },
1177 {
1178 75, // id
1179 "Mali-4xx support of EXT_multisampled_render_to_texture is buggy on "
1180 "Android < 4.3",
1181 0, // feature size
1182 nullptr, // features
1183 arraysize(kDisabledExtensionsForEntry75), // DisabledExtensions size
1184 kDisabledExtensionsForEntry75, // DisabledExtensions
1185 arraysize(kCrBugsForEntry75), // CrBugs size
1186 kCrBugsForEntry75, // CrBugs
1187 {
1188 GpuControlList::kOsAndroid, // os_type
1189 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical, "4.3",
1190 nullptr}, // os_version
1191 0x00, // vendor_id
1192 0, // DeviceIDs size
1193 nullptr, // DeviceIDs
1194 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1195 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1196 nullptr, // driver info
1197 &kGLStringsForEntry75, // GL strings
1198 nullptr, // machine model info
1199 nullptr, // more conditions
1200 },
1201 0, // exceptions count
1202 nullptr, // exceptions
1203 },
1204 {
1205 76, // id
1206 "Testing EGL sync fences was broken on IMG",
1207 0, // feature size
1208 nullptr, // features
1209 arraysize(kDisabledExtensionsForEntry76), // DisabledExtensions size
1210 kDisabledExtensionsForEntry76, // DisabledExtensions
1211 arraysize(kCrBugsForEntry76), // CrBugs size
1212 kCrBugsForEntry76, // CrBugs
1213 {
1214 GpuControlList::kOsAndroid, // os_type
1215 {GpuControlList::kLE, GpuControlList::kVersionStyleNumerical,
1216 "4.4.4", nullptr}, // os_version
1217 0x00, // vendor_id
1218 0, // DeviceIDs size
1219 nullptr, // DeviceIDs
1220 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1221 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1222 nullptr, // driver info
1223 &kGLStringsForEntry76, // GL strings
1224 nullptr, // machine model info
1225 nullptr, // more conditions
1226 },
1227 0, // exceptions count
1228 nullptr, // exceptions
1229 },
1230 {
1231 77, // id
1232 "Testing fences was broken on Mali ES2 drivers",
1233 0, // feature size
1234 nullptr, // features
1235 arraysize(kDisabledExtensionsForEntry77), // DisabledExtensions size
1236 kDisabledExtensionsForEntry77, // DisabledExtensions
1237 arraysize(kCrBugsForEntry77), // CrBugs size
1238 kCrBugsForEntry77, // CrBugs
1239 {
1240 GpuControlList::kOsAndroid, // os_type
1241 {GpuControlList::kLE, GpuControlList::kVersionStyleNumerical,
1242 "4.4.4", nullptr}, // os_version
1243 0x00, // vendor_id
1244 0, // DeviceIDs size
1245 nullptr, // DeviceIDs
1246 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1247 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1248 nullptr, // driver info
1249 &kGLStringsForEntry77, // GL strings
1250 nullptr, // machine model info
1251 &kMoreForEntry77, // more data
1252 },
1253 0, // exceptions count
1254 nullptr, // exceptions
1255 },
1256 {
1257 78, // id
1258 "Testing fences was broken on Broadcom drivers",
1259 0, // feature size
1260 nullptr, // features
1261 arraysize(kDisabledExtensionsForEntry78), // DisabledExtensions size
1262 kDisabledExtensionsForEntry78, // DisabledExtensions
1263 arraysize(kCrBugsForEntry78), // CrBugs size
1264 kCrBugsForEntry78, // CrBugs
1265 {
1266 GpuControlList::kOsAndroid, // os_type
1267 {GpuControlList::kLE, GpuControlList::kVersionStyleNumerical,
1268 "4.4.4", nullptr}, // os_version
1269 0x00, // vendor_id
1270 0, // DeviceIDs size
1271 nullptr, // DeviceIDs
1272 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1273 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1274 nullptr, // driver info
1275 &kGLStringsForEntry78, // GL strings
1276 nullptr, // machine model info
1277 nullptr, // more conditions
1278 },
1279 0, // exceptions count
1280 nullptr, // exceptions
1281 },
1282 {
1283 82, // id
1284 "PBO mappings segfault on certain older Qualcomm drivers",
1285 arraysize(kFeatureListForEntry82), // features size
1286 kFeatureListForEntry82, // features
1287 0, // DisabledExtensions size
1288 nullptr, // DisabledExtensions
1289 arraysize(kCrBugsForEntry82), // CrBugs size
1290 kCrBugsForEntry82, // CrBugs
1291 {
1292 GpuControlList::kOsAndroid, // os_type
1293 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical, "4.3",
1294 nullptr}, // os_version
1295 0x00, // vendor_id
1296 0, // DeviceIDs size
1297 nullptr, // DeviceIDs
1298 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1299 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1300 nullptr, // driver info
1301 &kGLStringsForEntry82, // GL strings
1302 nullptr, // machine model info
1303 nullptr, // more conditions
1304 },
1305 0, // exceptions count
1306 nullptr, // exceptions
1307 },
1308 {
1309 86, // id
1310 "Disable use of Direct3D 11 on Matrox video cards",
1311 arraysize(kFeatureListForEntry86), // features size
1312 kFeatureListForEntry86, // features
1313 0, // DisabledExtensions size
1314 nullptr, // DisabledExtensions
1315 arraysize(kCrBugsForEntry86), // CrBugs size
1316 kCrBugsForEntry86, // CrBugs
1317 {
1318 GpuControlList::kOsWin, // os_type
1319 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1320 nullptr, nullptr}, // os_version
1321 0x102b, // vendor_id
1322 0, // DeviceIDs size
1323 nullptr, // DeviceIDs
1324 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1325 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1326 nullptr, // driver info
1327 nullptr, // GL strings
1328 nullptr, // machine model info
1329 nullptr, // more conditions
1330 },
1331 0, // exceptions count
1332 nullptr, // exceptions
1333 },
1334 {
1335 87, // id
1336 "Disable use of Direct3D 11 on older AMD drivers",
1337 arraysize(kFeatureListForEntry87), // features size
1338 kFeatureListForEntry87, // features
1339 0, // DisabledExtensions size
1340 nullptr, // DisabledExtensions
1341 arraysize(kCrBugsForEntry87), // CrBugs size
1342 kCrBugsForEntry87, // CrBugs
1343 {
1344 GpuControlList::kOsWin, // os_type
1345 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1346 nullptr, nullptr}, // os_version
1347 0x1002, // vendor_id
1348 0, // DeviceIDs size
1349 nullptr, // DeviceIDs
1350 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1351 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1352 &kDriverInfoForEntry87, // driver info
1353 nullptr, // GL strings
1354 nullptr, // machine model info
1355 nullptr, // more conditions
1356 },
1357 0, // exceptions count
1358 nullptr, // exceptions
1359 },
1360 {
1361 88, // id
1362 "Always rewrite vec/mat constructors to be consistent",
1363 arraysize(kFeatureListForEntry88), // features size
1364 kFeatureListForEntry88, // features
1365 0, // DisabledExtensions size
1366 nullptr, // DisabledExtensions
1367 arraysize(kCrBugsForEntry88), // CrBugs size
1368 kCrBugsForEntry88, // CrBugs
1369 {
1370 GpuControlList::kOsAny, // os_type
1371 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1372 nullptr, nullptr}, // os_version
1373 0x00, // vendor_id
1374 0, // DeviceIDs size
1375 nullptr, // DeviceIDs
1376 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1377 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1378 nullptr, // driver info
1379 nullptr, // GL strings
1380 nullptr, // machine model info
1381 nullptr, // more conditions
1382 },
1383 0, // exceptions count
1384 nullptr, // exceptions
1385 },
1386 {
1387 89, // id
1388 "Mac drivers handle struct scopes incorrectly",
1389 arraysize(kFeatureListForEntry89), // features size
1390 kFeatureListForEntry89, // features
1391 0, // DisabledExtensions size
1392 nullptr, // DisabledExtensions
1393 arraysize(kCrBugsForEntry89), // CrBugs size
1394 kCrBugsForEntry89, // CrBugs
1395 {
1396 GpuControlList::kOsMacosx, // os_type
1397 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1398 nullptr, nullptr}, // os_version
1399 0x00, // vendor_id
1400 0, // DeviceIDs size
1401 nullptr, // DeviceIDs
1402 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1403 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1404 nullptr, // driver info
1405 nullptr, // GL strings
1406 nullptr, // machine model info
1407 nullptr, // more conditions
1408 },
1409 0, // exceptions count
1410 nullptr, // exceptions
1411 },
1412 {
1413 90, // id
1414 "Linux AMD drivers handle struct scopes incorrectly",
1415 arraysize(kFeatureListForEntry90), // features size
1416 kFeatureListForEntry90, // features
1417 0, // DisabledExtensions size
1418 nullptr, // DisabledExtensions
1419 arraysize(kCrBugsForEntry90), // CrBugs size
1420 kCrBugsForEntry90, // CrBugs
1421 {
1422 GpuControlList::kOsLinux, // os_type
1423 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1424 nullptr, nullptr}, // os_version
1425 0x1002, // vendor_id
1426 0, // DeviceIDs size
1427 nullptr, // DeviceIDs
1428 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1429 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1430 nullptr, // driver info
1431 nullptr, // GL strings
1432 nullptr, // machine model info
1433 nullptr, // more conditions
1434 },
1435 0, // exceptions count
1436 nullptr, // exceptions
1437 },
1438 {
1439 91, // id
1440 "ETC1 non-power-of-two sized textures crash older IMG drivers",
1441 arraysize(kFeatureListForEntry91), // features size
1442 kFeatureListForEntry91, // features
1443 0, // DisabledExtensions size
1444 nullptr, // DisabledExtensions
1445 arraysize(kCrBugsForEntry91), // CrBugs size
1446 kCrBugsForEntry91, // CrBugs
1447 {
1448 GpuControlList::kOsAndroid, // os_type
1449 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1450 nullptr, nullptr}, // os_version
1451 0x00, // vendor_id
1452 0, // DeviceIDs size
1453 nullptr, // DeviceIDs
1454 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1455 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1456 nullptr, // driver info
1457 &kGLStringsForEntry91, // GL strings
1458 nullptr, // machine model info
1459 nullptr, // more conditions
1460 },
1461 0, // exceptions count
1462 nullptr, // exceptions
1463 },
1464 {
1465 92, // id
1466 "Old Intel drivers cannot reliably support D3D11",
1467 arraysize(kFeatureListForEntry92), // features size
1468 kFeatureListForEntry92, // features
1469 0, // DisabledExtensions size
1470 nullptr, // DisabledExtensions
1471 arraysize(kCrBugsForEntry92), // CrBugs size
1472 kCrBugsForEntry92, // CrBugs
1473 {
1474 GpuControlList::kOsWin, // os_type
1475 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1476 nullptr, nullptr}, // os_version
1477 0x8086, // vendor_id
1478 0, // DeviceIDs size
1479 nullptr, // DeviceIDs
1480 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1481 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1482 &kDriverInfoForEntry92, // driver info
1483 nullptr, // GL strings
1484 nullptr, // machine model info
1485 nullptr, // more conditions
1486 },
1487 0, // exceptions count
1488 nullptr, // exceptions
1489 },
1490 {
1491 93, // id
1492 "The GL implementation on the Android emulator has problems with PBOs.",
1493 arraysize(kFeatureListForEntry93), // features size
1494 kFeatureListForEntry93, // features
1495 0, // DisabledExtensions size
1496 nullptr, // DisabledExtensions
1497 arraysize(kCrBugsForEntry93), // CrBugs size
1498 kCrBugsForEntry93, // CrBugs
1499 {
1500 GpuControlList::kOsAndroid, // os_type
1501 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1502 nullptr, nullptr}, // os_version
1503 0x00, // vendor_id
1504 0, // DeviceIDs size
1505 nullptr, // DeviceIDs
1506 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1507 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1508 nullptr, // driver info
1509 &kGLStringsForEntry93, // GL strings
1510 nullptr, // machine model info
1511 &kMoreForEntry93, // more data
1512 },
1513 0, // exceptions count
1514 nullptr, // exceptions
1515 },
1516 {
1517 94, // id
1518 "Disable EGL_KHR_wait_sync on NVIDIA with GLES 3.1",
1519 0, // feature size
1520 nullptr, // features
1521 arraysize(kDisabledExtensionsForEntry94), // DisabledExtensions size
1522 kDisabledExtensionsForEntry94, // DisabledExtensions
1523 arraysize(kCrBugsForEntry94), // CrBugs size
1524 kCrBugsForEntry94, // CrBugs
1525 {
1526 GpuControlList::kOsAndroid, // os_type
1527 {GpuControlList::kLE, GpuControlList::kVersionStyleNumerical,
1528 "5.0.2", nullptr}, // os_version
1529 0x00, // vendor_id
1530 0, // DeviceIDs size
1531 nullptr, // DeviceIDs
1532 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1533 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1534 nullptr, // driver info
1535 &kGLStringsForEntry94, // GL strings
1536 nullptr, // machine model info
1537 &kMoreForEntry94, // more data
1538 },
1539 0, // exceptions count
1540 nullptr, // exceptions
1541 },
1542 {
1543 95, // id
1544 "glClear does not always work on these drivers",
1545 arraysize(kFeatureListForEntry95), // features size
1546 kFeatureListForEntry95, // features
1547 0, // DisabledExtensions size
1548 nullptr, // DisabledExtensions
1549 arraysize(kCrBugsForEntry95), // CrBugs size
1550 kCrBugsForEntry95, // CrBugs
1551 {
1552 GpuControlList::kOsAndroid, // os_type
1553 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1554 nullptr, nullptr}, // os_version
1555 0x00, // vendor_id
1556 0, // DeviceIDs size
1557 nullptr, // DeviceIDs
1558 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1559 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1560 nullptr, // driver info
1561 &kGLStringsForEntry95, // GL strings
1562 nullptr, // machine model info
1563 &kMoreForEntry95, // more data
1564 },
1565 0, // exceptions count
1566 nullptr, // exceptions
1567 },
1568 {
1569 97, // id
1570 "Multisampling has poor performance in Intel BayTrail",
1571 arraysize(kFeatureListForEntry97), // features size
1572 kFeatureListForEntry97, // features
1573 0, // DisabledExtensions size
1574 nullptr, // DisabledExtensions
1575 arraysize(kCrBugsForEntry97), // CrBugs size
1576 kCrBugsForEntry97, // CrBugs
1577 {
1578 GpuControlList::kOsAndroid, // os_type
1579 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1580 nullptr, nullptr}, // os_version
1581 0x00, // vendor_id
1582 0, // DeviceIDs size
1583 nullptr, // DeviceIDs
1584 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1585 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1586 nullptr, // driver info
1587 &kGLStringsForEntry97, // GL strings
1588 nullptr, // machine model info
1589 nullptr, // more conditions
1590 },
1591 0, // exceptions count
1592 nullptr, // exceptions
1593 },
1594 {
1595 98, // id
1596 "PowerVR SGX 540 drivers throw GL_OUT_OF_MEMORY error when a buffer "
1597 "object's size is set to 0",
1598 arraysize(kFeatureListForEntry98), // features size
1599 kFeatureListForEntry98, // features
1600 0, // DisabledExtensions size
1601 nullptr, // DisabledExtensions
1602 arraysize(kCrBugsForEntry98), // CrBugs size
1603 kCrBugsForEntry98, // CrBugs
1604 {
1605 GpuControlList::kOsAndroid, // os_type
1606 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1607 nullptr, nullptr}, // os_version
1608 0x00, // vendor_id
1609 0, // DeviceIDs size
1610 nullptr, // DeviceIDs
1611 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1612 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1613 nullptr, // driver info
1614 &kGLStringsForEntry98, // GL strings
1615 nullptr, // machine model info
1616 nullptr, // more conditions
1617 },
1618 0, // exceptions count
1619 nullptr, // exceptions
1620 },
1621 {
1622 99, // id
1623 "Qualcomm driver before Lollipop deletes egl sync objects after "
1624 "context destruction",
1625 arraysize(kFeatureListForEntry99), // features size
1626 kFeatureListForEntry99, // features
1627 0, // DisabledExtensions size
1628 nullptr, // DisabledExtensions
1629 arraysize(kCrBugsForEntry99), // CrBugs size
1630 kCrBugsForEntry99, // CrBugs
1631 {
1632 GpuControlList::kOsAndroid, // os_type
1633 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical,
1634 "5.0.0", nullptr}, // os_version
1635 0x00, // vendor_id
1636 0, // DeviceIDs size
1637 nullptr, // DeviceIDs
1638 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1639 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1640 nullptr, // driver info
1641 &kGLStringsForEntry99, // GL strings
1642 nullptr, // machine model info
1643 nullptr, // more conditions
1644 },
1645 0, // exceptions count
1646 nullptr, // exceptions
1647 },
1648 {
1649 100, // id
1650 "Disable Direct3D11 on systems with AMD switchable graphics",
1651 arraysize(kFeatureListForEntry100), // features size
1652 kFeatureListForEntry100, // features
1653 0, // DisabledExtensions size
1654 nullptr, // DisabledExtensions
1655 arraysize(kCrBugsForEntry100), // CrBugs size
1656 kCrBugsForEntry100, // CrBugs
1657 {
1658 GpuControlList::kOsWin, // os_type
1659 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1660 nullptr, nullptr}, // os_version
1661 0x00, // vendor_id
1662 0, // DeviceIDs size
1663 nullptr, // DeviceIDs
1664 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1665 GpuControlList::kMultiGpuStyleAMDSwitchable, // multi_gpu_style
1666 nullptr, // driver info
1667 nullptr, // GL strings
1668 nullptr, // machine model info
1669 nullptr, // more conditions
1670 },
1671 0, // exceptions count
1672 nullptr, // exceptions
1673 },
1674 {
1675 101, // id
1676 "The Mali-Txxx driver hangs when reading from currently displayed "
1677 "buffer",
1678 arraysize(kFeatureListForEntry101), // features size
1679 kFeatureListForEntry101, // features
1680 0, // DisabledExtensions size
1681 nullptr, // DisabledExtensions
1682 arraysize(kCrBugsForEntry101), // CrBugs size
1683 kCrBugsForEntry101, // CrBugs
1684 {
1685 GpuControlList::kOsChromeOS, // os_type
1686 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1687 nullptr, nullptr}, // os_version
1688 0x00, // vendor_id
1689 0, // DeviceIDs size
1690 nullptr, // DeviceIDs
1691 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1692 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1693 nullptr, // driver info
1694 &kGLStringsForEntry101, // GL strings
1695 nullptr, // machine model info
1696 nullptr, // more conditions
1697 },
1698 0, // exceptions count
1699 nullptr, // exceptions
1700 },
1701 {
1702 102, // id
1703 "Adreno 420 driver loses FBO attachment contents on bound FBO deletion",
1704 arraysize(kFeatureListForEntry102), // features size
1705 kFeatureListForEntry102, // features
1706 0, // DisabledExtensions size
1707 nullptr, // DisabledExtensions
1708 arraysize(kCrBugsForEntry102), // CrBugs size
1709 kCrBugsForEntry102, // CrBugs
1710 {
1711 GpuControlList::kOsAndroid, // os_type
1712 {GpuControlList::kGT, GpuControlList::kVersionStyleNumerical,
1713 "5.0.2", nullptr}, // os_version
1714 0x00, // vendor_id
1715 0, // DeviceIDs size
1716 nullptr, // DeviceIDs
1717 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1718 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1719 nullptr, // driver info
1720 &kGLStringsForEntry102, // GL strings
1721 nullptr, // machine model info
1722 nullptr, // more conditions
1723 },
1724 0, // exceptions count
1725 nullptr, // exceptions
1726 },
1727 {
1728 103, // id
1729 "Adreno 420 driver drops draw calls after FBO invalidation",
1730 arraysize(kFeatureListForEntry103), // features size
1731 kFeatureListForEntry103, // features
1732 0, // DisabledExtensions size
1733 nullptr, // DisabledExtensions
1734 arraysize(kCrBugsForEntry103), // CrBugs size
1735 kCrBugsForEntry103, // CrBugs
1736 {
1737 GpuControlList::kOsAndroid, // os_type
1738 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1739 nullptr, nullptr}, // os_version
1740 0x00, // vendor_id
1741 0, // DeviceIDs size
1742 nullptr, // DeviceIDs
1743 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1744 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1745 nullptr, // driver info
1746 &kGLStringsForEntry103, // GL strings
1747 nullptr, // machine model info
1748 nullptr, // more conditions
1749 },
1750 0, // exceptions count
1751 nullptr, // exceptions
1752 },
1753 {
1754 104, // id
1755 "EXT_occlusion_query_boolean hangs on MediaTek MT8135 pre-Lollipop",
1756 0, // feature size
1757 nullptr, // features
1758 arraysize(kDisabledExtensionsForEntry104), // DisabledExtensions size
1759 kDisabledExtensionsForEntry104, // DisabledExtensions
1760 0, // CrBugs size
1761 nullptr, // CrBugs
1762 {
1763 GpuControlList::kOsAndroid, // os_type
1764 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical,
1765 "5.0.0", nullptr}, // os_version
1766 0x00, // vendor_id
1767 0, // DeviceIDs size
1768 nullptr, // DeviceIDs
1769 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1770 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1771 nullptr, // driver info
1772 &kGLStringsForEntry104, // GL strings
1773 nullptr, // machine model info
1774 nullptr, // more conditions
1775 },
1776 0, // exceptions count
1777 nullptr, // exceptions
1778 },
1779 {
1780 105, // id
1781 "Framebuffer discarding causes corruption on Mali-4xx",
1782 arraysize(kFeatureListForEntry105), // features size
1783 kFeatureListForEntry105, // features
1784 0, // DisabledExtensions size
1785 nullptr, // DisabledExtensions
1786 arraysize(kCrBugsForEntry105), // CrBugs size
1787 kCrBugsForEntry105, // CrBugs
1788 {
1789 GpuControlList::kOsAndroid, // os_type
1790 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1791 nullptr, nullptr}, // os_version
1792 0x00, // vendor_id
1793 0, // DeviceIDs size
1794 nullptr, // DeviceIDs
1795 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1796 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1797 nullptr, // driver info
1798 &kGLStringsForEntry105, // GL strings
1799 nullptr, // machine model info
1800 nullptr, // more conditions
1801 },
1802 0, // exceptions count
1803 nullptr, // exceptions
1804 },
1805 {
1806 106, // id
1807 "EXT_occlusion_query_boolean hangs on PowerVR SGX 544 (IMG) drivers",
1808 0, // feature size
1809 nullptr, // features
1810 arraysize(kDisabledExtensionsForEntry106), // DisabledExtensions size
1811 kDisabledExtensionsForEntry106, // DisabledExtensions
1812 0, // CrBugs size
1813 nullptr, // CrBugs
1814 {
1815 GpuControlList::kOsAndroid, // os_type
1816 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1817 nullptr, nullptr}, // os_version
1818 0x00, // vendor_id
1819 0, // DeviceIDs size
1820 nullptr, // DeviceIDs
1821 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1822 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1823 nullptr, // driver info
1824 &kGLStringsForEntry106, // GL strings
1825 nullptr, // machine model info
1826 nullptr, // more conditions
1827 },
1828 0, // exceptions count
1829 nullptr, // exceptions
1830 },
1831 {
1832 107, // id
1833 "Workaround IMG PowerVR G6xxx drivers bugs",
1834 arraysize(kFeatureListForEntry107), // features size
1835 kFeatureListForEntry107, // features
1836 arraysize(kDisabledExtensionsForEntry107), // DisabledExtensions size
1837 kDisabledExtensionsForEntry107, // DisabledExtensions
1838 arraysize(kCrBugsForEntry107), // CrBugs size
1839 kCrBugsForEntry107, // CrBugs
1840 {
1841 GpuControlList::kOsAndroid, // os_type
1842 {GpuControlList::kBetween, GpuControlList::kVersionStyleNumerical,
1843 "5.0.0", "5.1.99"}, // os_version
1844 0x00, // vendor_id
1845 0, // DeviceIDs size
1846 nullptr, // DeviceIDs
1847 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1848 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1849 &kDriverInfoForEntry107, // driver info
1850 &kGLStringsForEntry107, // GL strings
1851 nullptr, // machine model info
1852 nullptr, // more conditions
1853 },
1854 0, // exceptions count
1855 nullptr, // exceptions
1856 },
1857 {
1858 108, // id
1859 "Mali-4xx does not support GL_RGB format",
1860 arraysize(kFeatureListForEntry108), // features size
1861 kFeatureListForEntry108, // features
1862 0, // DisabledExtensions size
1863 nullptr, // DisabledExtensions
1864 arraysize(kCrBugsForEntry108), // CrBugs size
1865 kCrBugsForEntry108, // CrBugs
1866 {
1867 GpuControlList::kOsAny, // os_type
1868 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1869 nullptr, nullptr}, // os_version
1870 0x00, // vendor_id
1871 0, // DeviceIDs size
1872 nullptr, // DeviceIDs
1873 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1874 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1875 nullptr, // driver info
1876 &kGLStringsForEntry108, // GL strings
1877 nullptr, // machine model info
1878 nullptr, // more conditions
1879 },
1880 0, // exceptions count
1881 nullptr, // exceptions
1882 },
1883 {
1884 109, // id
1885 "MakeCurrent is slow on Linux with NVIDIA drivers",
1886 arraysize(kFeatureListForEntry109), // features size
1887 kFeatureListForEntry109, // features
1888 0, // DisabledExtensions size
1889 nullptr, // DisabledExtensions
1890 arraysize(kCrBugsForEntry109), // CrBugs size
1891 kCrBugsForEntry109, // CrBugs
1892 {
1893 GpuControlList::kOsLinux, // os_type
1894 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1895 nullptr, nullptr}, // os_version
1896 0x10de, // vendor_id
1897 0, // DeviceIDs size
1898 nullptr, // DeviceIDs
1899 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1900 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1901 nullptr, // driver info
1902 &kGLStringsForEntry109, // GL strings
1903 nullptr, // machine model info
1904 nullptr, // more conditions
1905 },
1906 0, // exceptions count
1907 nullptr, // exceptions
1908 },
1909 {
1910 110, // id
1911 "EGL Sync server causes crashes on Adreno 2xx and 3xx drivers",
1912 0, // feature size
1913 nullptr, // features
1914 arraysize(kDisabledExtensionsForEntry110), // DisabledExtensions size
1915 kDisabledExtensionsForEntry110, // DisabledExtensions
1916 arraysize(kCrBugsForEntry110), // CrBugs size
1917 kCrBugsForEntry110, // CrBugs
1918 {
1919 GpuControlList::kOsAndroid, // os_type
1920 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1921 nullptr, nullptr}, // os_version
1922 0x00, // vendor_id
1923 0, // DeviceIDs size
1924 nullptr, // DeviceIDs
1925 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1926 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1927 &kDriverInfoForEntry110, // driver info
1928 &kGLStringsForEntry110, // GL strings
1929 nullptr, // machine model info
1930 nullptr, // more conditions
1931 },
1932 0, // exceptions count
1933 nullptr, // exceptions
1934 },
1935 {
1936 111, // id
1937 "Discard Framebuffer breaks WebGL on Mali-4xx Linux",
1938 arraysize(kFeatureListForEntry111), // features size
1939 kFeatureListForEntry111, // features
1940 0, // DisabledExtensions size
1941 nullptr, // DisabledExtensions
1942 arraysize(kCrBugsForEntry111), // CrBugs size
1943 kCrBugsForEntry111, // CrBugs
1944 {
1945 GpuControlList::kOsLinux, // os_type
1946 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
1947 nullptr, nullptr}, // os_version
1948 0x00, // vendor_id
1949 0, // DeviceIDs size
1950 nullptr, // DeviceIDs
1951 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1952 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1953 nullptr, // driver info
1954 &kGLStringsForEntry111, // GL strings
1955 nullptr, // machine model info
1956 nullptr, // more conditions
1957 },
1958 0, // exceptions count
1959 nullptr, // exceptions
1960 },
1961 {
1962 112, // id
1963 "EXT_disjoint_timer_query fails after 2 queries on adreno 3xx in "
1964 "lollypop",
1965 arraysize(kFeatureListForEntry112), // features size
1966 kFeatureListForEntry112, // features
1967 0, // DisabledExtensions size
1968 nullptr, // DisabledExtensions
1969 arraysize(kCrBugsForEntry112), // CrBugs size
1970 kCrBugsForEntry112, // CrBugs
1971 {
1972 GpuControlList::kOsAndroid, // os_type
1973 {GpuControlList::kGE, GpuControlList::kVersionStyleNumerical,
1974 "5.0.0", nullptr}, // os_version
1975 0x00, // vendor_id
1976 0, // DeviceIDs size
1977 nullptr, // DeviceIDs
1978 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
1979 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
1980 nullptr, // driver info
1981 &kGLStringsForEntry112, // GL strings
1982 nullptr, // machine model info
1983 nullptr, // more conditions
1984 },
1985 0, // exceptions count
1986 nullptr, // exceptions
1987 },
1988 {
1989 113, // id
1990 "EXT_disjoint_timer_query fails after 256 queries on adreno 4xx",
1991 0, // feature size
1992 nullptr, // features
1993 arraysize(kDisabledExtensionsForEntry113), // DisabledExtensions size
1994 kDisabledExtensionsForEntry113, // DisabledExtensions
1995 arraysize(kCrBugsForEntry113), // CrBugs size
1996 kCrBugsForEntry113, // CrBugs
1997 {
1998 GpuControlList::kOsAndroid, // os_type
1999 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2000 nullptr, nullptr}, // os_version
2001 0x00, // vendor_id
2002 0, // DeviceIDs size
2003 nullptr, // DeviceIDs
2004 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2005 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2006 nullptr, // driver info
2007 &kGLStringsForEntry113, // GL strings
2008 nullptr, // machine model info
2009 nullptr, // more conditions
2010 },
2011 0, // exceptions count
2012 nullptr, // exceptions
2013 },
2014 {
2015 115, // id
2016 "glGetIntegerv with GL_GPU_DISJOINT_EXT causes GL_INVALID_ENUM error",
2017 0, // feature size
2018 nullptr, // features
2019 arraysize(kDisabledExtensionsForEntry115), // DisabledExtensions size
2020 kDisabledExtensionsForEntry115, // DisabledExtensions
2021 arraysize(kCrBugsForEntry115), // CrBugs size
2022 kCrBugsForEntry115, // CrBugs
2023 {
2024 GpuControlList::kOsAndroid, // os_type
2025 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2026 nullptr, nullptr}, // os_version
2027 0x00, // vendor_id
2028 0, // DeviceIDs size
2029 nullptr, // DeviceIDs
2030 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2031 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2032 nullptr, // driver info
2033 &kGLStringsForEntry115, // GL strings
2034 nullptr, // machine model info
2035 &kMoreForEntry115, // more data
2036 },
2037 0, // exceptions count
2038 nullptr, // exceptions
2039 },
2040 {
2041 116, // id
2042 "Adreno 420 support for EXT_multisampled_render_to_texture is buggy on "
2043 "Android < 5.1",
2044 0, // feature size
2045 nullptr, // features
2046 arraysize(kDisabledExtensionsForEntry116), // DisabledExtensions size
2047 kDisabledExtensionsForEntry116, // DisabledExtensions
2048 arraysize(kCrBugsForEntry116), // CrBugs size
2049 kCrBugsForEntry116, // CrBugs
2050 {
2051 GpuControlList::kOsAndroid, // os_type
2052 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical, "5.1",
2053 nullptr}, // os_version
2054 0x00, // vendor_id
2055 0, // DeviceIDs size
2056 nullptr, // DeviceIDs
2057 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2058 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2059 nullptr, // driver info
2060 &kGLStringsForEntry116, // GL strings
2061 nullptr, // machine model info
2062 nullptr, // more conditions
2063 },
2064 0, // exceptions count
2065 nullptr, // exceptions
2066 },
2067 {
2068 117, // id
2069 "GL_KHR_blend_equation_advanced breaks blending on Adreno 4xx",
2070 arraysize(kFeatureListForEntry117), // features size
2071 kFeatureListForEntry117, // features
2072 0, // DisabledExtensions size
2073 nullptr, // DisabledExtensions
2074 arraysize(kCrBugsForEntry117), // CrBugs size
2075 kCrBugsForEntry117, // CrBugs
2076 {
2077 GpuControlList::kOsAndroid, // os_type
2078 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2079 nullptr, nullptr}, // os_version
2080 0x00, // vendor_id
2081 0, // DeviceIDs size
2082 nullptr, // DeviceIDs
2083 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2084 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2085 nullptr, // driver info
2086 &kGLStringsForEntry117, // GL strings
2087 nullptr, // machine model info
2088 nullptr, // more conditions
2089 },
2090 0, // exceptions count
2091 nullptr, // exceptions
2092 },
2093 {
2094 118, // id
2095 "NVIDIA 331 series drivers shader compiler may crash when attempting "
2096 "to optimize pow()",
2097 arraysize(kFeatureListForEntry118), // features size
2098 kFeatureListForEntry118, // features
2099 0, // DisabledExtensions size
2100 nullptr, // DisabledExtensions
2101 arraysize(kCrBugsForEntry118), // CrBugs size
2102 kCrBugsForEntry118, // CrBugs
2103 {
2104 GpuControlList::kOsLinux, // os_type
2105 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2106 nullptr, nullptr}, // os_version
2107 0x10de, // vendor_id
2108 0, // DeviceIDs size
2109 nullptr, // DeviceIDs
2110 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2111 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2112 &kDriverInfoForEntry118, // driver info
2113 &kGLStringsForEntry118, // GL strings
2114 nullptr, // machine model info
2115 nullptr, // more conditions
2116 },
2117 0, // exceptions count
2118 nullptr, // exceptions
2119 },
2120 {
2121 119, // id
2122 "Context lost recovery often fails on Mali-400/450 on Android.",
2123 arraysize(kFeatureListForEntry119), // features size
2124 kFeatureListForEntry119, // features
2125 0, // DisabledExtensions size
2126 nullptr, // DisabledExtensions
2127 arraysize(kCrBugsForEntry119), // CrBugs size
2128 kCrBugsForEntry119, // CrBugs
2129 {
2130 GpuControlList::kOsAndroid, // os_type
2131 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2132 nullptr, nullptr}, // os_version
2133 0x00, // vendor_id
2134 0, // DeviceIDs size
2135 nullptr, // DeviceIDs
2136 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2137 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2138 nullptr, // driver info
2139 &kGLStringsForEntry119, // GL strings
2140 nullptr, // machine model info
2141 nullptr, // more conditions
2142 },
2143 0, // exceptions count
2144 nullptr, // exceptions
2145 },
2146 {
2147 120, // id
2148 "CHROMIUM_copy_texture is slow on Mali pre-Lollipop",
2149 arraysize(kFeatureListForEntry120), // features size
2150 kFeatureListForEntry120, // features
2151 0, // DisabledExtensions size
2152 nullptr, // DisabledExtensions
2153 arraysize(kCrBugsForEntry120), // CrBugs size
2154 kCrBugsForEntry120, // CrBugs
2155 {
2156 GpuControlList::kOsAndroid, // os_type
2157 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical,
2158 "5.0.0", nullptr}, // os_version
2159 0x00, // vendor_id
2160 0, // DeviceIDs size
2161 nullptr, // DeviceIDs
2162 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2163 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2164 nullptr, // driver info
2165 &kGLStringsForEntry120, // GL strings
2166 nullptr, // machine model info
2167 nullptr, // more conditions
2168 },
2169 0, // exceptions count
2170 nullptr, // exceptions
2171 },
2172 {
2173 123, // id
2174 "NVIDIA drivers before 346 lack features in NV_path_rendering and "
2175 "related extensions to implement driver level path rendering.",
2176 0, // feature size
2177 nullptr, // features
2178 arraysize(kDisabledExtensionsForEntry123), // DisabledExtensions size
2179 kDisabledExtensionsForEntry123, // DisabledExtensions
2180 arraysize(kCrBugsForEntry123), // CrBugs size
2181 kCrBugsForEntry123, // CrBugs
2182 {
2183 GpuControlList::kOsLinux, // os_type
2184 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2185 nullptr, nullptr}, // os_version
2186 0x10de, // vendor_id
2187 0, // DeviceIDs size
2188 nullptr, // DeviceIDs
2189 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2190 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2191 &kDriverInfoForEntry123, // driver info
2192 nullptr, // GL strings
2193 nullptr, // machine model info
2194 nullptr, // more conditions
2195 },
2196 0, // exceptions count
2197 nullptr, // exceptions
2198 },
2199 {
2200 125, // id
2201 "glFinish doesn't clear caches on Android",
2202 arraysize(kFeatureListForEntry125), // features size
2203 kFeatureListForEntry125, // features
2204 0, // DisabledExtensions size
2205 nullptr, // DisabledExtensions
2206 arraysize(kCrBugsForEntry125), // CrBugs size
2207 kCrBugsForEntry125, // CrBugs
2208 {
2209 GpuControlList::kOsAndroid, // os_type
2210 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2211 nullptr, nullptr}, // os_version
2212 0x00, // vendor_id
2213 0, // DeviceIDs size
2214 nullptr, // DeviceIDs
2215 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2216 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2217 nullptr, // driver info
2218 &kGLStringsForEntry125, // GL strings
2219 nullptr, // machine model info
2220 nullptr, // more conditions
2221 },
2222 0, // exceptions count
2223 nullptr, // exceptions
2224 },
2225 {
2226 126, // id
2227 "Program binaries contain incorrect bound attribute locations on "
2228 "Adreno 3xx GPUs",
2229 arraysize(kFeatureListForEntry126), // features size
2230 kFeatureListForEntry126, // features
2231 0, // DisabledExtensions size
2232 nullptr, // DisabledExtensions
2233 arraysize(kCrBugsForEntry126), // CrBugs size
2234 kCrBugsForEntry126, // CrBugs
2235 {
2236 GpuControlList::kOsAndroid, // os_type
2237 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2238 nullptr, nullptr}, // os_version
2239 0x00, // vendor_id
2240 0, // DeviceIDs size
2241 nullptr, // DeviceIDs
2242 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2243 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2244 nullptr, // driver info
2245 &kGLStringsForEntry126, // GL strings
2246 nullptr, // machine model info
2247 nullptr, // more conditions
2248 },
2249 0, // exceptions count
2250 nullptr, // exceptions
2251 },
2252 {
2253 127, // id
2254 "Android Adreno crashes on binding incomplete cube map texture to FBO",
2255 arraysize(kFeatureListForEntry127), // features size
2256 kFeatureListForEntry127, // features
2257 0, // DisabledExtensions size
2258 nullptr, // DisabledExtensions
2259 arraysize(kCrBugsForEntry127), // CrBugs size
2260 kCrBugsForEntry127, // CrBugs
2261 {
2262 GpuControlList::kOsAndroid, // os_type
2263 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2264 nullptr, nullptr}, // os_version
2265 0x00, // vendor_id
2266 0, // DeviceIDs size
2267 nullptr, // DeviceIDs
2268 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2269 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2270 nullptr, // driver info
2271 &kGLStringsForEntry127, // GL strings
2272 nullptr, // machine model info
2273 nullptr, // more conditions
2274 },
2275 0, // exceptions count
2276 nullptr, // exceptions
2277 },
2278 {
2279 128, // id
2280 "Linux ATI drivers crash on binding incomplete cube map texture to FBO",
2281 arraysize(kFeatureListForEntry128), // features size
2282 kFeatureListForEntry128, // features
2283 0, // DisabledExtensions size
2284 nullptr, // DisabledExtensions
2285 arraysize(kCrBugsForEntry128), // CrBugs size
2286 kCrBugsForEntry128, // CrBugs
2287 {
2288 GpuControlList::kOsLinux, // os_type
2289 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2290 nullptr, nullptr}, // os_version
2291 0x1002, // vendor_id
2292 0, // DeviceIDs size
2293 nullptr, // DeviceIDs
2294 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2295 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2296 nullptr, // driver info
2297 nullptr, // GL strings
2298 nullptr, // machine model info
2299 nullptr, // more conditions
2300 },
2301 0, // exceptions count
2302 nullptr, // exceptions
2303 },
2304 {
2305 129, // id
2306 "ANGLE crash on glReadPixels from incomplete cube map texture",
2307 arraysize(kFeatureListForEntry129), // features size
2308 kFeatureListForEntry129, // features
2309 0, // DisabledExtensions size
2310 nullptr, // DisabledExtensions
2311 arraysize(kCrBugsForEntry129), // CrBugs size
2312 kCrBugsForEntry129, // CrBugs
2313 {
2314 GpuControlList::kOsWin, // os_type
2315 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2316 nullptr, nullptr}, // os_version
2317 0x00, // vendor_id
2318 0, // DeviceIDs size
2319 nullptr, // DeviceIDs
2320 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2321 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2322 nullptr, // driver info
2323 &kGLStringsForEntry129, // GL strings
2324 nullptr, // machine model info
2325 nullptr, // more conditions
2326 },
2327 0, // exceptions count
2328 nullptr, // exceptions
2329 },
2330 {
2331 130, // id
2332 "NVIDIA fails glReadPixels from incomplete cube map texture",
2333 arraysize(kFeatureListForEntry130), // features size
2334 kFeatureListForEntry130, // features
2335 0, // DisabledExtensions size
2336 nullptr, // DisabledExtensions
2337 arraysize(kCrBugsForEntry130), // CrBugs size
2338 kCrBugsForEntry130, // CrBugs
2339 {
2340 GpuControlList::kOsLinux, // os_type
2341 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2342 nullptr, nullptr}, // os_version
2343 0x10de, // vendor_id
2344 0, // DeviceIDs size
2345 nullptr, // DeviceIDs
2346 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2347 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2348 nullptr, // driver info
2349 &kGLStringsForEntry130, // GL strings
2350 nullptr, // machine model info
2351 nullptr, // more conditions
2352 },
2353 0, // exceptions count
2354 nullptr, // exceptions
2355 },
2356 {
2357 131, // id
2358 "Linux Mesa drivers crash on glTexSubImage2D() to texture storage "
2359 "bound to FBO",
2360 arraysize(kFeatureListForEntry131), // features size
2361 kFeatureListForEntry131, // features
2362 0, // DisabledExtensions size
2363 nullptr, // DisabledExtensions
2364 arraysize(kCrBugsForEntry131), // CrBugs size
2365 kCrBugsForEntry131, // CrBugs
2366 {
2367 GpuControlList::kOsLinux, // os_type
2368 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2369 nullptr, nullptr}, // os_version
2370 0x00, // vendor_id
2371 0, // DeviceIDs size
2372 nullptr, // DeviceIDs
2373 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2374 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2375 &kDriverInfoForEntry131, // driver info
2376 nullptr, // GL strings
2377 nullptr, // machine model info
2378 nullptr, // more conditions
2379 },
2380 0, // exceptions count
2381 nullptr, // exceptions
2382 },
2383 {
2384 132, // id
2385 "On Intel GPUs MSAA performance is not acceptable for GPU "
2386 "rasterization",
2387 arraysize(kFeatureListForEntry132), // features size
2388 kFeatureListForEntry132, // features
2389 0, // DisabledExtensions size
2390 nullptr, // DisabledExtensions
2391 arraysize(kCrBugsForEntry132), // CrBugs size
2392 kCrBugsForEntry132, // CrBugs
2393 {
2394 GpuControlList::kOsAny, // os_type
2395 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2396 nullptr, nullptr}, // os_version
2397 0x8086, // vendor_id
2398 0, // DeviceIDs size
2399 nullptr, // DeviceIDs
2400 GpuControlList::kMultiGpuCategoryActive, // multi_gpu_category
2401 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2402 nullptr, // driver info
2403 nullptr, // GL strings
2404 nullptr, // machine model info
2405 nullptr, // more conditions
2406 },
2407 0, // exceptions count
2408 nullptr, // exceptions
2409 },
2410 {
2411 133, // id
2412 "CHROMIUM_copy_texture with 1MB copy per flush to avoid unwanted cache "
2413 "growth on Adreno",
2414 arraysize(kFeatureListForEntry133), // features size
2415 kFeatureListForEntry133, // features
2416 0, // DisabledExtensions size
2417 nullptr, // DisabledExtensions
2418 arraysize(kCrBugsForEntry133), // CrBugs size
2419 kCrBugsForEntry133, // CrBugs
2420 {
2421 GpuControlList::kOsAndroid, // os_type
2422 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2423 nullptr, nullptr}, // os_version
2424 0x00, // vendor_id
2425 0, // DeviceIDs size
2426 nullptr, // DeviceIDs
2427 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2428 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2429 nullptr, // driver info
2430 &kGLStringsForEntry133, // GL strings
2431 nullptr, // machine model info
2432 nullptr, // more conditions
2433 },
2434 0, // exceptions count
2435 nullptr, // exceptions
2436 },
2437 {
2438 134, // id
2439 "glReadPixels fails on FBOs with SRGB_ALPHA textures",
2440 0, // feature size
2441 nullptr, // features
2442 arraysize(kDisabledExtensionsForEntry134), // DisabledExtensions size
2443 kDisabledExtensionsForEntry134, // DisabledExtensions
2444 arraysize(kCrBugsForEntry134), // CrBugs size
2445 kCrBugsForEntry134, // CrBugs
2446 {
2447 GpuControlList::kOsAndroid, // os_type
2448 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical, "5.0",
2449 nullptr}, // os_version
2450 0x00, // vendor_id
2451 0, // DeviceIDs size
2452 nullptr, // DeviceIDs
2453 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2454 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2455 nullptr, // driver info
2456 &kGLStringsForEntry134, // GL strings
2457 nullptr, // machine model info
2458 nullptr, // more conditions
2459 },
2460 0, // exceptions count
2461 nullptr, // exceptions
2462 },
2463 {
2464 135, // id
2465 "Screen flickers on 2009 iMacs",
2466 arraysize(kFeatureListForEntry135), // features size
2467 kFeatureListForEntry135, // features
2468 0, // DisabledExtensions size
2469 nullptr, // DisabledExtensions
2470 arraysize(kCrBugsForEntry135), // CrBugs size
2471 kCrBugsForEntry135, // CrBugs
2472 {
2473 GpuControlList::kOsMacosx, // os_type
2474 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2475 nullptr, nullptr}, // os_version
2476 0x1002, // vendor_id
2477 arraysize(kDeviceIDsForEntry135), // DeviceIDs size
2478 kDeviceIDsForEntry135, // DeviceIDs
2479 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2480 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2481 nullptr, // driver info
2482 nullptr, // GL strings
2483 nullptr, // machine model info
2484 nullptr, // more conditions
2485 },
2486 0, // exceptions count
2487 nullptr, // exceptions
2488 },
2489 {
2490 136, // id
2491 "glGenerateMipmap fails if the zero texture level is not set on some "
2492 "Mac drivers",
2493 arraysize(kFeatureListForEntry136), // features size
2494 kFeatureListForEntry136, // features
2495 0, // DisabledExtensions size
2496 nullptr, // DisabledExtensions
2497 arraysize(kCrBugsForEntry136), // CrBugs size
2498 kCrBugsForEntry136, // CrBugs
2499 {
2500 GpuControlList::kOsMacosx, // os_type
2501 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2502 nullptr, nullptr}, // os_version
2503 0x00, // vendor_id
2504 0, // DeviceIDs size
2505 nullptr, // DeviceIDs
2506 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2507 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2508 nullptr, // driver info
2509 nullptr, // GL strings
2510 nullptr, // machine model info
2511 nullptr, // more conditions
2512 },
2513 0, // exceptions count
2514 nullptr, // exceptions
2515 },
2516 {
2517 137, // id
2518 "NVIDIA fails glReadPixels from incomplete cube map texture",
2519 arraysize(kFeatureListForEntry137), // features size
2520 kFeatureListForEntry137, // features
2521 0, // DisabledExtensions size
2522 nullptr, // DisabledExtensions
2523 arraysize(kCrBugsForEntry137), // CrBugs size
2524 kCrBugsForEntry137, // CrBugs
2525 {
2526 GpuControlList::kOsAndroid, // os_type
2527 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2528 nullptr, nullptr}, // os_version
2529 0x00, // vendor_id
2530 0, // DeviceIDs size
2531 nullptr, // DeviceIDs
2532 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2533 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2534 nullptr, // driver info
2535 &kGLStringsForEntry137, // GL strings
2536 nullptr, // machine model info
2537 nullptr, // more conditions
2538 },
2539 0, // exceptions count
2540 nullptr, // exceptions
2541 },
2542 {
2543 138, // id
2544 "NVIDIA drivers before 346 lack features in NV_path_rendering and "
2545 "related extensions to implement driver level path rendering.",
2546 0, // feature size
2547 nullptr, // features
2548 arraysize(kDisabledExtensionsForEntry138), // DisabledExtensions size
2549 kDisabledExtensionsForEntry138, // DisabledExtensions
2550 arraysize(kCrBugsForEntry138), // CrBugs size
2551 kCrBugsForEntry138, // CrBugs
2552 {
2553 GpuControlList::kOsAndroid, // os_type
2554 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2555 nullptr, nullptr}, // os_version
2556 0x00, // vendor_id
2557 0, // DeviceIDs size
2558 nullptr, // DeviceIDs
2559 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2560 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2561 &kDriverInfoForEntry138, // driver info
2562 &kGLStringsForEntry138, // GL strings
2563 nullptr, // machine model info
2564 nullptr, // more conditions
2565 },
2566 0, // exceptions count
2567 nullptr, // exceptions
2568 },
2569 {
2570 139, // id
2571 "Mesa drivers wrongly report supporting GL_EXT_texture_rg with GLES "
2572 "2.0 prior version 11.1",
2573 0, // feature size
2574 nullptr, // features
2575 arraysize(kDisabledExtensionsForEntry139), // DisabledExtensions size
2576 kDisabledExtensionsForEntry139, // DisabledExtensions
2577 arraysize(kCrBugsForEntry139), // CrBugs size
2578 kCrBugsForEntry139, // CrBugs
2579 {
2580 GpuControlList::kOsLinux, // os_type
2581 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2582 nullptr, nullptr}, // os_version
2583 0x00, // vendor_id
2584 0, // DeviceIDs size
2585 nullptr, // DeviceIDs
2586 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2587 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2588 &kDriverInfoForEntry139, // driver info
2589 nullptr, // GL strings
2590 nullptr, // machine model info
2591 &kMoreForEntry139, // more data
2592 },
2593 0, // exceptions count
2594 nullptr, // exceptions
2595 },
2596 {
2597 140, // id
2598 "glReadPixels fails on FBOs with SRGB_ALPHA textures, Nexus 5X",
2599 0, // feature size
2600 nullptr, // features
2601 arraysize(kDisabledExtensionsForEntry140), // DisabledExtensions size
2602 kDisabledExtensionsForEntry140, // DisabledExtensions
2603 arraysize(kCrBugsForEntry140), // CrBugs size
2604 kCrBugsForEntry140, // CrBugs
2605 {
2606 GpuControlList::kOsAndroid, // os_type
2607 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2608 nullptr, nullptr}, // os_version
2609 0x00, // vendor_id
2610 0, // DeviceIDs size
2611 nullptr, // DeviceIDs
2612 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2613 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2614 nullptr, // driver info
2615 &kGLStringsForEntry140, // GL strings
2616 nullptr, // machine model info
2617 nullptr, // more conditions
2618 },
2619 0, // exceptions count
2620 nullptr, // exceptions
2621 },
2622 {
2623 141, // id
2624 "Framebuffer discarding can hurt performance on non-tilers",
2625 arraysize(kFeatureListForEntry141), // features size
2626 kFeatureListForEntry141, // features
2627 0, // DisabledExtensions size
2628 nullptr, // DisabledExtensions
2629 arraysize(kCrBugsForEntry141), // CrBugs size
2630 kCrBugsForEntry141, // CrBugs
2631 {
2632 GpuControlList::kOsWin, // os_type
2633 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2634 nullptr, nullptr}, // os_version
2635 0x00, // vendor_id
2636 0, // DeviceIDs size
2637 nullptr, // DeviceIDs
2638 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2639 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2640 nullptr, // driver info
2641 nullptr, // GL strings
2642 nullptr, // machine model info
2643 nullptr, // more conditions
2644 },
2645 0, // exceptions count
2646 nullptr, // exceptions
2647 },
2648 {
2649 142, // id
2650 "Pack parameters work incorrectly with pack buffer bound",
2651 arraysize(kFeatureListForEntry142), // features size
2652 kFeatureListForEntry142, // features
2653 0, // DisabledExtensions size
2654 nullptr, // DisabledExtensions
2655 arraysize(kCrBugsForEntry142), // CrBugs size
2656 kCrBugsForEntry142, // CrBugs
2657 {
2658 GpuControlList::kOsLinux, // os_type
2659 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2660 nullptr, nullptr}, // os_version
2661 0x10de, // vendor_id
2662 0, // DeviceIDs size
2663 nullptr, // DeviceIDs
2664 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2665 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2666 nullptr, // driver info
2667 &kGLStringsForEntry142, // GL strings
2668 nullptr, // machine model info
2669 nullptr, // more conditions
2670 },
2671 0, // exceptions count
2672 nullptr, // exceptions
2673 },
2674 {
2675 143, // id
2676 "Timer queries crash on Intel GPUs on Linux",
2677 0, // feature size
2678 nullptr, // features
2679 arraysize(kDisabledExtensionsForEntry143), // DisabledExtensions size
2680 kDisabledExtensionsForEntry143, // DisabledExtensions
2681 arraysize(kCrBugsForEntry143), // CrBugs size
2682 kCrBugsForEntry143, // CrBugs
2683 {
2684 GpuControlList::kOsLinux, // os_type
2685 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2686 nullptr, nullptr}, // os_version
2687 0x8086, // vendor_id
2688 0, // DeviceIDs size
2689 nullptr, // DeviceIDs
2690 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2691 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2692 &kDriverInfoForEntry143, // driver info
2693 nullptr, // GL strings
2694 nullptr, // machine model info
2695 nullptr, // more conditions
2696 },
2697 0, // exceptions count
2698 nullptr, // exceptions
2699 },
2700 {
2701 144, // id
2702 "Pack parameters work incorrectly with pack buffer bound",
2703 arraysize(kFeatureListForEntry144), // features size
2704 kFeatureListForEntry144, // features
2705 0, // DisabledExtensions size
2706 nullptr, // DisabledExtensions
2707 arraysize(kCrBugsForEntry144), // CrBugs size
2708 kCrBugsForEntry144, // CrBugs
2709 {
2710 GpuControlList::kOsMacosx, // os_type
2711 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2712 nullptr, nullptr}, // os_version
2713 0x00, // vendor_id
2714 0, // DeviceIDs size
2715 nullptr, // DeviceIDs
2716 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2717 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2718 nullptr, // driver info
2719 nullptr, // GL strings
2720 nullptr, // machine model info
2721 nullptr, // more conditions
2722 },
2723 0, // exceptions count
2724 nullptr, // exceptions
2725 },
2726 {
2727 145, // id
2728 "EGLImage ref counting across EGLContext/threads is broken",
2729 arraysize(kFeatureListForEntry145), // features size
2730 kFeatureListForEntry145, // features
2731 0, // DisabledExtensions size
2732 nullptr, // DisabledExtensions
2733 arraysize(kCrBugsForEntry145), // CrBugs size
2734 kCrBugsForEntry145, // CrBugs
2735 {
2736 GpuControlList::kOsAndroid, // os_type
2737 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2738 nullptr, nullptr}, // os_version
2739 0x00, // vendor_id
2740 0, // DeviceIDs size
2741 nullptr, // DeviceIDs
2742 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2743 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2744 nullptr, // driver info
2745 &kGLStringsForEntry145, // GL strings
2746 nullptr, // machine model info
2747 nullptr, // more conditions
2748 },
2749 0, // exceptions count
2750 nullptr, // exceptions
2751 },
2752 {
2753 147, // id
2754 "Limit max texure size to 4096 on all of Android",
2755 arraysize(kFeatureListForEntry147), // features size
2756 kFeatureListForEntry147, // features
2757 0, // DisabledExtensions size
2758 nullptr, // DisabledExtensions
2759 0, // CrBugs size
2760 nullptr, // CrBugs
2761 {
2762 GpuControlList::kOsAndroid, // os_type
2763 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2764 nullptr, nullptr}, // os_version
2765 0x00, // vendor_id
2766 0, // DeviceIDs size
2767 nullptr, // DeviceIDs
2768 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2769 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2770 nullptr, // driver info
2771 nullptr, // GL strings
2772 nullptr, // machine model info
2773 nullptr, // more conditions
2774 },
2775 0, // exceptions count
2776 nullptr, // exceptions
2777 },
2778 {
2779 148, // id
2780 "Mali-4xx GPU on JB doesn't support DetachGLContext",
2781 arraysize(kFeatureListForEntry148), // features size
2782 kFeatureListForEntry148, // features
2783 0, // DisabledExtensions size
2784 nullptr, // DisabledExtensions
2785 0, // CrBugs size
2786 nullptr, // CrBugs
2787 {
2788 GpuControlList::kOsAndroid, // os_type
2789 {GpuControlList::kLE, GpuControlList::kVersionStyleNumerical,
2790 "4.4.4", nullptr}, // os_version
2791 0x00, // vendor_id
2792 0, // DeviceIDs size
2793 nullptr, // DeviceIDs
2794 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2795 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2796 nullptr, // driver info
2797 &kGLStringsForEntry148, // GL strings
2798 nullptr, // machine model info
2799 nullptr, // more conditions
2800 },
2801 0, // exceptions count
2802 nullptr, // exceptions
2803 },
2804 {
2805 149, // id
2806 "Direct composition flashes black initially on Win <10",
2807 arraysize(kFeatureListForEntry149), // features size
2808 kFeatureListForEntry149, // features
2809 0, // DisabledExtensions size
2810 nullptr, // DisabledExtensions
2811 arraysize(kCrBugsForEntry149), // CrBugs size
2812 kCrBugsForEntry149, // CrBugs
2813 {
2814 GpuControlList::kOsWin, // os_type
2815 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical,
2816 "10.0", nullptr}, // os_version
2817 0x00, // vendor_id
2818 0, // DeviceIDs size
2819 nullptr, // DeviceIDs
2820 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2821 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2822 nullptr, // driver info
2823 nullptr, // GL strings
2824 nullptr, // machine model info
2825 nullptr, // more conditions
2826 },
2827 0, // exceptions count
2828 nullptr, // exceptions
2829 },
2830 {
2831 150, // id
2832 "Alignment works incorrectly with unpack buffer bound",
2833 arraysize(kFeatureListForEntry150), // features size
2834 kFeatureListForEntry150, // features
2835 0, // DisabledExtensions size
2836 nullptr, // DisabledExtensions
2837 arraysize(kCrBugsForEntry150), // CrBugs size
2838 kCrBugsForEntry150, // CrBugs
2839 {
2840 GpuControlList::kOsLinux, // os_type
2841 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2842 nullptr, nullptr}, // os_version
2843 0x10de, // vendor_id
2844 0, // DeviceIDs size
2845 nullptr, // DeviceIDs
2846 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2847 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2848 nullptr, // driver info
2849 &kGLStringsForEntry150, // GL strings
2850 nullptr, // machine model info
2851 nullptr, // more conditions
2852 },
2853 0, // exceptions count
2854 nullptr, // exceptions
2855 },
2856 {
2857 151, // id
2858 "Alignment works incorrectly with unpack buffer bound",
2859 arraysize(kFeatureListForEntry151), // features size
2860 kFeatureListForEntry151, // features
2861 0, // DisabledExtensions size
2862 nullptr, // DisabledExtensions
2863 arraysize(kCrBugsForEntry151), // CrBugs size
2864 kCrBugsForEntry151, // CrBugs
2865 {
2866 GpuControlList::kOsMacosx, // os_type
2867 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2868 nullptr, nullptr}, // os_version
2869 0x00, // vendor_id
2870 0, // DeviceIDs size
2871 nullptr, // DeviceIDs
2872 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2873 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2874 nullptr, // driver info
2875 nullptr, // GL strings
2876 nullptr, // machine model info
2877 nullptr, // more conditions
2878 },
2879 0, // exceptions count
2880 nullptr, // exceptions
2881 },
2882 {
2883 152, // id
2884 "copyTexImage2D fails when reading from IOSurface on multiple GPU "
2885 "types.",
2886 arraysize(kFeatureListForEntry152), // features size
2887 kFeatureListForEntry152, // features
2888 0, // DisabledExtensions size
2889 nullptr, // DisabledExtensions
2890 arraysize(kCrBugsForEntry152), // CrBugs size
2891 kCrBugsForEntry152, // CrBugs
2892 {
2893 GpuControlList::kOsMacosx, // os_type
2894 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2895 nullptr, nullptr}, // os_version
2896 0x00, // vendor_id
2897 0, // DeviceIDs size
2898 nullptr, // DeviceIDs
2899 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2900 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2901 nullptr, // driver info
2902 nullptr, // GL strings
2903 nullptr, // machine model info
2904 nullptr, // more conditions
2905 },
2906 0, // exceptions count
2907 nullptr, // exceptions
2908 },
2909 {
2910 153, // id
2911 "Vivante GC1000 with EXT_multisampled_render_to_texture fails "
2912 "glReadPixels",
2913 0, // feature size
2914 nullptr, // features
2915 arraysize(kDisabledExtensionsForEntry153), // DisabledExtensions size
2916 kDisabledExtensionsForEntry153, // DisabledExtensions
2917 arraysize(kCrBugsForEntry153), // CrBugs size
2918 kCrBugsForEntry153, // CrBugs
2919 {
2920 GpuControlList::kOsLinux, // os_type
2921 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2922 nullptr, nullptr}, // os_version
2923 0x00, // vendor_id
2924 0, // DeviceIDs size
2925 nullptr, // DeviceIDs
2926 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2927 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2928 nullptr, // driver info
2929 &kGLStringsForEntry153, // GL strings
2930 nullptr, // machine model info
2931 nullptr, // more conditions
2932 },
2933 0, // exceptions count
2934 nullptr, // exceptions
2935 },
2936 {
2937 156, // id
2938 "glEGLImageTargetTexture2DOES crashes",
2939 arraysize(kFeatureListForEntry156), // features size
2940 kFeatureListForEntry156, // features
2941 0, // DisabledExtensions size
2942 nullptr, // DisabledExtensions
2943 arraysize(kCrBugsForEntry156), // CrBugs size
2944 kCrBugsForEntry156, // CrBugs
2945 {
2946 GpuControlList::kOsAndroid, // os_type
2947 {GpuControlList::kBetween, GpuControlList::kVersionStyleNumerical,
2948 "4.4", "4.4.4"}, // os_version
2949 0x00, // vendor_id
2950 0, // DeviceIDs size
2951 nullptr, // DeviceIDs
2952 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2953 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2954 nullptr, // driver info
2955 &kGLStringsForEntry156, // GL strings
2956 nullptr, // machine model info
2957 nullptr, // more conditions
2958 },
2959 0, // exceptions count
2960 nullptr, // exceptions
2961 },
2962 {
2963 157, // id
2964 "Testing fences was broken on Mali ES2 drivers for specific phone "
2965 "models",
2966 0, // feature size
2967 nullptr, // features
2968 arraysize(kDisabledExtensionsForEntry157), // DisabledExtensions size
2969 kDisabledExtensionsForEntry157, // DisabledExtensions
2970 arraysize(kCrBugsForEntry157), // CrBugs size
2971 kCrBugsForEntry157, // CrBugs
2972 {
2973 GpuControlList::kOsAndroid, // os_type
2974 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
2975 nullptr, nullptr}, // os_version
2976 0x00, // vendor_id
2977 0, // DeviceIDs size
2978 nullptr, // DeviceIDs
2979 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
2980 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
2981 nullptr, // driver info
2982 &kGLStringsForEntry157, // GL strings
2983 &kMachineModelInfoForEntry157, // machine model info
2984 &kMoreForEntry157, // more data
2985 },
2986 0, // exceptions count
2987 nullptr, // exceptions
2988 },
2989 {
2990 158, // id
2991 "IOSurface use becomes pathologically slow over time on 10.10.",
2992 arraysize(kFeatureListForEntry158), // features size
2993 kFeatureListForEntry158, // features
2994 0, // DisabledExtensions size
2995 nullptr, // DisabledExtensions
2996 arraysize(kCrBugsForEntry158), // CrBugs size
2997 kCrBugsForEntry158, // CrBugs
2998 {
2999 GpuControlList::kOsMacosx, // os_type
3000 {GpuControlList::kEQ, GpuControlList::kVersionStyleNumerical,
3001 "10.10", nullptr}, // os_version
3002 0x10de, // vendor_id
3003 arraysize(kDeviceIDsForEntry158), // DeviceIDs size
3004 kDeviceIDsForEntry158, // DeviceIDs
3005 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3006 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3007 nullptr, // driver info
3008 nullptr, // GL strings
3009 nullptr, // machine model info
3010 nullptr, // more conditions
3011 },
3012 0, // exceptions count
3013 nullptr, // exceptions
3014 },
3015 {
3016 159, // id
3017 "Framebuffer discarding can hurt performance on non-tilers",
3018 arraysize(kFeatureListForEntry159), // features size
3019 kFeatureListForEntry159, // features
3020 0, // DisabledExtensions size
3021 nullptr, // DisabledExtensions
3022 arraysize(kCrBugsForEntry159), // CrBugs size
3023 kCrBugsForEntry159, // CrBugs
3024 {
3025 GpuControlList::kOsLinux, // os_type
3026 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3027 nullptr, nullptr}, // os_version
3028 0x10de, // vendor_id
3029 0, // DeviceIDs size
3030 nullptr, // DeviceIDs
3031 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3032 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3033 nullptr, // driver info
3034 &kGLStringsForEntry159, // GL strings
3035 nullptr, // machine model info
3036 nullptr, // more conditions
3037 },
3038 0, // exceptions count
3039 nullptr, // exceptions
3040 },
3041 {
3042 160, // id
3043 "Framebuffer discarding not useful on NVIDIA Kepler architecture and "
3044 "later",
3045 arraysize(kFeatureListForEntry160), // features size
3046 kFeatureListForEntry160, // features
3047 0, // DisabledExtensions size
3048 nullptr, // DisabledExtensions
3049 arraysize(kCrBugsForEntry160), // CrBugs size
3050 kCrBugsForEntry160, // CrBugs
3051 {
3052 GpuControlList::kOsLinux, // os_type
3053 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3054 nullptr, nullptr}, // os_version
3055 0x10de, // vendor_id
3056 0, // DeviceIDs size
3057 nullptr, // DeviceIDs
3058 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3059 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3060 nullptr, // driver info
3061 &kGLStringsForEntry160, // GL strings
3062 nullptr, // machine model info
3063 &kMoreForEntry160, // more data
3064 },
3065 0, // exceptions count
3066 nullptr, // exceptions
3067 },
3068 {
3069 161, // id
3070 "Framebuffer discarding not useful on NVIDIA Kepler architecture and "
3071 "later",
3072 arraysize(kFeatureListForEntry161), // features size
3073 kFeatureListForEntry161, // features
3074 0, // DisabledExtensions size
3075 nullptr, // DisabledExtensions
3076 arraysize(kCrBugsForEntry161), // CrBugs size
3077 kCrBugsForEntry161, // CrBugs
3078 {
3079 GpuControlList::kOsChromeOS, // os_type
3080 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3081 nullptr, nullptr}, // os_version
3082 0x10de, // vendor_id
3083 0, // DeviceIDs size
3084 nullptr, // DeviceIDs
3085 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3086 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3087 nullptr, // driver info
3088 &kGLStringsForEntry161, // GL strings
3089 nullptr, // machine model info
3090 &kMoreForEntry161, // more data
3091 },
3092 0, // exceptions count
3093 nullptr, // exceptions
3094 },
3095 {
3096 162, // id
3097 "Framebuffer discarding not useful on NVIDIA Kepler architecture and "
3098 "later",
3099 arraysize(kFeatureListForEntry162), // features size
3100 kFeatureListForEntry162, // features
3101 0, // DisabledExtensions size
3102 nullptr, // DisabledExtensions
3103 arraysize(kCrBugsForEntry162), // CrBugs size
3104 kCrBugsForEntry162, // CrBugs
3105 {
3106 GpuControlList::kOsAndroid, // os_type
3107 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3108 nullptr, nullptr}, // os_version
3109 0x00, // vendor_id
3110 0, // DeviceIDs size
3111 nullptr, // DeviceIDs
3112 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3113 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3114 nullptr, // driver info
3115 &kGLStringsForEntry162, // GL strings
3116 nullptr, // machine model info
3117 &kMoreForEntry162, // more data
3118 },
3119 0, // exceptions count
3120 nullptr, // exceptions
3121 },
3122 {
3123 163, // id
3124 "Multisample renderbuffers with format GL_RGB8 have performance issues "
3125 "on Intel GPUs.",
3126 arraysize(kFeatureListForEntry163), // features size
3127 kFeatureListForEntry163, // features
3128 0, // DisabledExtensions size
3129 nullptr, // DisabledExtensions
3130 arraysize(kCrBugsForEntry163), // CrBugs size
3131 kCrBugsForEntry163, // CrBugs
3132 {
3133 GpuControlList::kOsMacosx, // os_type
3134 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3135 nullptr, nullptr}, // os_version
3136 0x8086, // vendor_id
3137 0, // DeviceIDs size
3138 nullptr, // DeviceIDs
3139 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3140 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3141 nullptr, // driver info
3142 nullptr, // GL strings
3143 nullptr, // machine model info
3144 nullptr, // more conditions
3145 },
3146 0, // exceptions count
3147 nullptr, // exceptions
3148 },
3149 {
3150 164, // id
3151 "glColorMask does not work for multisample renderbuffers on old AMD "
3152 "GPUs.",
3153 arraysize(kFeatureListForEntry164), // features size
3154 kFeatureListForEntry164, // features
3155 0, // DisabledExtensions size
3156 nullptr, // DisabledExtensions
3157 arraysize(kCrBugsForEntry164), // CrBugs size
3158 kCrBugsForEntry164, // CrBugs
3159 {
3160 GpuControlList::kOsMacosx, // os_type
3161 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3162 nullptr, nullptr}, // os_version
3163 0x1002, // vendor_id
3164 arraysize(kDeviceIDsForEntry164), // DeviceIDs size
3165 kDeviceIDsForEntry164, // DeviceIDs
3166 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3167 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3168 nullptr, // driver info
3169 nullptr, // GL strings
3170 nullptr, // machine model info
3171 nullptr, // more conditions
3172 },
3173 0, // exceptions count
3174 nullptr, // exceptions
3175 },
3176 {
3177 165, // id
3178 "Unpacking overlapping rows from unpack buffers is unstable on NVIDIA "
3179 "GL driver",
3180 arraysize(kFeatureListForEntry165), // features size
3181 kFeatureListForEntry165, // features
3182 0, // DisabledExtensions size
3183 nullptr, // DisabledExtensions
3184 arraysize(kCrBugsForEntry165), // CrBugs size
3185 kCrBugsForEntry165, // CrBugs
3186 {
3187 GpuControlList::kOsAny, // os_type
3188 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3189 nullptr, nullptr}, // os_version
3190 0x00, // vendor_id
3191 0, // DeviceIDs size
3192 nullptr, // DeviceIDs
3193 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3194 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3195 nullptr, // driver info
3196 &kGLStringsForEntry165, // GL strings
3197 nullptr, // machine model info
3198 nullptr, // more conditions
3199 },
3200 0, // exceptions count
3201 nullptr, // exceptions
3202 },
3203 {
3204 167, // id
3205 "glEGLImageTargetTexture2DOES crashes on Mali-400",
3206 arraysize(kFeatureListForEntry167), // features size
3207 kFeatureListForEntry167, // features
3208 0, // DisabledExtensions size
3209 nullptr, // DisabledExtensions
3210 arraysize(kCrBugsForEntry167), // CrBugs size
3211 kCrBugsForEntry167, // CrBugs
3212 {
3213 GpuControlList::kOsAndroid, // os_type
3214 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3215 nullptr, nullptr}, // os_version
3216 0x00, // vendor_id
3217 0, // DeviceIDs size
3218 nullptr, // DeviceIDs
3219 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3220 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3221 nullptr, // driver info
3222 &kGLStringsForEntry167, // GL strings
3223 nullptr, // machine model info
3224 nullptr, // more conditions
3225 },
3226 0, // exceptions count
3227 nullptr, // exceptions
3228 },
3229 {
3230 168, // id
3231 "VirtualBox driver doesn't correctly support partial swaps.",
3232 arraysize(kFeatureListForEntry168), // features size
3233 kFeatureListForEntry168, // features
3234 0, // DisabledExtensions size
3235 nullptr, // DisabledExtensions
3236 arraysize(kCrBugsForEntry168), // CrBugs size
3237 kCrBugsForEntry168, // CrBugs
3238 {
3239 GpuControlList::kOsLinux, // os_type
3240 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3241 nullptr, nullptr}, // os_version
3242 0x80ee, // vendor_id
3243 0, // DeviceIDs size
3244 nullptr, // DeviceIDs
3245 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3246 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3247 nullptr, // driver info
3248 nullptr, // GL strings
3249 nullptr, // machine model info
3250 nullptr, // more conditions
3251 },
3252 0, // exceptions count
3253 nullptr, // exceptions
3254 },
3255 {
3256 169, // id
3257 "Mac Drivers store texture level parameters on int16_t that overflow",
3258 arraysize(kFeatureListForEntry169), // features size
3259 kFeatureListForEntry169, // features
3260 0, // DisabledExtensions size
3261 nullptr, // DisabledExtensions
3262 arraysize(kCrBugsForEntry169), // CrBugs size
3263 kCrBugsForEntry169, // CrBugs
3264 {
3265 GpuControlList::kOsMacosx, // os_type
3266 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical,
3267 "10.12.2", nullptr}, // os_version
3268 0x00, // vendor_id
3269 0, // DeviceIDs size
3270 nullptr, // DeviceIDs
3271 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3272 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3273 nullptr, // driver info
3274 nullptr, // GL strings
3275 nullptr, // machine model info
3276 nullptr, // more conditions
3277 },
3278 0, // exceptions count
3279 nullptr, // exceptions
3280 },
3281 {
3282 170, // id
3283 "Zero copy DXGI video hangs on shutdown on Win < 8.1",
3284 arraysize(kFeatureListForEntry170), // features size
3285 kFeatureListForEntry170, // features
3286 0, // DisabledExtensions size
3287 nullptr, // DisabledExtensions
3288 arraysize(kCrBugsForEntry170), // CrBugs size
3289 kCrBugsForEntry170, // CrBugs
3290 {
3291 GpuControlList::kOsWin, // os_type
3292 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical, "8.1",
3293 nullptr}, // os_version
3294 0x00, // vendor_id
3295 0, // DeviceIDs size
3296 nullptr, // DeviceIDs
3297 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3298 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3299 nullptr, // driver info
3300 nullptr, // GL strings
3301 nullptr, // machine model info
3302 nullptr, // more conditions
3303 },
3304 0, // exceptions count
3305 nullptr, // exceptions
3306 },
3307 {
3308 172, // id
3309 "Limited enabling of Chromium GL_INTEL_framebuffer_CMAA",
3310 arraysize(kFeatureListForEntry172), // features size
3311 kFeatureListForEntry172, // features
3312 0, // DisabledExtensions size
3313 nullptr, // DisabledExtensions
3314 arraysize(kCrBugsForEntry172), // CrBugs size
3315 kCrBugsForEntry172, // CrBugs
3316 {
3317 GpuControlList::kOsAny, // os_type
3318 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3319 nullptr, nullptr}, // os_version
3320 0x00, // vendor_id
3321 0, // DeviceIDs size
3322 nullptr, // DeviceIDs
3323 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3324 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3325 nullptr, // driver info
3326 nullptr, // GL strings
3327 nullptr, // machine model info
3328 nullptr, // more conditions
3329 },
3330 arraysize(kExceptionsForEntry172), // exceptions count
3331 kExceptionsForEntry172, // exceptions
3332 },
3333 {
3334 174, // id
3335 "Adreno 4xx support for EXT_multisampled_render_to_texture is buggy on "
3336 "Android 7.0",
3337 0, // feature size
3338 nullptr, // features
3339 arraysize(kDisabledExtensionsForEntry174), // DisabledExtensions size
3340 kDisabledExtensionsForEntry174, // DisabledExtensions
3341 arraysize(kCrBugsForEntry174), // CrBugs size
3342 kCrBugsForEntry174, // CrBugs
3343 {
3344 GpuControlList::kOsAndroid, // os_type
3345 {GpuControlList::kBetween, GpuControlList::kVersionStyleNumerical,
3346 "7.0.0", "7.0.99"}, // os_version
3347 0x00, // vendor_id
3348 0, // DeviceIDs size
3349 nullptr, // DeviceIDs
3350 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3351 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3352 nullptr, // driver info
3353 &kGLStringsForEntry174, // GL strings
3354 nullptr, // machine model info
3355 nullptr, // more conditions
3356 },
3357 0, // exceptions count
3358 nullptr, // exceptions
3359 },
3360 {
3361 175, // id
3362 "Adreno 5xx support for EXT_multisampled_render_to_texture is buggy on "
3363 "Android < 7.0",
3364 0, // feature size
3365 nullptr, // features
3366 arraysize(kDisabledExtensionsForEntry175), // DisabledExtensions size
3367 kDisabledExtensionsForEntry175, // DisabledExtensions
3368 arraysize(kCrBugsForEntry175), // CrBugs size
3369 kCrBugsForEntry175, // CrBugs
3370 {
3371 GpuControlList::kOsAndroid, // os_type
3372 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical, "7.0",
3373 nullptr}, // os_version
3374 0x00, // vendor_id
3375 0, // DeviceIDs size
3376 nullptr, // DeviceIDs
3377 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3378 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3379 nullptr, // driver info
3380 &kGLStringsForEntry175, // GL strings
3381 nullptr, // machine model info
3382 nullptr, // more conditions
3383 },
3384 0, // exceptions count
3385 nullptr, // exceptions
3386 },
3387 {
3388 176, // id
3389 "glClear does not work on Acer Predator GT-810",
3390 arraysize(kFeatureListForEntry176), // features size
3391 kFeatureListForEntry176, // features
3392 0, // DisabledExtensions size
3393 nullptr, // DisabledExtensions
3394 arraysize(kCrBugsForEntry176), // CrBugs size
3395 kCrBugsForEntry176, // CrBugs
3396 {
3397 GpuControlList::kOsAndroid, // os_type
3398 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3399 nullptr, nullptr}, // os_version
3400 0x00, // vendor_id
3401 0, // DeviceIDs size
3402 nullptr, // DeviceIDs
3403 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3404 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3405 nullptr, // driver info
3406 &kGLStringsForEntry176, // GL strings
3407 nullptr, // machine model info
3408 nullptr, // more conditions
3409 },
3410 0, // exceptions count
3411 nullptr, // exceptions
3412 },
3413 {
3414 177, // id
3415 "glGetFragData{Location|Index} works incorrectly on Max",
3416 arraysize(kFeatureListForEntry177), // features size
3417 kFeatureListForEntry177, // features
3418 0, // DisabledExtensions size
3419 nullptr, // DisabledExtensions
3420 arraysize(kCrBugsForEntry177), // CrBugs size
3421 kCrBugsForEntry177, // CrBugs
3422 {
3423 GpuControlList::kOsMacosx, // os_type
3424 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3425 nullptr, nullptr}, // os_version
3426 0x00, // vendor_id
3427 0, // DeviceIDs size
3428 nullptr, // DeviceIDs
3429 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3430 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3431 nullptr, // driver info
3432 nullptr, // GL strings
3433 nullptr, // machine model info
3434 nullptr, // more conditions
3435 },
3436 0, // exceptions count
3437 nullptr, // exceptions
3438 },
3439 {
3440 178, // id
3441 "GL_KHR_blend_equation_advanced is incorrectly implemented on Intel "
3442 "BayTrail on KitKat",
3443 arraysize(kFeatureListForEntry178), // features size
3444 kFeatureListForEntry178, // features
3445 0, // DisabledExtensions size
3446 nullptr, // DisabledExtensions
3447 arraysize(kCrBugsForEntry178), // CrBugs size
3448 kCrBugsForEntry178, // CrBugs
3449 {
3450 GpuControlList::kOsAndroid, // os_type
3451 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical, "5.0",
3452 nullptr}, // os_version
3453 0x00, // vendor_id
3454 0, // DeviceIDs size
3455 nullptr, // DeviceIDs
3456 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3457 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3458 nullptr, // driver info
3459 &kGLStringsForEntry178, // GL strings
3460 nullptr, // machine model info
3461 nullptr, // more conditions
3462 },
3463 0, // exceptions count
3464 nullptr, // exceptions
3465 },
3466 {
3467 179, // id
3468 "glResumeTransformFeedback works incorrectly on Intel GPUs",
3469 arraysize(kFeatureListForEntry179), // features size
3470 kFeatureListForEntry179, // features
3471 0, // DisabledExtensions size
3472 nullptr, // DisabledExtensions
3473 arraysize(kCrBugsForEntry179), // CrBugs size
3474 kCrBugsForEntry179, // CrBugs
3475 {
3476 GpuControlList::kOsMacosx, // os_type
3477 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3478 nullptr, nullptr}, // os_version
3479 0x8086, // vendor_id
3480 0, // DeviceIDs size
3481 nullptr, // DeviceIDs
3482 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3483 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3484 nullptr, // driver info
3485 nullptr, // GL strings
3486 nullptr, // machine model info
3487 nullptr, // more conditions
3488 },
3489 0, // exceptions count
3490 nullptr, // exceptions
3491 },
3492 {
3493 180, // id
3494 "eglCreateImageKHR fails for one component textures on PowerVR",
3495 arraysize(kFeatureListForEntry180), // features size
3496 kFeatureListForEntry180, // features
3497 0, // DisabledExtensions size
3498 nullptr, // DisabledExtensions
3499 arraysize(kCrBugsForEntry180), // CrBugs size
3500 kCrBugsForEntry180, // CrBugs
3501 {
3502 GpuControlList::kOsAndroid, // os_type
3503 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3504 nullptr, nullptr}, // os_version
3505 0x00, // vendor_id
3506 0, // DeviceIDs size
3507 nullptr, // DeviceIDs
3508 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3509 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3510 nullptr, // driver info
3511 &kGLStringsForEntry180, // GL strings
3512 nullptr, // machine model info
3513 nullptr, // more conditions
3514 },
3515 0, // exceptions count
3516 nullptr, // exceptions
3517 },
3518 {
3519 181, // id
3520 "glTexStorage* are buggy when base mipmap level is not 0",
3521 arraysize(kFeatureListForEntry181), // features size
3522 kFeatureListForEntry181, // features
3523 0, // DisabledExtensions size
3524 nullptr, // DisabledExtensions
3525 arraysize(kCrBugsForEntry181), // CrBugs size
3526 kCrBugsForEntry181, // CrBugs
3527 {
3528 GpuControlList::kOsMacosx, // os_type
3529 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical,
3530 "10.12.4", nullptr}, // os_version
3531 0x00, // vendor_id
3532 0, // DeviceIDs size
3533 nullptr, // DeviceIDs
3534 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3535 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3536 nullptr, // driver info
3537 nullptr, // GL strings
3538 nullptr, // machine model info
3539 nullptr, // more conditions
3540 },
3541 0, // exceptions count
3542 nullptr, // exceptions
3543 },
3544 {
3545 182, // id
3546 "Frequent hang in glClear on old android versions on Mali-T7xx",
3547 arraysize(kFeatureListForEntry182), // features size
3548 kFeatureListForEntry182, // features
3549 0, // DisabledExtensions size
3550 nullptr, // DisabledExtensions
3551 arraysize(kCrBugsForEntry182), // CrBugs size
3552 kCrBugsForEntry182, // CrBugs
3553 {
3554 GpuControlList::kOsAndroid, // os_type
3555 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical, "6.0",
3556 nullptr}, // os_version
3557 0x00, // vendor_id
3558 0, // DeviceIDs size
3559 nullptr, // DeviceIDs
3560 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3561 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3562 nullptr, // driver info
3563 &kGLStringsForEntry182, // GL strings
3564 nullptr, // machine model info
3565 nullptr, // more conditions
3566 },
3567 0, // exceptions count
3568 nullptr, // exceptions
3569 },
3570 {
3571 183, // id
3572 "Result of abs(i) where i is an integer in vertex shader is wrong",
3573 arraysize(kFeatureListForEntry183), // features size
3574 kFeatureListForEntry183, // features
3575 0, // DisabledExtensions size
3576 nullptr, // DisabledExtensions
3577 arraysize(kCrBugsForEntry183), // CrBugs size
3578 kCrBugsForEntry183, // CrBugs
3579 {
3580 GpuControlList::kOsMacosx, // os_type
3581 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3582 nullptr, nullptr}, // os_version
3583 0x8086, // vendor_id
3584 0, // DeviceIDs size
3585 nullptr, // DeviceIDs
3586 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3587 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3588 nullptr, // driver info
3589 nullptr, // GL strings
3590 nullptr, // machine model info
3591 nullptr, // more conditions
3592 },
3593 0, // exceptions count
3594 nullptr, // exceptions
3595 },
3596 {
3597 184, // id
3598 "Rewrite texelFetchOffset to texelFetch for Intel Mac",
3599 arraysize(kFeatureListForEntry184), // features size
3600 kFeatureListForEntry184, // features
3601 0, // DisabledExtensions size
3602 nullptr, // DisabledExtensions
3603 arraysize(kCrBugsForEntry184), // CrBugs size
3604 kCrBugsForEntry184, // CrBugs
3605 {
3606 GpuControlList::kOsMacosx, // os_type
3607 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3608 nullptr, nullptr}, // os_version
3609 0x8086, // vendor_id
3610 0, // DeviceIDs size
3611 nullptr, // DeviceIDs
3612 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3613 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3614 nullptr, // driver info
3615 nullptr, // GL strings
3616 nullptr, // machine model info
3617 nullptr, // more conditions
3618 },
3619 0, // exceptions count
3620 nullptr, // exceptions
3621 },
3622 {
3623 185, // id
3624 "Zero-copy NV12 video displays incorrect colors on NVIDIA drivers.",
3625 arraysize(kFeatureListForEntry185), // features size
3626 kFeatureListForEntry185, // features
3627 0, // DisabledExtensions size
3628 nullptr, // DisabledExtensions
3629 arraysize(kCrBugsForEntry185), // CrBugs size
3630 kCrBugsForEntry185, // CrBugs
3631 {
3632 GpuControlList::kOsWin, // os_type
3633 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3634 nullptr, nullptr}, // os_version
3635 0x10de, // vendor_id
3636 0, // DeviceIDs size
3637 nullptr, // DeviceIDs
3638 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3639 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3640 nullptr, // driver info
3641 nullptr, // GL strings
3642 nullptr, // machine model info
3643 nullptr, // more conditions
3644 },
3645 0, // exceptions count
3646 nullptr, // exceptions
3647 },
3648 {
3649 186, // id
3650 "Rewrite condition in for and while loops for Intel Mac",
3651 arraysize(kFeatureListForEntry186), // features size
3652 kFeatureListForEntry186, // features
3653 0, // DisabledExtensions size
3654 nullptr, // DisabledExtensions
3655 arraysize(kCrBugsForEntry186), // CrBugs size
3656 kCrBugsForEntry186, // CrBugs
3657 {
3658 GpuControlList::kOsMacosx, // os_type
3659 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3660 nullptr, nullptr}, // os_version
3661 0x8086, // vendor_id
3662 0, // DeviceIDs size
3663 nullptr, // DeviceIDs
3664 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3665 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3666 nullptr, // driver info
3667 nullptr, // GL strings
3668 nullptr, // machine model info
3669 nullptr, // more conditions
3670 },
3671 0, // exceptions count
3672 nullptr, // exceptions
3673 },
3674 {
3675 187, // id
3676 "Rewrite do-while loops to simpler constructs on Mac",
3677 arraysize(kFeatureListForEntry187), // features size
3678 kFeatureListForEntry187, // features
3679 0, // DisabledExtensions size
3680 nullptr, // DisabledExtensions
3681 arraysize(kCrBugsForEntry187), // CrBugs size
3682 kCrBugsForEntry187, // CrBugs
3683 {
3684 GpuControlList::kOsMacosx, // os_type
3685 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical,
3686 "10.11", nullptr}, // os_version
3687 0x00, // vendor_id
3688 0, // DeviceIDs size
3689 nullptr, // DeviceIDs
3690 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3691 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3692 nullptr, // driver info
3693 nullptr, // GL strings
3694 nullptr, // machine model info
3695 nullptr, // more conditions
3696 },
3697 0, // exceptions count
3698 nullptr, // exceptions
3699 },
3700 {
3701 188, // id
3702 "AVSampleBufferDisplayLayer leaks IOSurfaces on 10.9.",
3703 arraysize(kFeatureListForEntry188), // features size
3704 kFeatureListForEntry188, // features
3705 0, // DisabledExtensions size
3706 nullptr, // DisabledExtensions
3707 arraysize(kCrBugsForEntry188), // CrBugs size
3708 kCrBugsForEntry188, // CrBugs
3709 {
3710 GpuControlList::kOsMacosx, // os_type
3711 {GpuControlList::kLE, GpuControlList::kVersionStyleNumerical,
3712 "10.10", nullptr}, // os_version
3713 0x00, // vendor_id
3714 0, // DeviceIDs size
3715 nullptr, // DeviceIDs
3716 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3717 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3718 nullptr, // driver info
3719 nullptr, // GL strings
3720 nullptr, // machine model info
3721 nullptr, // more conditions
3722 },
3723 0, // exceptions count
3724 nullptr, // exceptions
3725 },
3726 {
3727 189, // id
3728 "Do TexImage2D first before CopyTexImage2D for cube map texture on "
3729 "Intel Mac 10.11",
3730 arraysize(kFeatureListForEntry189), // features size
3731 kFeatureListForEntry189, // features
3732 0, // DisabledExtensions size
3733 nullptr, // DisabledExtensions
3734 arraysize(kCrBugsForEntry189), // CrBugs size
3735 kCrBugsForEntry189, // CrBugs
3736 {
3737 GpuControlList::kOsMacosx, // os_type
3738 {GpuControlList::kLE, GpuControlList::kVersionStyleNumerical,
3739 "10.11", nullptr}, // os_version
3740 0x8086, // vendor_id
3741 0, // DeviceIDs size
3742 nullptr, // DeviceIDs
3743 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3744 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3745 nullptr, // driver info
3746 nullptr, // GL strings
3747 nullptr, // machine model info
3748 nullptr, // more conditions
3749 },
3750 0, // exceptions count
3751 nullptr, // exceptions
3752 },
3753 {
3754 190, // id
3755 "Disable partial swaps on Mesa drivers (detected with GL_VERSION)",
3756 arraysize(kFeatureListForEntry190), // features size
3757 kFeatureListForEntry190, // features
3758 0, // DisabledExtensions size
3759 nullptr, // DisabledExtensions
3760 arraysize(kCrBugsForEntry190), // CrBugs size
3761 kCrBugsForEntry190, // CrBugs
3762 {
3763 GpuControlList::kOsLinux, // os_type
3764 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3765 nullptr, nullptr}, // os_version
3766 0x00, // vendor_id
3767 0, // DeviceIDs size
3768 nullptr, // DeviceIDs
3769 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3770 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3771 nullptr, // driver info
3772 &kGLStringsForEntry190, // GL strings
3773 nullptr, // machine model info
3774 nullptr, // more conditions
3775 },
3776 0, // exceptions count
3777 nullptr, // exceptions
3778 },
3779 {
3780 191, // id
3781 "Emulate GLSL function isnan() on Intel Mac",
3782 arraysize(kFeatureListForEntry191), // features size
3783 kFeatureListForEntry191, // features
3784 0, // DisabledExtensions size
3785 nullptr, // DisabledExtensions
3786 arraysize(kCrBugsForEntry191), // CrBugs size
3787 kCrBugsForEntry191, // CrBugs
3788 {
3789 GpuControlList::kOsMacosx, // os_type
3790 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3791 nullptr, nullptr}, // os_version
3792 0x8086, // vendor_id
3793 arraysize(kDeviceIDsForEntry191), // DeviceIDs size
3794 kDeviceIDsForEntry191, // DeviceIDs
3795 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3796 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3797 nullptr, // driver info
3798 nullptr, // GL strings
3799 nullptr, // machine model info
3800 nullptr, // more conditions
3801 },
3802 0, // exceptions count
3803 nullptr, // exceptions
3804 },
3805 {
3806 192, // id
3807 "Decode and encode before generateMipmap for srgb format textures on "
3808 "os except macosx",
3809 arraysize(kFeatureListForEntry192), // features size
3810 kFeatureListForEntry192, // features
3811 0, // DisabledExtensions size
3812 nullptr, // DisabledExtensions
3813 arraysize(kCrBugsForEntry192), // CrBugs size
3814 kCrBugsForEntry192, // CrBugs
3815 {
3816 GpuControlList::kOsAny, // os_type
3817 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3818 nullptr, nullptr}, // os_version
3819 0x00, // vendor_id
3820 0, // DeviceIDs size
3821 nullptr, // DeviceIDs
3822 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3823 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3824 nullptr, // driver info
3825 nullptr, // GL strings
3826 nullptr, // machine model info
3827 &kMoreForEntry192, // more data
3828 },
3829 arraysize(kExceptionsForEntry192), // exceptions count
3830 kExceptionsForEntry192, // exceptions
3831 },
3832 {
3833 193, // id
3834 "Decode and encode before generateMipmap for srgb format textures on "
3835 "macosx",
3836 arraysize(kFeatureListForEntry193), // features size
3837 kFeatureListForEntry193, // features
3838 0, // DisabledExtensions size
3839 nullptr, // DisabledExtensions
3840 arraysize(kCrBugsForEntry193), // CrBugs size
3841 kCrBugsForEntry193, // CrBugs
3842 {
3843 GpuControlList::kOsMacosx, // os_type
3844 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3845 nullptr, nullptr}, // os_version
3846 0x00, // vendor_id
3847 0, // DeviceIDs size
3848 nullptr, // DeviceIDs
3849 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3850 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3851 nullptr, // driver info
3852 nullptr, // GL strings
3853 nullptr, // machine model info
3854 nullptr, // more conditions
3855 },
3856 0, // exceptions count
3857 nullptr, // exceptions
3858 },
3859 {
3860 194, // id
3861 "Init first two levels before CopyTexImage2D for cube map texture on "
3862 "Intel Mac 10.12",
3863 arraysize(kFeatureListForEntry194), // features size
3864 kFeatureListForEntry194, // features
3865 0, // DisabledExtensions size
3866 nullptr, // DisabledExtensions
3867 arraysize(kCrBugsForEntry194), // CrBugs size
3868 kCrBugsForEntry194, // CrBugs
3869 {
3870 GpuControlList::kOsMacosx, // os_type
3871 {GpuControlList::kGE, GpuControlList::kVersionStyleNumerical,
3872 "10.12", nullptr}, // os_version
3873 0x8086, // vendor_id
3874 0, // DeviceIDs size
3875 nullptr, // DeviceIDs
3876 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3877 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3878 nullptr, // driver info
3879 nullptr, // GL strings
3880 nullptr, // machine model info
3881 nullptr, // more conditions
3882 },
3883 0, // exceptions count
3884 nullptr, // exceptions
3885 },
3886 {
3887 195, // id
3888 "Insert statements to reference all members in unused std140/shared "
3889 "blocks on Mac",
3890 arraysize(kFeatureListForEntry195), // features size
3891 kFeatureListForEntry195, // features
3892 0, // DisabledExtensions size
3893 nullptr, // DisabledExtensions
3894 arraysize(kCrBugsForEntry195), // CrBugs size
3895 kCrBugsForEntry195, // CrBugs
3896 {
3897 GpuControlList::kOsMacosx, // os_type
3898 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3899 nullptr, nullptr}, // os_version
3900 0x00, // vendor_id
3901 0, // DeviceIDs size
3902 nullptr, // DeviceIDs
3903 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3904 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3905 nullptr, // driver info
3906 nullptr, // GL strings
3907 nullptr, // machine model info
3908 nullptr, // more conditions
3909 },
3910 0, // exceptions count
3911 nullptr, // exceptions
3912 },
3913 {
3914 196, // id
3915 "Tex(Sub)Image3D performs incorrectly when uploading from unpack "
3916 "buffer with GL_UNPACK_IMAGE_HEIGHT greater than zero on Intel Macs",
3917 arraysize(kFeatureListForEntry196), // features size
3918 kFeatureListForEntry196, // features
3919 0, // DisabledExtensions size
3920 nullptr, // DisabledExtensions
3921 arraysize(kCrBugsForEntry196), // CrBugs size
3922 kCrBugsForEntry196, // CrBugs
3923 {
3924 GpuControlList::kOsMacosx, // os_type
3925 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3926 nullptr, nullptr}, // os_version
3927 0x8086, // vendor_id
3928 0, // DeviceIDs size
3929 nullptr, // DeviceIDs
3930 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3931 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3932 nullptr, // driver info
3933 nullptr, // GL strings
3934 nullptr, // machine model info
3935 nullptr, // more conditions
3936 },
3937 0, // exceptions count
3938 nullptr, // exceptions
3939 },
3940 {
3941 197, // id
3942 "adjust src/dst region if blitting pixels outside read framebuffer on "
3943 "Mac",
3944 arraysize(kFeatureListForEntry197), // features size
3945 kFeatureListForEntry197, // features
3946 0, // DisabledExtensions size
3947 nullptr, // DisabledExtensions
3948 arraysize(kCrBugsForEntry197), // CrBugs size
3949 kCrBugsForEntry197, // CrBugs
3950 {
3951 GpuControlList::kOsMacosx, // os_type
3952 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3953 nullptr, nullptr}, // os_version
3954 0x00, // vendor_id
3955 0, // DeviceIDs size
3956 nullptr, // DeviceIDs
3957 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3958 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3959 nullptr, // driver info
3960 nullptr, // GL strings
3961 nullptr, // machine model info
3962 nullptr, // more conditions
3963 },
3964 0, // exceptions count
3965 nullptr, // exceptions
3966 },
3967 {
3968 198, // id
3969 "adjust src/dst region if blitting pixels outside read framebuffer on "
3970 "Linux Intel",
3971 arraysize(kFeatureListForEntry198), // features size
3972 kFeatureListForEntry198, // features
3973 0, // DisabledExtensions size
3974 nullptr, // DisabledExtensions
3975 arraysize(kCrBugsForEntry198), // CrBugs size
3976 kCrBugsForEntry198, // CrBugs
3977 {
3978 GpuControlList::kOsLinux, // os_type
3979 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
3980 nullptr, nullptr}, // os_version
3981 0x8086, // vendor_id
3982 0, // DeviceIDs size
3983 nullptr, // DeviceIDs
3984 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
3985 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
3986 nullptr, // driver info
3987 nullptr, // GL strings
3988 nullptr, // machine model info
3989 nullptr, // more conditions
3990 },
3991 0, // exceptions count
3992 nullptr, // exceptions
3993 },
3994 {
3995 199, // id
3996 "adjust src/dst region if blitting pixels outside read framebuffer on "
3997 "Linux AMD",
3998 arraysize(kFeatureListForEntry199), // features size
3999 kFeatureListForEntry199, // features
4000 0, // DisabledExtensions size
4001 nullptr, // DisabledExtensions
4002 arraysize(kCrBugsForEntry199), // CrBugs size
4003 kCrBugsForEntry199, // CrBugs
4004 {
4005 GpuControlList::kOsLinux, // os_type
4006 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4007 nullptr, nullptr}, // os_version
4008 0x1002, // vendor_id
4009 0, // DeviceIDs size
4010 nullptr, // DeviceIDs
4011 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4012 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4013 nullptr, // driver info
4014 nullptr, // GL strings
4015 nullptr, // machine model info
4016 nullptr, // more conditions
4017 },
4018 0, // exceptions count
4019 nullptr, // exceptions
4020 },
4021 {
4022 200, // id
4023 "ES3 support is unreliable on some older drivers",
4024 arraysize(kFeatureListForEntry200), // features size
4025 kFeatureListForEntry200, // features
4026 0, // DisabledExtensions size
4027 nullptr, // DisabledExtensions
4028 arraysize(kCrBugsForEntry200), // CrBugs size
4029 kCrBugsForEntry200, // CrBugs
4030 {
4031 GpuControlList::kOsAndroid, // os_type
4032 {GpuControlList::kLT, GpuControlList::kVersionStyleNumerical, "4.4",
4033 nullptr}, // os_version
4034 0x00, // vendor_id
4035 0, // DeviceIDs size
4036 nullptr, // DeviceIDs
4037 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4038 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4039 nullptr, // driver info
4040 nullptr, // GL strings
4041 nullptr, // machine model info
4042 nullptr, // more conditions
4043 },
4044 0, // exceptions count
4045 nullptr, // exceptions
4046 },
4047 {
4048 201, // id
4049 "AMD drivers in Linux require invariant qualifier to match between "
4050 "vertex and fragment shaders",
4051 arraysize(kFeatureListForEntry201), // features size
4052 kFeatureListForEntry201, // features
4053 0, // DisabledExtensions size
4054 nullptr, // DisabledExtensions
4055 arraysize(kCrBugsForEntry201), // CrBugs size
4056 kCrBugsForEntry201, // CrBugs
4057 {
4058 GpuControlList::kOsLinux, // os_type
4059 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4060 nullptr, nullptr}, // os_version
4061 0x1002, // vendor_id
4062 0, // DeviceIDs size
4063 nullptr, // DeviceIDs
4064 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4065 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4066 nullptr, // driver info
4067 nullptr, // GL strings
4068 nullptr, // machine model info
4069 nullptr, // more conditions
4070 },
4071 0, // exceptions count
4072 nullptr, // exceptions
4073 },
4074 {
4075 202, // id
4076 "Mac driver GL 4.1 requires invariant and centroid to match between "
4077 "shaders",
4078 arraysize(kFeatureListForEntry202), // features size
4079 kFeatureListForEntry202, // features
4080 0, // DisabledExtensions size
4081 nullptr, // DisabledExtensions
4082 arraysize(kCrBugsForEntry202), // CrBugs size
4083 kCrBugsForEntry202, // CrBugs
4084 {
4085 GpuControlList::kOsMacosx, // os_type
4086 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4087 nullptr, nullptr}, // os_version
4088 0x00, // vendor_id
4089 0, // DeviceIDs size
4090 nullptr, // DeviceIDs
4091 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4092 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4093 nullptr, // driver info
4094 nullptr, // GL strings
4095 nullptr, // machine model info
4096 nullptr, // more conditions
4097 },
4098 0, // exceptions count
4099 nullptr, // exceptions
4100 },
4101 {
4102 203, // id
4103 "Mesa driver GL 3.3 requires invariant and centroid to match between "
4104 "shaders",
4105 arraysize(kFeatureListForEntry203), // features size
4106 kFeatureListForEntry203, // features
4107 0, // DisabledExtensions size
4108 nullptr, // DisabledExtensions
4109 arraysize(kCrBugsForEntry203), // CrBugs size
4110 kCrBugsForEntry203, // CrBugs
4111 {
4112 GpuControlList::kOsLinux, // os_type
4113 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4114 nullptr, nullptr}, // os_version
4115 0x00, // vendor_id
4116 0, // DeviceIDs size
4117 nullptr, // DeviceIDs
4118 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4119 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4120 &kDriverInfoForEntry203, // driver info
4121 nullptr, // GL strings
4122 nullptr, // machine model info
4123 &kMoreForEntry203, // more data
4124 },
4125 0, // exceptions count
4126 nullptr, // exceptions
4127 },
4128 {
4129 205, // id
4130 "Adreno 5xx support for EXT_multisampled_render_to_texture is buggy on "
4131 "Android 7.1",
4132 0, // feature size
4133 nullptr, // features
4134 arraysize(kDisabledExtensionsForEntry205), // DisabledExtensions size
4135 kDisabledExtensionsForEntry205, // DisabledExtensions
4136 arraysize(kCrBugsForEntry205), // CrBugs size
4137 kCrBugsForEntry205, // CrBugs
4138 {
4139 GpuControlList::kOsAndroid, // os_type
4140 {GpuControlList::kEQ, GpuControlList::kVersionStyleNumerical,
4141 "7.1.0", nullptr}, // os_version
4142 0x00, // vendor_id
4143 0, // DeviceIDs size
4144 nullptr, // DeviceIDs
4145 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4146 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4147 nullptr, // driver info
4148 &kGLStringsForEntry205, // GL strings
4149 nullptr, // machine model info
4150 nullptr, // more conditions
4151 },
4152 0, // exceptions count
4153 nullptr, // exceptions
4154 },
4155 {
4156 206, // id
4157 "Disable KHR_blend_equation_advanced until cc shaders are updated",
4158 0, // feature size
4159 nullptr, // features
4160 arraysize(kDisabledExtensionsForEntry206), // DisabledExtensions size
4161 kDisabledExtensionsForEntry206, // DisabledExtensions
4162 arraysize(kCrBugsForEntry206), // CrBugs size
4163 kCrBugsForEntry206, // CrBugs
4164 {
4165 GpuControlList::kOsAny, // os_type
4166 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4167 nullptr, nullptr}, // os_version
4168 0x00, // vendor_id
4169 0, // DeviceIDs size
4170 nullptr, // DeviceIDs
4171 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4172 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4173 nullptr, // driver info
4174 nullptr, // GL strings
4175 nullptr, // machine model info
4176 nullptr, // more conditions
4177 },
4178 0, // exceptions count
4179 nullptr, // exceptions
4180 },
4181 {
4182 207, // id
4183 "Decode and Encode before generateMipmap for srgb format textures on "
4184 "Windows",
4185 arraysize(kFeatureListForEntry207), // features size
4186 kFeatureListForEntry207, // features
4187 0, // DisabledExtensions size
4188 nullptr, // DisabledExtensions
4189 arraysize(kCrBugsForEntry207), // CrBugs size
4190 kCrBugsForEntry207, // CrBugs
4191 {
4192 GpuControlList::kOsWin, // os_type
4193 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4194 nullptr, nullptr}, // os_version
4195 0x00, // vendor_id
4196 0, // DeviceIDs size
4197 nullptr, // DeviceIDs
4198 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4199 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4200 nullptr, // driver info
4201 nullptr, // GL strings
4202 nullptr, // machine model info
4203 nullptr, // more conditions
4204 },
4205 0, // exceptions count
4206 nullptr, // exceptions
4207 },
4208 {
4209 208, // id
4210 "Decode and Encode before generateMipmap for srgb format textures on "
4211 "Linux Mesa ANGLE path",
4212 arraysize(kFeatureListForEntry208), // features size
4213 kFeatureListForEntry208, // features
4214 0, // DisabledExtensions size
4215 nullptr, // DisabledExtensions
4216 arraysize(kCrBugsForEntry208), // CrBugs size
4217 kCrBugsForEntry208, // CrBugs
4218 {
4219 GpuControlList::kOsLinux, // os_type
4220 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4221 nullptr, nullptr}, // os_version
4222 0x8086, // vendor_id
4223 0, // DeviceIDs size
4224 nullptr, // DeviceIDs
4225 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4226 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4227 nullptr, // driver info
4228 &kGLStringsForEntry208, // GL strings
4229 nullptr, // machine model info
4230 nullptr, // more conditions
4231 },
4232 0, // exceptions count
4233 nullptr, // exceptions
4234 },
4235 {
4236 209, // id
4237 "Decode and Encode before generateMipmap for srgb format textures on "
4238 "Chromeos Intel",
4239 arraysize(kFeatureListForEntry209), // features size
4240 kFeatureListForEntry209, // features
4241 0, // DisabledExtensions size
4242 nullptr, // DisabledExtensions
4243 arraysize(kCrBugsForEntry209), // CrBugs size
4244 kCrBugsForEntry209, // CrBugs
4245 {
4246 GpuControlList::kOsChromeOS, // os_type
4247 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4248 nullptr, nullptr}, // os_version
4249 0x8086, // vendor_id
4250 0, // DeviceIDs size
4251 nullptr, // DeviceIDs
4252 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4253 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4254 nullptr, // driver info
4255 nullptr, // GL strings
4256 nullptr, // machine model info
4257 nullptr, // more conditions
4258 },
4259 0, // exceptions count
4260 nullptr, // exceptions
4261 },
4262 {
4263 210, // id
4264 "Decode and Encode before generateMipmap for srgb format textures on "
4265 "Linux AMD",
4266 arraysize(kFeatureListForEntry210), // features size
4267 kFeatureListForEntry210, // features
4268 0, // DisabledExtensions size
4269 nullptr, // DisabledExtensions
4270 arraysize(kCrBugsForEntry210), // CrBugs size
4271 kCrBugsForEntry210, // CrBugs
4272 {
4273 GpuControlList::kOsLinux, // os_type
4274 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4275 nullptr, nullptr}, // os_version
4276 0x1002, // vendor_id
4277 0, // DeviceIDs size
4278 nullptr, // DeviceIDs
4279 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4280 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4281 nullptr, // driver info
4282 nullptr, // GL strings
4283 nullptr, // machine model info
4284 nullptr, // more conditions
4285 },
4286 0, // exceptions count
4287 nullptr, // exceptions
4288 },
4289 {
4290 211, // id
4291 "Rewrite -float to 0.0 - float for Intel Mac",
4292 arraysize(kFeatureListForEntry211), // features size
4293 kFeatureListForEntry211, // features
4294 0, // DisabledExtensions size
4295 nullptr, // DisabledExtensions
4296 arraysize(kCrBugsForEntry211), // CrBugs size
4297 kCrBugsForEntry211, // CrBugs
4298 {
4299 GpuControlList::kOsMacosx, // os_type
4300 {GpuControlList::kLE, GpuControlList::kVersionStyleNumerical,
4301 "10.11", nullptr}, // os_version
4302 0x8086, // vendor_id
4303 0, // DeviceIDs size
4304 nullptr, // DeviceIDs
4305 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4306 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4307 nullptr, // driver info
4308 nullptr, // GL strings
4309 nullptr, // machine model info
4310 nullptr, // more conditions
4311 },
4312 0, // exceptions count
4313 nullptr, // exceptions
4314 },
4315 {
4316 212, // id
4317 "Program binaries don't contain transform feedback varyings on "
4318 "Qualcomm GPUs",
4319 arraysize(kFeatureListForEntry212), // features size
4320 kFeatureListForEntry212, // features
4321 0, // DisabledExtensions size
4322 nullptr, // DisabledExtensions
4323 arraysize(kCrBugsForEntry212), // CrBugs size
4324 kCrBugsForEntry212, // CrBugs
4325 {
4326 GpuControlList::kOsAndroid, // os_type
4327 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4328 nullptr, nullptr}, // os_version
4329 0x00, // vendor_id
4330 0, // DeviceIDs size
4331 nullptr, // DeviceIDs
4332 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4333 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4334 nullptr, // driver info
4335 &kGLStringsForEntry212, // GL strings
4336 nullptr, // machine model info
4337 nullptr, // more conditions
4338 },
4339 0, // exceptions count
4340 nullptr, // exceptions
4341 },
4342 {
4343 213, // id
4344 "The Mali-Gxx driver does not guarantee flush ordering",
4345 arraysize(kFeatureListForEntry213), // features size
4346 kFeatureListForEntry213, // features
4347 0, // DisabledExtensions size
4348 nullptr, // DisabledExtensions
4349 arraysize(kCrBugsForEntry213), // CrBugs size
4350 kCrBugsForEntry213, // CrBugs
4351 {
4352 GpuControlList::kOsAny, // os_type
4353 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4354 nullptr, nullptr}, // os_version
4355 0x00, // vendor_id
4356 0, // DeviceIDs size
4357 nullptr, // DeviceIDs
4358 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4359 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4360 nullptr, // driver info
4361 &kGLStringsForEntry213, // GL strings
4362 nullptr, // machine model info
4363 nullptr, // more conditions
4364 },
4365 0, // exceptions count
4366 nullptr, // exceptions
4367 },
4368 {
4369 214, // id
4370 "Certain versions of Qualcomm driver don't setup scissor state "
4371 "correctly when FBO0 is bound.",
4372 arraysize(kFeatureListForEntry214), // features size
4373 kFeatureListForEntry214, // features
4374 0, // DisabledExtensions size
4375 nullptr, // DisabledExtensions
4376 arraysize(kCrBugsForEntry214), // CrBugs size
4377 kCrBugsForEntry214, // CrBugs
4378 {
4379 GpuControlList::kOsAny, // os_type
4380 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4381 nullptr, nullptr}, // os_version
4382 0x00, // vendor_id
4383 0, // DeviceIDs size
4384 nullptr, // DeviceIDs
4385 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4386 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4387 nullptr, // driver info
4388 &kGLStringsForEntry214, // GL strings
4389 &kMachineModelInfoForEntry214, // machine model info
4390 nullptr, // more conditions
4391 },
4392 0, // exceptions count
4393 nullptr, // exceptions
4394 },
4395 {
4396 215, // id
4397 "Fake no-op GPU driver bug workaround for testing",
4398 arraysize(kFeatureListForEntry215), // features size
4399 kFeatureListForEntry215, // features
4400 0, // DisabledExtensions size
4401 nullptr, // DisabledExtensions
4402 arraysize(kCrBugsForEntry215), // CrBugs size
4403 kCrBugsForEntry215, // CrBugs
4404 {
4405 GpuControlList::kOsAny, // os_type
4406 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4407 nullptr, nullptr}, // os_version
4408 0xbad9, // vendor_id
4409 arraysize(kDeviceIDsForEntry215), // DeviceIDs size
4410 kDeviceIDsForEntry215, // DeviceIDs
4411 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4412 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4413 nullptr, // driver info
4414 nullptr, // GL strings
4415 nullptr, // machine model info
4416 nullptr, // more conditions
4417 },
4418 0, // exceptions count
4419 nullptr, // exceptions
4420 },
4421 {
4422 216, // id
4423 "Pack parameters work incorrectly with pack buffer bound",
4424 arraysize(kFeatureListForEntry216), // features size
4425 kFeatureListForEntry216, // features
4426 0, // DisabledExtensions size
4427 nullptr, // DisabledExtensions
4428 arraysize(kCrBugsForEntry216), // CrBugs size
4429 kCrBugsForEntry216, // CrBugs
4430 {
4431 GpuControlList::kOsAndroid, // os_type
4432 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4433 nullptr, nullptr}, // os_version
4434 0x00, // vendor_id
4435 0, // DeviceIDs size
4436 nullptr, // DeviceIDs
4437 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4438 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4439 nullptr, // driver info
4440 &kGLStringsForEntry216, // GL strings
4441 nullptr, // machine model info
4442 nullptr, // more conditions
4443 },
4444 0, // exceptions count
4445 nullptr, // exceptions
4446 },
4447 {
4448 217, // id
4449 "Alignment works incorrectly with unpack buffer bound",
4450 arraysize(kFeatureListForEntry217), // features size
4451 kFeatureListForEntry217, // features
4452 0, // DisabledExtensions size
4453 nullptr, // DisabledExtensions
4454 arraysize(kCrBugsForEntry217), // CrBugs size
4455 kCrBugsForEntry217, // CrBugs
4456 {
4457 GpuControlList::kOsAndroid, // os_type
4458 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4459 nullptr, nullptr}, // os_version
4460 0x00, // vendor_id
4461 0, // DeviceIDs size
4462 nullptr, // DeviceIDs
4463 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4464 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4465 nullptr, // driver info
4466 &kGLStringsForEntry217, // GL strings
4467 nullptr, // machine model info
4468 nullptr, // more conditions
4469 },
4470 0, // exceptions count
4471 nullptr, // exceptions
4472 },
4473 {
4474 219, // id
4475 "Zero-copy DXGI video hangs or displays incorrect colors on AMD "
4476 "drivers",
4477 arraysize(kFeatureListForEntry219), // features size
4478 kFeatureListForEntry219, // features
4479 0, // DisabledExtensions size
4480 nullptr, // DisabledExtensions
4481 arraysize(kCrBugsForEntry219), // CrBugs size
4482 kCrBugsForEntry219, // CrBugs
4483 {
4484 GpuControlList::kOsWin, // os_type
4485 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4486 nullptr, nullptr}, // os_version
4487 0x1002, // vendor_id
4488 0, // DeviceIDs size
4489 nullptr, // DeviceIDs
4490 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4491 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4492 nullptr, // driver info
4493 nullptr, // GL strings
4494 nullptr, // machine model info
4495 nullptr, // more conditions
4496 },
4497 0, // exceptions count
4498 nullptr, // exceptions
4499 },
4500 {
4501 220, // id
4502 "NV12 DXGI video displays incorrect colors on older AMD drivers",
4503 arraysize(kFeatureListForEntry220), // features size
4504 kFeatureListForEntry220, // features
4505 0, // DisabledExtensions size
4506 nullptr, // DisabledExtensions
4507 arraysize(kCrBugsForEntry220), // CrBugs size
4508 kCrBugsForEntry220, // CrBugs
4509 {
4510 GpuControlList::kOsWin, // os_type
4511 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4512 nullptr, nullptr}, // os_version
4513 0x1002, // vendor_id
4514 0, // DeviceIDs size
4515 nullptr, // DeviceIDs
4516 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4517 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4518 &kDriverInfoForEntry220, // driver info
4519 nullptr, // GL strings
4520 nullptr, // machine model info
4521 nullptr, // more conditions
4522 },
4523 0, // exceptions count
4524 nullptr, // exceptions
4525 },
4526 {
4527 221, // id
4528 "Very large instanced draw calls crash on some Adreno 3xx drivers",
4529 arraysize(kFeatureListForEntry221), // features size
4530 kFeatureListForEntry221, // features
4531 0, // DisabledExtensions size
4532 nullptr, // DisabledExtensions
4533 arraysize(kCrBugsForEntry221), // CrBugs size
4534 kCrBugsForEntry221, // CrBugs
4535 {
4536 GpuControlList::kOsAndroid, // os_type
4537 {GpuControlList::kUnknown, GpuControlList::kVersionStyleNumerical,
4538 nullptr, nullptr}, // os_version
4539 0x00, // vendor_id
4540 0, // DeviceIDs size
4541 nullptr, // DeviceIDs
4542 GpuControlList::kMultiGpuCategoryNone, // multi_gpu_category
4543 GpuControlList::kMultiGpuStyleNone, // multi_gpu_style
4544 nullptr, // driver info
4545 &kGLStringsForEntry221, // GL strings
4546 nullptr, // machine model info
4547 nullptr, // more conditions
4548 },
4549 0, // exceptions count
4550 nullptr, // exceptions
4551 },
4552 };
4553 } // namespace gpu
OLDNEW
« no previous file with comments | « gpu/config/gpu_driver_bug_list_autogen.h ('k') | gpu/config/gpu_driver_bug_list_exceptions_autogen.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698