190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Copyright (c) 2013 The Chromium Authors. All rights reserved.
290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be
390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)// found in the LICENSE file.
490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
52a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)// Determines whether a certain driver bug exists in the current system.
6d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)// The format of a valid gpu_driver_bug_list.json file is defined in
7d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)// <gpu/config/gpu_control_list_format.txt>.
8d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)// The supported "features" can be found in
9d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)// <gpu/config/gpu_driver_bug_workaround_type.h>.
102a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)
1190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#include "gpu/config/gpu_control_list_jsons.h"
1290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
1390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)#define LONG_STRING_CONST(...) #__VA_ARGS__
1490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
1590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)namespace gpu {
1690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
1790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)const char kGpuDriverBugListJson[] = LONG_STRING_CONST(
1890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
192a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles){
202a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  "name": "gpu driver bug list",
212a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  // Please update the version number whenever you change this file.
2278901d17b47ef1f8d6d0a89eaf37f9523ba1de85Ben Murdoch  "version": "7.10",
232a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  "entries": [
24c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
25c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 1,
26c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "description": "Imagination driver doesn't like uploading lots of buffer data constantly",
27c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "os": {
28c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "type": "android"
29c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      },
306e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "Imagination.*",
31c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
32c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "use_client_side_arrays_for_stream_buffers"
33c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
34c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
35c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
36c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 2,
37c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "description": "ARM driver doesn't like uploading lots of buffer data constantly",
38c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "os": {
39c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "type": "android"
40c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      },
416e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "ARM.*",
42c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
43c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "use_client_side_arrays_for_stream_buffers"
44c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
45c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
46c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
47c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 3,
48a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "glGenerateMipmap leaks vram without setting texture filters on some Mac drivers",
49a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "webkit_bugs": [48489],
50a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "cr_bugs": [349137],
51a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "os": {
52a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        "type": "macosx",
53a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        "version": {
54a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)          "op": "<",
55a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)          "value": "10.9"
56a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        }
57a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      },
58c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
59c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "set_texture_filter_before_generating_mipmap"
60c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
61c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
62c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
63c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 4,
64a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "glReadPixels incorrectly sets alpha to 0 on some drivers from a drawing buffer without alpha channel",
65a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "webkit_bugs": [33416],
66a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "cr_bugs": [349137],
67a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "os": {
68a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        "type": "macosx",
69a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        "version": {
70a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)          "op": "<",
71a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)          "value": "10.9"
72a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        }
73a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      },
74c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
75c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "clear_alpha_in_readpixels"
76c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
77c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
78c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
79c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 5,
80a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Always call glUseProgram after a successful link to avoid a driver bug",
81a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "cr_bugs": [349137],
82c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "vendor_id": "0x10de",
83a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "exceptions": [
84a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        {
85a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)          "os": {
86a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)            "type": "macosx",
87a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)            "version": {
88a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)              "op": ">=",
89a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)              "value": "10.9"
90a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)            }
91a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)          }
92a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        }
93a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      ],
94c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
95c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "use_current_program_after_successful_link"
96c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
97c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
98c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
99c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 6,
100a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Restore scissor on FBO change with Qualcomm GPUs on older versions of Android",
101d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      "cr_bugs": [165493, 222018],
102c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "os": {
103d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)        "type": "android",
104d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)        "version": {
105d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)          "op": "<",
106d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)          "value": "4.3"
107d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)        }
108c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      },
1096e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "Qualcomm.*",
110c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
111d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)        "restore_scissor_on_fbo_change"
112c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
113c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
114c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
115c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 7,
116c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "cr_bugs": [89557],
117a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Work around a bug in offscreen buffers on NVIDIA GPUs on Macs",
118c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "os": {
119c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "type": "macosx"
120c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      },
121c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "vendor_id": "0x10de",
122c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
123c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "needs_offscreen_buffer_workaround"
124c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
125c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
126c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
127c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 8,
128a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "A few built-in glsl functions on Mac behave incorrectly",
129a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "cr_bugs": [349137],
130c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "os": {
131a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        "type": "macosx",
132a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        "version": {
133a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)          "op": "<",
134a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)          "value": "10.9"
135a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        }
136c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      },
137c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "vendor_id": "0x1002",
138c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
139c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "needs_glsl_built_in_function_emulation"
140c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
141c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
142c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
143c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 9,
144a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "AMD drivers get gl_PointCoord backward on OS X 10.8 or earlier",
145eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      "cr_bugs": [256349],
146c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "os": {
147eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch        "type": "macosx",
148eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch        "version": {
149eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch          "op": "<",
150d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)          "value": "10.9"
151eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch        }
152c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      },
153c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "vendor_id": "0x1002",
154c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
155c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "reverse_point_sprite_coord_origin"
156c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
157c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
158c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
159c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 10,
160a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Intel drivers get gl_PointCoord backward on OS X 10.8 or earlier",
161eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch      "cr_bugs": [256349],
162c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "os": {
163eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch        "type": "macosx",
164eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch        "version": {
165eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch          "op": "<",
166d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)          "value": "10.9"
167eb525c5499e34cc9c4b825d6d9e75bb07cc06aceBen Murdoch        }
168c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      },
169c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "vendor_id": "0x8086",
170c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
171c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "reverse_point_sprite_coord_origin"
172c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
173c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
174c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
175c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 11,
176a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Limit max texure size to 4096 on Macs with Intel GPUs",
177c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "os": {
17878901d17b47ef1f8d6d0a89eaf37f9523ba1de85Ben Murdoch        "type": "macosx",
17978901d17b47ef1f8d6d0a89eaf37f9523ba1de85Ben Murdoch        "version": {
18078901d17b47ef1f8d6d0a89eaf37f9523ba1de85Ben Murdoch          "op": "<",
18178901d17b47ef1f8d6d0a89eaf37f9523ba1de85Ben Murdoch          "value": "10.9"
18278901d17b47ef1f8d6d0a89eaf37f9523ba1de85Ben Murdoch        }
183c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      },
184c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "vendor_id": "0x8086",
185c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
186c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "max_texture_size_limit_4096"
187c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
188c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
189c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
190c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 12,
191a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Limit max cube map texure size to 1024 on Macs with Intel GPUs",
192c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "os": {
193c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "type": "macosx"
194c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      },
195c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "vendor_id": "0x8086",
196c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
197c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "max_cube_map_texture_size_limit_1024"
198c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
199c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
200c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
201c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 13,
202a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Limit max cube map texure size to 512 on older Macs with Intel GPUs",
203c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "os": {
204c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "type": "macosx",
205c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "version": {
206c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)          "op": "<",
207d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)          "value": "10.7.3"
208c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        }
209c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      },
210c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "vendor_id": "0x8086",
211c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
212c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "max_cube_map_texture_size_limit_512"
213c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
214c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
215c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
216c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 14,
217a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Limit max texure size and cube map texture size to 4096 on Macs with AMD GPUs",
218c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "os": {
21978901d17b47ef1f8d6d0a89eaf37f9523ba1de85Ben Murdoch        "type": "macosx",
22078901d17b47ef1f8d6d0a89eaf37f9523ba1de85Ben Murdoch        "version": {
22178901d17b47ef1f8d6d0a89eaf37f9523ba1de85Ben Murdoch          "op": "<",
22278901d17b47ef1f8d6d0a89eaf37f9523ba1de85Ben Murdoch          "value": "10.9"
22378901d17b47ef1f8d6d0a89eaf37f9523ba1de85Ben Murdoch        }
224c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      },
225c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "vendor_id": "0x1002",
226c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
227c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "max_texture_size_limit_4096",
228c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "max_cube_map_texture_size_limit_4096"
229c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
230c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
231c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
232c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 16,
233a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "EXT_occlusion_query appears to be buggy with Intel GPUs on Linux",
234c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "os": {
235c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "type": "linux"
236c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      },
237c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "vendor_id": "0x8086",
238c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
239c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "disable_ext_occlusion_query"
240c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
241c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
242c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
243c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 17,
244c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "description": "Some drivers are unable to reset the D3D device in the GPU process sandbox",
245c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "os": {
246c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "type": "win"
247c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      },
248c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
249c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "exit_on_context_lost"
250c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
251c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
252c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
253c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 19,
254a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Disable depth textures on Android with Qualcomm GPUs",
255c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "os": {
256c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "type": "android"
257c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      },
2586e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "Qualcomm.*",
259c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
260c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "disable_depth_texture"
261c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
262c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    },
263c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    {
264c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "id": 20,
265a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Disable EXT_draw_buffers on GeForce GT 650M on Mac OS X due to driver bugs",
266c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "os": {
267c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "type": "macosx"
268c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      },
269c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "vendor_id": "0x10de",
270c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "device_id": ["0x0fd5"],
271c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "multi_gpu_category": "any",
272c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      "features": [
273c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)        "disable_ext_draw_buffers"
274c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)      ]
275b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)    },
276b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)    {
277b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      "id": 21,
278a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Vivante GPUs are buggy with context switching",
279b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      "cr_bugs": [179250, 235935],
280b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      "os": {
281b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)        "type": "android"
282b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      },
2836e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_extensions": ".*GL_VIV_shader_binary.*",
284b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      "features": [
285b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)        "unbind_fbo_on_context_switch"
286b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      ]
287b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)    },
288b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)    {
289b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      "id": 22,
290a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Imagination drivers are buggy with context switching",
291b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      "cr_bugs": [230896],
292b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      "os": {
293b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)        "type": "android"
294b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      },
2956e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "Imagination.*",
296b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      "features": [
297b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)        "unbind_fbo_on_context_switch"
298b2df76ea8fec9e32f6f3718986dba0d95315b29cTorne (Richard Coles)      ]
29990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)    },
30090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)    {
30190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      "id": 23,
30290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      "cr_bugs": [243038],
303a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Disable OES_standard_derivative on Intel Pineview M Gallium drivers",
30490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      "os": {
30590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)        "type": "chromeos"
30690dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      },
30790dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      "vendor_id": "0x8086",
30890dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      "device_id": ["0xa011", "0xa012"],
30990dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      "features": [
31090dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)        "disable_oes_standard_derivatives"
31190dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)      ]
312868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)    },
313868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)    {
314868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      "id": 24,
315868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      "cr_bugs": [231082],
316a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Mali-400 drivers throw an error when a buffer object's size is set to 0",
317868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      "os": {
318868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)        "type": "android"
319868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      },
3206e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "ARM.*",
3216e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_renderer": ".*Mali-400.*",
322868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      "features": [
323868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)        "use_non_zero_size_for_client_side_stream_buffers"
324868fa2fe829687343ffae624259930155e16dbd8Torne (Richard Coles)      ]
3257dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch    },
3267dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch    {
3277dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch      "id": 25,
3287dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch      "cr_bugs": [152225],
329e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch      "description": "PBO + Readpixels don't work on OS X 10.7",
3307dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch      "os": {
3317dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch        "type": "macosx",
3327dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch        "version": {
3337dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch          "op": "<",
334d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)          "value": "10.8"
3357dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch        }
3367dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch      },
3377dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch      "features": [
3387dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch        "disable_async_readpixels"
3397dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch      ]
3407dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch    },
3417dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch    {
3427dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch      "id": 26,
343a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Disable use of Direct3D 11 on Windows Vista and lower",
3447dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch      "os": {
345d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)        "type": "win",
346d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)        "version": {
347d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)          "op": "<=",
348d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)          "value": "6.0"
349d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)        }
3507dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch      },
3517dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch      "features": [
3527dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch        "disable_d3d11"
3537dbb3d5cf0c15f500944d211057644d6a2f37371Ben Murdoch      ]
354ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch    },
355ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch    {
356ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch      "id": 27,
357ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch      "cr_bugs": [265115],
358a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Async Readpixels with GL_BGRA format is broken on Haswell chipset on Macs",
359ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch      "os": {
360ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch        "type": "macosx"
361ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch      },
362ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch      "vendor_id": "0x8086",
363ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch      "device_id": ["0x0402", "0x0406", "0x040a", "0x0412", "0x0416", "0x041a",
364ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch                    "0x0a04", "0x0a16", "0x0a22", "0x0a26", "0x0a2a"],
365ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch      "features": [
366ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch        "swizzle_rgba_for_async_readpixels"
367ba5b9a6411cb1792fd21f0a078d7a25cd1ceec16Ben Murdoch      ]
368424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)    },
369424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)    {
370424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)      "id": 30,
371424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)      "cr_bugs": [237931],
372424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)      "description": "Multisampling is buggy on OSX when multiple monitors are connected",
373424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)      "os": {
374424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)        "type": "macosx"
375424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)      },
376424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)      "features": [
377424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)        "disable_multimonitor_multisampling"
378424c4d7b64af9d0d8fd9624f381f469654d5e3d2Torne (Richard Coles)      ]
37958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    },
38058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    {
38158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "id": 31,
382a3f6a49ab37290eeeb8db0f41ec0f1cb74a68be7Torne (Richard Coles)      "cr_bugs": [154715, 10068, 269829, 294779, 285292],
383a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "The Mali-Txxx driver does not guarantee flush ordering",
3846e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "ARM.*",
3856e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_renderer": "Mali-T.*",
38658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "features": [
38758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        "use_virtualized_gl_contexts"
38858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      ]
38958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    },
39058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    {
39158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "id": 32,
39258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "cr_bugs": [179815],
393a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Share groups are not working on (older?) Broadcom drivers",
39458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "os": {
39558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        "type": "android"
39658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      },
3976e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "Broadcom.*",
39858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "features": [
39958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        "use_virtualized_gl_contexts"
40058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      ]
40158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    },
40258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    {
40358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "id": 33,
404a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Share group-related crashes and poor context switching perf on Galaxy Nexus",
40558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "os": {
40658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        "type": "android"
40758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      },
4086e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "Imagination.*",
40958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "features": [
41058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        "use_virtualized_gl_contexts"
41158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      ]
41258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    },
41358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    {
41458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "id": 34,
41558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "cr_bugs": [179250, 229643, 230896],
416a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Share groups are not working on (older?) Vivante drivers",
41758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "os": {
41858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        "type": "android"
41958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      },
4206e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_extensions": ".*GL_VIV_shader_binary.*",
42158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "features": [
42258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        "use_virtualized_gl_contexts"
42358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      ]
42458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    },
42558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    {
42658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "id": 35,
42758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "cr_bugs": [163464],
428a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Share-group related crashes on older NVIDIA drivers",
42958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "os": {
43058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        "type": "android",
43158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        "version": {
43258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)          "op": "<",
433d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)          "value": "4.3"
43458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        }
43558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      },
4366e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "NVIDIA.*",
43758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "features": [
43858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        "use_virtualized_gl_contexts"
43958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      ]
44058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    },
44158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    {
44258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "id": 36,
44358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "cr_bugs": [163464, 233612],
444a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Share-group related crashes on Qualcomm drivers",
44558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "os": {
44658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        "type": "android",
44758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        "version": {
44858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)          "op": "<",
449d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)          "value": "4.3"
45058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        }
45158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      },
4526e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "Qualcomm.*",
45358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "features": [
45458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        "use_virtualized_gl_contexts"
45558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      ]
45658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    },
45758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)    {
45858537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "id": 37,
45958537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "cr_bugs": [286468],
46058537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "description": "Program link fails in NVIDIA Linux if gl_Position is not set",
46158537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "os": {
46258537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        "type": "linux"
46358537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      },
46458537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "vendor_id": "0x10de",
46558537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      "features": [
46658537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)        "init_gl_position_in_vertex_shader"
46758537e28ecd584eab876aee8be7156509866d23aTorne (Richard Coles)      ]
468d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)    },
469d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)    {
470d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      "id": 38,
471d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      "cr_bugs": [289461],
472d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      "description": "Non-virtual contexts on Qualcomm sometimes cause out-of-order frames",
473d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      "os": {
474d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)        "type": "android"
475d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      },
4766e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "Qualcomm.*",
477d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      "features": [
478d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)        "use_virtualized_gl_contexts"
479d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      ]
480d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)    },
481d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)    {
482d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      "id": 39,
483d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      "cr_bugs": [290391],
484d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      "description": "Multisampled renderbuffer allocation must be validated on some Macs",
485d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      "os": {
486d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)        "type": "macosx"
487d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      },
488d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      "features": [
489d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)        "validate_multisample_buffer_allocation"
490d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      ]
491d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)    },
492d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)    {
493d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      "id": 40,
494d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      "cr_bugs": [290876],
49568043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)      "description": "Framebuffer discarding causes flickering on old ARM drivers",
496d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      "os": {
49768043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)        "type": "android",
49868043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)        "version": {
49968043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)          "op": "<",
50068043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)          "value": "4.4"
50168043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)        }
502d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      },
5036e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "ARM.*",
504d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      "features": [
505d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)        "disable_ext_discard_framebuffer"
506d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)      ]
507d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)    },
508d0247b1b59f9c528cb6df88b4f2b9afaf80d181eTorne (Richard Coles)    {
50968043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)      "id": 42,
51068043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)      "cr_bugs": [290876],
511a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Framebuffer discarding causes flickering on older IMG drivers",
51268043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)      "os": {
51368043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)        "type": "android"
51468043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)      },
5156e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "Imagination.*",
5166e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_renderer": "PowerVR SGX 540",
51768043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)      "features": [
51868043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)        "disable_ext_discard_framebuffer"
51968043e1e95eeb07d5cae7aca370b26518b0867d6Torne (Richard Coles)      ]
5204e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)    },
5214e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)    {
5224e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)      "id": 43,
5234e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)      "cr_bugs": [299494],
524a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Framebuffer discarding doesn't accept trivial attachments on Vivante",
5254e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)      "os": {
5264e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)        "type": "android"
5274e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)      },
5286e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_extensions": ".*GL_VIV_shader_binary.*",
5294e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)      "features": [
5304e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)        "disable_ext_discard_framebuffer"
5314e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)      ]
5324e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)    },
5334e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)    {
5344e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)      "id": 44,
5354e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)      "cr_bugs": [301988],
5364e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)      "description": "Framebuffer discarding causes jumpy scrolling on Mali drivers",
5374e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)      "os": {
5384e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)        "type": "chromeos"
5394e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)      },
5404e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)      "features": [
5414e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)        "disable_ext_discard_framebuffer"
5424e180b6a0b4720a9b8e9e959a882386f690f08ffTorne (Richard Coles)      ]
5438bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)    },
5448bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)    {
5458bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)      "id": 45,
5468bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)      "cr_bugs": [307751],
547a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Unfold short circuit on Mac OS X",
5488bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)      "os": {
5498bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)        "type": "macosx"
5508bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)      },
5518bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)      "features": [
5528bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)        "unfold_short_circuit_as_ternary_operation"
5538bcbed890bc3ce4d7a057a8f32cab53fa534672eTorne (Richard Coles)      ]
5541e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)    },
5551e9bf3e0803691d0a228da41fc608347b6db4340Torne (Richard Coles)    {
556f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "id": 48,
557a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Force to use discrete GPU on older MacBookPro models",
558f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "cr_bugs": [113703],
559f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "os": {
560f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        "type": "macosx",
561f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        "version": {
562f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)          "op": ">=",
563f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)          "value": "10.7"
564f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        }
565f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      },
5660529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      "machine_model_name": ["MacBookPro"],
5670529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      "machine_model_version": {
5680529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch        "op": "<",
5690529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch        "value": "8"
570f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      },
571f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "gpu_count": {
572f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        "op": "=",
573f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        "value": "2"
574f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      },
575f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "features": [
576f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        "force_discrete_gpu"
577f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      ]
578f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    },
579f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    {
580f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "id": 49,
581f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "cr_bugs": [309734],
582a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "The first draw operation from an idle state is slow",
583f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "os": {
584f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        "type": "android"
585f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      },
5866e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "Qualcomm.*",
587f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "features": [
588f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        "wake_up_gpu_before_drawing"
589f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      ]
590f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    },
591f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    {
592f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "id": 50,
593f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "description": "NVIDIA driver requires unbinding a GpuMemoryBuffer from the texture before mapping it to main memory",
594f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "os": {
595f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        "type": "android"
596f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      },
5975f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)      "gl_type": "gles",
5985f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)      "gl_version": {
5995f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)        "op": "<",
6005f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)        "value": "3.1"
6015f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)      },
6026e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "NVIDIA.*",
603f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "features": [
604f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        "release_image_after_use"
605f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      ]
606f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    },
607f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    {
608f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "id": 51,
609a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "TexSubImage2D() is faster for full uploads on ANGLE",
610f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "os": {
611f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        "type": "win"
612f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      },
6136e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_renderer": "ANGLE.*",
614f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "features": [
615f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        "texsubimage2d_faster_than_teximage2d"
616f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      ]
617f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    },
618f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    {
619f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "id": 52,
620a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "ES3 MSAA is broken on Qualcomm",
621f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "os": {
622f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)        "type": "android"
623f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      },
6246e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "Qualcomm.*",
625f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      "features": [
6265d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "disable_multisampling"
627f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)      ]
628f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    },
629f2477e01787aa58f445919b809d89e252beef54fTorne (Richard Coles)    {
6305d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "id": 54,
631a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "cr_bugs": [124764, 349137],
6325d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "description": "Clear uniforms before first program use on all platforms",
633a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "exceptions": [
634a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        {
635a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)          "os": {
636a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)            "type": "macosx",
637a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)            "version": {
638a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)              "op": ">=",
639a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)              "value": "10.9"
640a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)            }
641a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)          }
642a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        }
643a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      ],
6445d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "features": [
6455d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "clear_uniforms_before_first_program_use"
6465d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      ]
6475d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    },
6485d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    {
6495d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "id": 55,
6505d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "cr_bugs": [333885],
6515d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "description": "Mesa drivers in Linux handle varyings without static use incorrectly",
6525d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "os": {
6535d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "type": "linux"
6545d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      },
6556e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "driver_vendor": "Mesa",
6565d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "features": [
6575d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "count_all_in_varyings_packing"
6585d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      ]
6595d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    },
6605d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    {
6615d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "id": 56,
6625d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "cr_bugs": [333885],
6635d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "description": "Mesa drivers in ChromeOS handle varyings without static use incorrectly",
6645d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "os": {
6655d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "type": "chromeos"
6665d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      },
6676e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "driver_vendor": "Mesa",
6685d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "features": [
6695d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "count_all_in_varyings_packing"
6705d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      ]
6715d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    },
6725d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    {
6735d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "id": 57,
6745d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "cr_bugs": [322760],
6755d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "description": "Mac drivers handle varyings without static use incorrectly",
6765d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "os": {
6775d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "type": "macosx"
6785d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      },
6795d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "features": [
6805d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "init_varyings_without_static_use"
6815d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      ]
6825d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    },
6835d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    {
6845d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "id": 58,
685a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Multisampling is buggy in ATI cards on older Mac OS X",
6865d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "cr_bugs": [67752, 83153],
6875d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "os": {
6885d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "type": "macosx",
6895d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "version": {
6905d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)          "op": "<",
6915d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)          "value": "10.7.2"
6925d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        }
6935d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      },
6945d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "vendor_id": "0x1002",
6955d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "features": [
6965d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "disable_multisampling"
6975d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      ]
6985d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    },
6995d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    {
7005d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "id": 59,
7015d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "description": "Multisampling is buggy in Intel IvyBridge",
7025d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "cr_bugs": [116370],
7035d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "os": {
7045d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "type": "linux"
7055d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      },
7065d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "vendor_id": "0x8086",
7075d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "device_id": ["0x0152", "0x0156", "0x015a", "0x0162", "0x0166"],
7085d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "features": [
7095d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "disable_multisampling"
7105d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      ]
7115d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    },
7125d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    {
7135d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "id": 60,
714a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Multisampling is buggy on Mac OS X prior to 10.8.3",
715a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "cr_bugs": [137303, 162466],
7165d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "os": {
7175d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "type": "macosx",
7185d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "version": {
7195d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)          "op": "<",
7205d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)          "value": "10.8.3"
7215d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        }
7225d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      },
7235d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "features": [
7245d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "disable_multisampling"
7255d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      ]
7265d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    },
7275d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    {
728a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "id": 63,
729a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Shaders with sampler arrays indexing for-loop indices cause the GLSL compiler to crash on OS X",
730a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "cr_bugs": [348198, 349137],
7315d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "os": {
7325d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "type": "macosx",
7335d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        "version": {
7345d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)          "op": "<",
735a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)          "value": "10.9"
736a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        }
737a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      },
738a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "features": [
739a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        "unroll_for_loop_with_sampler_array_index"
740a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      ]
741a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)    },
742a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)    {
743a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "id": 64,
744a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Linux AMD drivers incorrectly return initial value of 1 for TEXTURE_MAX_ANISOTROPY",
745a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "cr_bugs": [348237],
746a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "os": {
747a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        "type": "linux"
748a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      },
749a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "vendor_id": "0x1002",
750a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "features": [
751a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        "init_texture_max_anisotropy"
752a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      ]
753a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)    },
754a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)    {
755a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "id": 65,
756a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "description": "Linux NVIDIA drivers don't have the correct defaults for vertex attributes",
757a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "cr_bugs": [351528],
758a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "os": {
759a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        "type": "linux"
760a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      },
761a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "vendor_id": "0x10de",
762a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "features": [
763a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        "init_vertex_attributes"
764a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      ]
765a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)    },
766a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)    {
767a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "id": 66,
768e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch      "description": "Force glFinish() after compositing on older OS X on Intel GPU",
769a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "cr_bugs": [123409],
770a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)      "os": {
771a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        "type": "macosx",
772a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        "version": {
773a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)          "op": "<=",
774a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)          "value": "10.7"
7755d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)        }
7765d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      },
7775d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "vendor_id": "0x8086",
778e5d81f57cb97b3b6b7fccc9c5610d21eb81db09dBen Murdoch      "multi_gpu_category": "active",
7795d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      "features": [
780a1401311d1ab56c4ed0a474bd38c108f75cb0cd9Torne (Richard Coles)        "force_gl_finish_after_compositing"
7815d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)      ]
7825d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    },
7835d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles)    {
784effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch      "id": 68,
785effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch      "description": "Disable partial swaps on linux drivers",
786effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch      "cr_bugs": [339493],
787effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch      "os": {
788effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch        "type": "linux"
789effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch      },
790effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch      "features": [
791effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch        "disable_post_sub_buffers_for_onscreen_surfaces"
792effb81e5f8246d0db0270817048dc992db66e9fbBen Murdoch      ]
7930529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch    },
7940529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch    {
7950529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      "id": 69,
7960529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      "description": "Some shaders in Skia need more than the min available vertex and fragment shader uniform vectors in case of OSMesa",
7970529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      "cr_bugs": [174845],
7986e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "driver_vendor": "osmesa",
7990529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      "features": [
8000529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch       "max_fragment_uniform_vectors_32",
8010529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch       "max_varying_vectors_16",
8020529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch       "max_vertex_uniform_vectors_256"
8030529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      ]
8040529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch    },
8050529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch    {
8060529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      "id": 70,
8070529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      "description": "Disable D3D11 on older nVidia drivers",
8080529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      "cr_bugs": [349929],
8090529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      "os": {
8100529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch        "type": "win"
8110529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      },
8120529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      "vendor_id": "0x10de",
8130529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      "driver_version": {
8140529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch        "op": "<=",
8150529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch        "value": "8.17.12.6973"
8160529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      },
8170529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      "features": [
8180529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch        "disable_d3d11"
8190529e5d033099cbfc42635f6f6183833b09dff6eBen Murdoch      ]
820010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)    },
821010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)    {
822010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      "id": 71,
823010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      "description": "Vivante's support of OES_standard_derivatives is buggy",
824010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      "cr_bugs": [368005],
825010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      "os": {
826010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)        "type": "android"
827010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      },
8286e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_extensions": ".*GL_VIV_shader_binary.*",
829010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      "features": [
830010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)        "disable_oes_standard_derivatives"
831010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      ]
832010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)    },
833010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)    {
834010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      "id": 72,
835010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      "description": "Use virtual contexts on NVIDIA with GLES 3.1",
836010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      "cr_bugs": [369316],
837010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      "os": {
838010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)        "type": "android"
839010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      },
840010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      "gl_type": "gles",
841010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      "gl_version": {
842010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)        "op": "=",
843010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)        "value": "3.1"
844010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      },
8456e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "NVIDIA.*",
846010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      "features": [
847010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)        "use_virtualized_gl_contexts"
848010d83a9304c5a91596085d917d248abff47903aTorne (Richard Coles)      ]
849cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    },
850cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    {
851cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "id": 73,
852cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "description": "Using D3D11 causes browser crashes on certain Intel GPUs",
853cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "cr_bugs": [310808],
854cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "os": {
855cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)        "type": "win"
856cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      },
857cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "vendor_id": "0x8086",
858cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "features": [
859cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)        "disable_d3d11"
860cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      ]
861cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    },
862cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles))  // LONG_STRING_CONST macro
863cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)// Avoid C2026 (string too big) error on VisualStudio.
864cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)LONG_STRING_CONST(
865cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    {
866cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "id": 74,
867f8ee788a64d60abd8f2d742a5fdedde054ecd910Torne (Richard Coles)      "cr_bugs": [278606, 382686],
8686d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)      "description": "Testing EGL sync fences was broken on most Qualcomm drivers",
869cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "os": {
8706d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)        "type": "android",
8716d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)        "version": {
8726d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)          "op": "<=",
8736d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)          "value": "4.4.4"
8746d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)        }
875cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      },
8766e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "Qualcomm.*",
877cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "features": [
878cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)        "disable_egl_khr_fence_sync"
879cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      ]
880cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    },
881cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    {
882cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "id": 75,
883cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "description": "Mali-400 support of EXT_multisampled_render_to_texture is buggy on Android < 4.3",
884cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "cr_bugs": [362435],
885cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "os": {
886cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)        "type": "android",
887cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)        "version": {
888cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)          "op": "<",
889cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)          "value": "4.3"
890cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)        }
891cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      },
8926e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "ARM.*",
8936e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_renderer": ".*Mali-400.*",
894cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "features": [
895cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)        "disable_multisampling"
896cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      ]
897cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    },
898cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    {
899cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "id": 76,
900cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "cr_bugs": [371530],
9016d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)      "description": "Testing EGL sync fences was broken on IMG",
902cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "os": {
9036d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)        "type": "android",
9046d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)        "version": {
9056d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)          "op": "<=",
9066d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)          "value": "4.4.4"
9076d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)        }
908cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      },
9096e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "Imagination Technologies.*",
910cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "features": [
911cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)        "disable_egl_khr_fence_sync"
912cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      ]
913cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    },
914cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    {
915cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "id": 77,
91603b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "cr_bugs": [378691, 373360, 371530, 398964],
91703b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "description": "Testing fences was broken on Mali ES2 drivers",
918cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "os": {
9196d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)        "type": "android",
9206d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)        "version": {
9216d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)          "op": "<=",
9226d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)          "value": "4.4.4"
9236d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)        }
924cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      },
9256e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "ARM.*",
92603b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "gl_renderer": "Mali.*",
92703b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "gl_type": "gles",
92803b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "gl_version": {
92903b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)        "op": "<",
93003b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)        "value": "3.0"
93103b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      },
932cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "features": [
933cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)        "disable_egl_khr_fence_sync"
934cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      ]
935cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    },
936cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)    {
937cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "id": 78,
938cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "cr_bugs": [378691, 373360, 371530],
9396d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)      "description": "Testing fences was broken on Broadcom drivers",
940cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "os": {
9416d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)        "type": "android",
9426d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)        "version": {
9436d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)          "op": "<=",
9446d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)          "value": "4.4.4"
9456d86b77056ed63eb6871182f42a9fd5f07550f90Torne (Richard Coles)        }
946cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      },
9476e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "Broadcom.*",
948cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      "features": [
949cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)        "disable_egl_khr_fence_sync"
950cedac228d2dd51db4b79ea1e72c7f249408ee061Torne (Richard Coles)      ]
95146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    },
95246d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)    {
95346d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)      "id": 79,
95446d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)      "cr_bugs": [371530],
95546d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)      "description": "Testing ARB sync fences is broken on MacOSX",
95646d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)      "os": {
95746d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)        "type": "macosx"
95846d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)      },
95946d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)      "features": [
96046d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)        "disable_arb_sync"
96146d4c2bc3267f3f028f39e7e311b0f89aba2e4fdTorne (Richard Coles)      ]
962116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch    },
963116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch    {
964116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch      "id": 82,
965116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch      "description": "PBO mappings segfault on certain older Qualcomm drivers",
966116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch      "cr_bugs": [394510],
967116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch      "os": {
968116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch        "type": "android",
969116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch        "version": {
970116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch          "op": "<",
971116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch          "value": "4.3"
972116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch        }
973116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch      },
9746e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "gl_vendor": "Qualcomm.*",
975116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch      "features": [
976116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch        "disable_async_readpixels"
977116680a4aac90f2aa7413d9095a592090648e557Ben Murdoch      ]
9785f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)    },
9795f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)    {
9805f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)      "id": 86,
9815f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)      "description": "Disable use of Direct3D 11 on Matrox video cards",
9825f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)      "cr_bugs": [395861],
9835f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)      "os": {
9845f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)        "type": "win"
9855f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)      },
9865f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)      "vendor_id": "0x102b",
9875f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)      "features": [
9885f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)        "disable_d3d11"
9895f1c94371a64b3196d4be9466099bb892df9b88eTorne (Richard Coles)      ]
9906e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    },
9916e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)    {
9926e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "id": 87,
9936e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "description": "Disable use of Direct3D 11 on older AMD drivers",
9946e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "cr_bugs": [402134],
9956e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "os": {
9966e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)        "type": "win"
9976e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      },
9986e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "vendor_id": "0x1002",
9996e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "driver_date": {
10006e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)        "op": "<",
10016e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)        "value": "2011.1"
10026e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      },
10036e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      "features": [
10046e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)        "disable_d3d11"
10056e8cce623b6e4fe0c9e4af605d675dd9d0338c38Torne (Richard Coles)      ]
100603b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)    },
100703b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)    {
100803b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "id": 88,
100903b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "description": "Always rewrite vec/mat constructors to be consistent",
101003b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "cr_bugs": [398694],
101103b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "features": [
101203b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)        "scalarize_vec_and_mat_constructor_args"
101303b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      ]
101403b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)    },
101503b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)    {
101603b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "id": 89,
101703b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "description": "Mac drivers handle struct scopes incorrectly",
101803b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "cr_bugs": [403957],
101903b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "os": {
102003b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)        "type": "macosx"
102103b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      },
102203b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "features": [
102303b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)        "regenerate_struct_names"
102403b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      ]
102503b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)    },
102603b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)    {
102703b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "id": 90,
102803b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "description": "Linux AMD drivers handle struct scopes incorrectly",
102903b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "cr_bugs": [403957],
103003b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "os": {
103103b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)        "type": "linux"
103203b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      },
103303b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "vendor_id": "0x1002",
103403b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      "features": [
103503b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)        "regenerate_struct_names"
103603b57e008b61dfcb1fbad3aea950ae0e001748b0Torne (Richard Coles)      ]
10371320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci    },
10381320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci    {
10391320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci      "id": 91,
104034680572440d7894ef8dafce81d8039ed80726a2Torne (Richard Coles)      "cr_bugs": [150500, 414816],
10411320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci      "description": "ETC1 non-power-of-two sized textures crash older IMG drivers",
10421320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci      "os": {
10431320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci        "type": "android"
10441320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci      },
10451320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci      "gl_vendor": "Imagination.*",
104634680572440d7894ef8dafce81d8039ed80726a2Torne (Richard Coles)      "gl_renderer": "PowerVR SGX 5.*",
10471320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci      "features": [
10481320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci        "etc1_power_of_two_only"
10491320f92c476a1ad9d19dba2a48c72b75566198e9Primiano Tucci      ]
10501675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch    },
10511675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch    {
10521675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch      "id": 93,
10531675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch      "description": "The GL implementation on the Android emulator has problems with PBOs.",
10541675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch      "cr_bugs": [340882],
10551675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch      "os": {
10561675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch        "type": "android"
10571675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch      },
10581675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch      "gl_vendor": "VMware.*",
10591675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch      "gl_renderer": "Gallium.*",
10601675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch      "gl_type": "gles",
10611675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch      "gl_version": {
10621675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch        "op": "=",
10631675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch        "value": "3.0"
10641675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch      },
10651675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch      "features": [
10661675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch        "disable_async_readpixels"
10671675a649fd7a8b3cb80ffddae2dc181f122353c5Ben Murdoch      ]
10688b70b8257c44a011969316b68be9b5441786809eboliu    },
10698b70b8257c44a011969316b68be9b5441786809eboliu    {
10708b70b8257c44a011969316b68be9b5441786809eboliu      "id": 94,
10718b70b8257c44a011969316b68be9b5441786809eboliu      "description": "Disable EGL_KHR_wait_sync on NVIDIA with GLES 3.1",
10728b70b8257c44a011969316b68be9b5441786809eboliu      "cr_bugs": [433057],
10738b70b8257c44a011969316b68be9b5441786809eboliu      "os": {
10748b70b8257c44a011969316b68be9b5441786809eboliu        "type": "android",
10758b70b8257c44a011969316b68be9b5441786809eboliu        "version": {
10768b70b8257c44a011969316b68be9b5441786809eboliu          "op": "<=",
10771b000d84481a57463a1ab843eda1cb110af822f1Bart Sears          "value": "5.0.2"
10788b70b8257c44a011969316b68be9b5441786809eboliu        }
10798b70b8257c44a011969316b68be9b5441786809eboliu      },
10808b70b8257c44a011969316b68be9b5441786809eboliu      "gl_vendor": "NVIDIA.*",
10818b70b8257c44a011969316b68be9b5441786809eboliu      "gl_type": "gles",
10828b70b8257c44a011969316b68be9b5441786809eboliu      "gl_version": {
10838b70b8257c44a011969316b68be9b5441786809eboliu        "op": "=",
10848b70b8257c44a011969316b68be9b5441786809eboliu        "value": "3.1"
10858b70b8257c44a011969316b68be9b5441786809eboliu      },
10868b70b8257c44a011969316b68be9b5441786809eboliu      "features": [
10878b70b8257c44a011969316b68be9b5441786809eboliu        "disable_egl_khr_wait_sync"
10888b70b8257c44a011969316b68be9b5441786809eboliu      ]
1089c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)    }
10902a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)  ]
10912a99a7e74a7f215066514fe81d2bfa6639d9edddTorne (Richard Coles)}
109290dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
109390dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles));  // LONG_STRING_CONST macro
109490dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)
109590dce4d38c5ff5333bea97d859d4e484e27edf0cTorne (Richard Coles)}  // namespace gpu
1096