efef3416f8e2375765a110b39fcdd7489eb10848
[WebKit-https.git] / Source / ThirdParty / ANGLE / ChangeLog
1 2020-06-04  Tim Horton  <timothy_horton@apple.com>
2
3         Work around broken system version macro
4         https://bugs.webkit.org/show_bug.cgi?id=212726
5
6         Reviewed by Dan Bernstein.
7
8         * Configurations/DebugRelease.xcconfig:
9
10 2020-06-02  Keith Rollin  <krollin@apple.com>
11
12         Change ANGLE's header postprocessing script to not rely on timestamps
13         https://bugs.webkit.org/show_bug.cgi?id=212623
14         <rdar://problem/63856997>
15
16         Reviewed by David Kilzer.
17         Reviewed by Kennneth Russell.
18
19         Some WebKit builds involve multiple passes, where each pass is a
20         superset of the previous pass. In the cases where each pass produces
21         the same files, it is required that files be produced in exactly the
22         same way in each of those passes. A build process that relies on a
23         file containing a timestamp trips up that prerequisite.
24
25         adjust-angle-include-paths.sh uses such a mechanism, using a timestamp
26         file to determine if any exported headers need to be post-processed.
27         Since this violates our prerequisite, we need a different approach.
28         Instead of using a timestamp, always perform the post-processing, but
29         write the output to a temporary location. Then see if it differs from
30         what's in the actual final destination. If the two files diff, then
31         copy the one from the temporary location to the final destination.
32
33         This approach does cause more work in the area of post-processing.
34         However, this post-processing is actually very cheap. And avoiding the
35         post-processing is not actually the original goal of the timestamp.
36         The actual goal is to avoid touching the modification dates of the
37         exported headers, which would then cause a lot of downstream
38         rebuilding. The new approach with the temporary files also achieves
39         that goal.
40
41         * CMakeLists.txt:
42         * adjust-angle-include-paths.sh:
43
44 2020-06-02  Kenneth Russell  <kbr@chromium.org>
45
46         Revise PVRTC compressed texture validation in ANGLE backend for WebGL
47         https://bugs.webkit.org/show_bug.cgi?id=212612
48
49         Reviewed by Dean Jackson.
50
51         Correct the block sizes of PVRTC textures, and incorporate minimum
52         block sizes for width and height, as required by these formats.
53
54         * src/libANGLE/formatutils.cpp:
55         (gl::BuildInternalFormatInfoMap):
56         (gl::InternalFormat::computeCompressedImageSize const):
57         (gl::InternalFormat::getCompressedImageMinBlocks const):
58         * src/libANGLE/formatutils.h:
59
60 2020-05-29  Keith Rollin  <krollin@apple.com>
61
62         Revert switch to XCBuild
63         https://bugs.webkit.org/show_bug.cgi?id=212530
64         <rdar://problem/63764632>
65
66         Unreviewed build fix.
67
68         Bug 209890 enabled the use of XCBuild by default. Since then, some
69         build issues have shown up. While addressing them, temporarily turn
70         off the use of XCBuild by default.
71
72         * ANGLE.xcodeproj/project.pbxproj:
73         * Configurations/ANGLE.xcconfig:
74
75 2020-05-27  Keith Rollin  <krollin@apple.com>
76
77         Enable the use of XCBuild by default in Apple builds
78         https://bugs.webkit.org/show_bug.cgi?id=209890
79         <rdar://problem/44182078>
80
81         Unreviewed build fix. Check the value of XCODE_VERSION_ACTUAL rather
82         than XCODE_VERSION_MAJOR when determining whether to use the XCBuild
83         or non-XCBuild method of running header post-processing scripts.
84
85         * ANGLE.xcodeproj/project.pbxproj:
86
87 2020-05-26  Keith Rollin  <krollin@apple.com>
88
89         Enable the use of XCBuild by default in Apple builds
90         https://bugs.webkit.org/show_bug.cgi?id=209890
91         <rdar://problem/44182078>
92
93         Reviewed by Darin Adler.
94
95         Switch from the "legacy" Xcode build system to the "new" build system
96         (also known as "XCBuild"). Switching to the new system speeds up
97         builds by a small percentage, better validates projects for
98         build-related issues (such as dependency cycles), lets WebKit benefit
99         from future improvements in XCBuild such as those coming from the
100         underlying llbuild open source project, and prepares us for any other
101         tools built for this new ecosystem.
102
103         Specific changes:
104
105         - Remove Xcode project and workspace settings that selected the Build
106           system, allowing the default to take hold (which is currently the
107           New build system).
108         - Updated webkitdirs.pm with a terser check for Xcode version.
109         - Update build-webkit and Makefile.shared to be explicit when using
110           the old build system (no longer treat it as a default or fall-back
111           configuration).
112         - Update various xcconfig files similarly to treat the default as
113           using the new build system.
114         - Update various post-processing build steps to check for Xcode 11.4
115           and to no longer treat the default as using the old build system.
116
117         * ANGLE.xcodeproj/project.pbxproj:
118         * Configurations/ANGLE.xcconfig:
119
120 2020-05-22  Kenneth Russell  <kbr@chromium.org>
121
122         [ANGLE - iOS] webgl/1.0.3/conformance/extensions/ext-sRGB.html is failing
123         https://bugs.webkit.org/show_bug.cgi?id=212277
124
125         Reviewed by Dean Jackson.
126
127         Properly translate GL_EXT_sRGB enums to ES 3.0 enums when
128         GL_EXT_sRGB is not supported.
129
130         * src/libANGLE/renderer/gl/formatutilsgl.cpp:
131         (rx::nativegl::GetNativeInternalFormat):
132         (rx::nativegl::GetNativeFormat):
133
134 2020-05-22  Kenneth Russell  <kbr@chromium.org>
135
136         [ANGLE - iOS] fast/canvas/webgl/webgl-depth-texture.html is failing
137         https://bugs.webkit.org/show_bug.cgi?id=212271
138
139         Reviewed by Dean Jackson.
140
141         Use ES 3.0 sized internal formats for unsized depth/stencil
142         textures when the OES_depth_texture extension is unavailable - as
143         is the case in iOS's ES 3.0 driver.
144
145         * src/libANGLE/renderer/gl/formatutilsgl.cpp:
146         (rx::nativegl::GetNativeInternalFormat):
147
148 2020-05-21  Dean Jackson  <dino@apple.com>
149
150         PVRTC compressed textures are failing with ANGLE backend
151         https://bugs.webkit.org/show_bug.cgi?id=212240
152         <rdar://problem/63517385>
153
154         Reviewed by Ken Russell (representing ANGLE).
155
156         The values used for the PVRTC formats were incorrect.
157
158         * src/libANGLE/formatutils.cpp:
159         (gl::BuildInternalFormatInfoMap):
160
161 2020-05-21  Kenneth Russell  <kbr@chromium.org>
162
163         Roll ANGLE to 2020-05-21
164         https://bugs.webkit.org/show_bug.cgi?id=212228
165
166         Reviewed by Dean Jackson.
167
168         Roll ANGLE to 96a80283cc0fe604d03c0bc0b3f9eb100edd22f9 in the
169         upstream repository using jdarpinian's excellent update-angle.sh
170         script.
171
172         Manually undo the fix from Bug 210992, which was fixed differently
173         upstream.
174
175 2020-05-21  Kenneth Russell  <kbr@chromium.org>
176
177         EXT_color_buffer_half_float not exposed on iOS
178         https://bugs.webkit.org/show_bug.cgi?id=212181
179
180         Reviewed by Dean Jackson.
181
182         Remove OES_texture_half_float requirement for advertising
183         EXT_color_buffer_half_float in ANGLE. This is implicit in ES 3.0.
184
185         * src/libANGLE/renderer/gl/formatutilsgl.cpp:
186         (rx::nativegl::BuildInternalFormatInfoMap):
187
188 2020-05-20  Kenneth Russell  <kbr@chromium.org>
189
190         OES_texture_half_float_linear unavailable on WebGL 1.0 on iOS with ANGLE
191         https://bugs.webkit.org/show_bug.cgi?id=212170
192
193         Reviewed by Dean Jackson.
194
195         Now that FP16 luminance/alpha texture formats are correctly
196         emulated on ES 3.0, advertise them as filterable.
197
198         * src/libANGLE/renderer/gl/formatutilsgl.cpp:
199         (rx::nativegl::BuildInternalFormatInfoMap):
200
201 2020-05-20  Kenneth Russell  <kbr@chromium.org>
202
203         OES_texture_float / OES_texture_half_float unavailable in WebGL 1.0 on iOS Simulator with ANGLE
204         https://bugs.webkit.org/show_bug.cgi?id=210524
205
206         Reviewed by Dean Jackson.
207
208         Emulate LUMINANCE, ALPHA and LUMINANCE_ALPHA floating-point
209         textures on top of RED / RG textures when the underlying
210         OES_texture_float/half_float OpenGL ES extensions are unavailable.
211
212         This makes the conformance/extensions/oes-texture{-half}-float*
213         tests run and pass in the iOS Simulator.
214
215         This change is being reviewed upstream in the ANGLE repository and
216         is only being uploaded here for testing purposes. It will be
217         rolled in with the next ANGLE update.
218
219         * src/libANGLE/renderer/gl/TextureGL.cpp:
220         (rx::TextureGL::setSwizzle):
221         * src/libANGLE/renderer/gl/formatutilsgl.cpp:
222         (rx::nativegl::BuildInternalFormatInfoMap):
223         (rx::nativegl::IsLUMAFormat):
224         (rx::nativegl::EmulateLUMAFormat):
225         (rx::nativegl::EmulateLUMA):
226         (rx::nativegl::GetNativeInternalFormat):
227         (rx::nativegl::GetNativeFormat):
228         (rx::nativegl::GetNativeType):
229         (rx::nativegl::GetTexImageFormat):
230         (rx::nativegl::GetTexSubImageFormat):
231
232 2020-05-18  James Darpinian  <jdarpinian@chromium.org>
233
234         Enable regenerateStructNames workaround on iOS
235         https://bugs.webkit.org/show_bug.cgi?id=212056
236
237         Reviewed by Dean Jackson.
238
239         The WebGL conformance test conformance/glsl/misc/shader-struct-scope.html
240         was failing on iOS. The workaround that fixes this test was enabled only on
241         desktop GL, but it's necessary for iOS as well.
242
243         * src/libANGLE/renderer/gl/renderergl_utils.cpp:
244         (rx::nativegl_gl::InitializeFeatures):
245
246 2020-05-14  James Darpinian  <jdarpinian@chromium.org>
247
248         REGRESSION (r259589): Google Maps background layer fades out and back in
249         https://bugs.webkit.org/show_bug.cgi?id=210992
250
251         Reviewed by Dean Jackson.
252
253         ANGLE rendering feedback loop detection was incorrect if a texture attached
254         to a framebuffer was also bound to an active texture unit, and then that texture
255         unit became inactive because a sampler uniform was set.
256
257         * src/libANGLE/Context.cpp:
258         (gl::Context::onSamplerUniformChange):
259         * src/libANGLE/State.cpp:
260         (gl::State::setTextureIndexInactive):
261         * src/libANGLE/State.h:
262
263 2020-05-14  Kenneth Russell  <kbr@chromium.org>
264
265         Update ANGLE to 2020-03-27
266         https://bugs.webkit.org/show_bug.cgi?id=209689
267
268         Reviewed by Darin Adler.
269
270         Re-applying this patch now that we have a fix for 210992.
271
272         Use update-angle.sh script by James Darpinian to roll ANGLE to
273         commit b387ce9389ede6a4ed3b831ab1b8187927fa295f in
274         https://chromium.googlesource.com/angle/angle .
275
276         changes.diff has been auto-updated with Apple's diffs relative to
277         upstream. No additional manual changes are made in this roll.
278         Long autogenerated file list omitted.
279
280 2020-05-08  David Kilzer  <ddkilzer@apple.com>
281
282         Remove empty directories from from svn.webkit.org repository
283         <https://webkit.org/b/211644>
284
285         Reviewed by Darin Adler.
286
287         * include/vulkan: Removed.
288         * src/android_system_settings: Removed.
289         * third_party/glmark2: Removed.
290         * tools/flex-bison: Removed.
291
292 2020-05-07  James Darpinian  <jdarpinian@chromium.org>
293
294         Fix Google Maps rendering corruption in simulator with ANGLE
295         https://bugs.webkit.org/show_bug.cgi?id=211398
296
297         glReadPixels call needs to respect the row stride of the IOSurface.
298
299         Reviewed by Alex Christensen.
300
301         * src/libANGLE/renderer/gl/eagl/IOSurfaceSurfaceEAGL.h:
302         * src/libANGLE/renderer/gl/eagl/IOSurfaceSurfaceEAGL.mm:
303         (rx::IOSurfaceSurfaceEAGL::IOSurfaceSurfaceEAGL):
304         (rx::IOSurfaceSurfaceEAGL::releaseTexImage):
305
306 2020-05-07  Dean Jackson  <dino@apple.com>
307
308         Update ANGLE to 2020-03-27
309         https://bugs.webkit.org/show_bug.cgi?id=209689
310
311         Reverting r259589. It caused
312         https://bugs.webkit.org/show_bug.cgi?id=210992
313
314 2020-05-05  Saam Barati  <sbarati@apple.com>
315
316         Unreviewed, reverting r261176.
317
318         It broke the build
319
320         Reverted changeset:
321
322         "[ANGLE] Declarations should match definitions"
323         https://bugs.webkit.org/show_bug.cgi?id=211410
324         https://trac.webkit.org/changeset/261176
325
326 2020-05-05  Jonathan Bedard  <jbedard@apple.com>
327
328         [ANGLE] Declarations should match definitions
329         https://bugs.webkit.org/show_bug.cgi?id=211410
330
331         Reviewed by Alex Christensen.
332
333         * src/libANGLE/renderer/gl/eagl/DisplayEAGL.h: Skip definitions for platforms
334         where class is undefined.
335         * src/libANGLE/renderer/gl/eagl/DisplayEAGL.mm:
336         (rx::DisplayEAGL::generateConfigs): Function is not defined for for MacCatalyst.
337         * src/libANGLE/renderer/gl/eagl/IOSurfaceSurfaceEAGL.h: Skip definitions for platforms
338         where class is undefined.
339         * src/libANGLE/renderer/gl/eagl/IOSurfaceSurfaceEAGL.mm:
340         * src/libANGLE/renderer/gl/eagl/WindowSurfaceEAGL.h: Skip definitions for platforms
341         where class is undefined.
342         * src/libANGLE/renderer/gl/eagl/WindowSurfaceEAGL.mm:
343
344 2020-04-28  ChangSeok Oh  <changseok@webkit.org>
345
346         [GTK] Fix build failures for ANGLE_WEBGL after r259589
347         https://bugs.webkit.org/show_bug.cgi?id=211116
348
349         Reviewed by Alex Christensen.
350
351         The ANGLE_WEBGL is broken after ANGLE is updated in r259589. Missing sources
352         should be added to the build target.
353
354         * PlatformGTK.cmake: Add libangle_gl_egl_sources and libangle_gl_egl_dl_sources.
355
356 2020-04-27  Dean Jackson  <dino@apple.com>
357
358         Temporarily skip GL_DEPTH_COMPONENT32_OES requirement for depth textures on iOS
359         https://bugs.webkit.org/show_bug.cgi?id=211055
360         <rdar://problem/62410499>
361
362         Reviewed by Darin Adler.
363
364         ANGLE requires GL_DEPTH_COMPONENT32_OES be available in order to expose the
365         depth texture extension. However, this format is not supported on iOS.
366         Temporarily remove this restriction while investigating other bugs.
367
368         This also allows us to see the failing results in
369         fast/canvas/webgl/webgl-depth-texture.html
370         webgl/1.0.3/conformance/extensions/webgl-depth-texture.html
371
372         * src/libANGLE/Caps.cpp:
373         (gl::DetermineDepthTextureANGLESupport):
374         (gl::DetermineDepthTextureOESSupport):
375
376 2020-04-25  Darin Adler  <darin@apple.com>
377
378         [Cocoa] Deal with another round of Xcode upgrade checks
379         https://bugs.webkit.org/show_bug.cgi?id=211027
380
381         Reviewed by Alexey Proskuryakov.
382
383         * ANGLE.xcodeproj/project.pbxproj: Bump the upgrade check version.
384         Add a harmless base localization, rename English localization to en,
385         remove Japanese, French, German; this project contains nothing localized.
386
387 2020-04-08  Truitt Savell  <tsavell@apple.com>
388
389         Unreviewed, reverting r259708.
390
391         Broke the iOS device Build
392
393         Reverted changeset:
394
395         "Enable the use of XCBuild by default in Apple builds"
396         https://bugs.webkit.org/show_bug.cgi?id=209890
397         https://trac.webkit.org/changeset/259708
398
399 2020-04-08  Keith Rollin  <krollin@apple.com>
400
401         Enable the use of XCBuild by default in Apple builds
402         https://bugs.webkit.org/show_bug.cgi?id=209890
403         <rdar://problem/44182078>
404
405         Reviewed by Darin Adler.
406
407         Switch from the "legacy" Xcode build system to the "new" build system
408         (also known as "XCBuild"). Switching to the new system speeds up
409         builds by a small percentage, better validates projects for
410         build-related issues (such as dependency cycles), lets WebKit benefit
411         from future improvements in XCBuild such as those coming from the
412         underlying llbuild open source project, and prepares us for any other
413         tools built for this new ecosystem.
414
415         Specific changes:
416
417         - Remove Xcode project and workspace settings that selected the Build
418           system, allowing the default to take hold (which is currently the
419           New build system).
420         - Updated webkitdirs.pm with a terser check for Xcode version.
421         - Update build-webkit and Makefile.shared to be explicit when using
422           the old build system (no longer treat it as a default or fall-back
423           configuration).
424         - Update various xcconfig files similarly to treat the default as
425           using the new build system.
426         - Update various post-processing build steps to check for Xcode 11.4
427           and to no longer treat the default as using the old build system.
428
429         * ANGLE.xcodeproj/project.pbxproj:
430         * Configurations/ANGLE.xcconfig:
431
432 2020-04-06  Kenneth Russell  <kbr@chromium.org>
433
434         Update ANGLE to 2020-03-27
435         https://bugs.webkit.org/show_bug.cgi?id=209689
436
437         Reviewed by Darin Adler.
438
439         Use update-angle.sh script by James Darpinian to roll ANGLE to
440         commit b387ce9389ede6a4ed3b831ab1b8187927fa295f in
441         https://chromium.googlesource.com/angle/angle .
442
443         changes.diff has been auto-updated with Apple's diffs relative to
444         upstream. No additional manual changes are made in this roll.
445         Long autogenerated file list omitted.
446
447 2020-04-03  Kenneth Russell  <kbr@chromium.org>
448
449         Fix bugs related to VideoTextureCopierCV and ANGLE roll script
450         https://bugs.webkit.org/show_bug.cgi?id=209943
451
452         Reviewed by Dean Jackson.
453
454         Update the update-angle.sh script to take into account the new
455         procedure for generating ANGLE's commit ID header file. This
456         enables ANGLE rolls into WebKit again.
457
458         * update-angle.sh:
459
460 2020-04-03  Keith Rollin  <krollin@apple.com>
461
462         Do not link with OpenGL on Apple platforms
463         https://bugs.webkit.org/show_bug.cgi?id=209946
464         <rdar://problem/61237956>
465
466         Reviewed by Sam Weinig.
467
468         OpenGL is not used in our build of ANGLE. Attempting to link with it
469         causes warnings, which can turn into errors in some cases (in
470         particular, when building with Xcode's "new" build system).
471
472         * ANGLE.xcodeproj/project.pbxproj:
473
474 2020-04-03  David Kilzer  <ddkilzer@apple.com>
475
476         [Xcode] Replace ASAN_OTHER_CFLAGS and ASAN_OTHER_CPLUSPLUSFLAGS with $(inherited)
477         <https://webkit.org/b/209963>
478         <rdar://problem/61257504>
479
480         Reviewed by Alexey Proskuryakov.
481
482         * ANGLE.xcodeproj/project.pbxproj:
483         * Configurations/Base.xcconfig:
484         - Remove ASAN_OTHER_CFLAGS, ASAN_OTHER_CPLUSPLUSFLAGS and
485           ASAN_OTHER_LDFLAGS.
486
487 2020-03-27  Kenneth Russell  <kbr@chromium.org>
488
489         Use ANGLE_robust_client_memory to replace framebuffer/texture validation
490         https://bugs.webkit.org/show_bug.cgi?id=209098
491
492         Reviewed by Dean Jackson.
493
494         Incorporated fix from anglebug.com/4504 to make
495         fast/canvas/webgl/uninitialized-test.html pass.
496
497         Incorporated fix from anglebug.com/4518 to make:
498          webgl/2.0.0/conformance2/renderbuffers/invalidate-framebuffer.html
499          webgl/2.0.0/conformance2/rendering/blitframebuffer-test.html
500          webgl/2.0.0/conformance2/rendering/rgb-format-support.html
501          webgl/2.0.0/conformance2/state/gl-object-get-calls.html
502          webgl/2.0.0/conformance2/textures/misc/tex-new-formats.html
503         pass.
504
505         * src/libANGLE/Texture.cpp:
506         (gl::Texture::copySubImage):
507         (gl::Texture::ensureSubImageInitialized):
508         * src/libANGLE/renderer/gl/renderergl_utils.cpp:
509         (rx::nativegl_gl::InitializeFeatures):
510
511 2020-03-21  Keith Rollin  <krollin@apple.com>
512
513         Set INSTALLHDRS_SCRIPT_PHASE in ANGLE builds
514         https://bugs.webkit.org/show_bug.cgi?id=209384
515         <rdar://problem/59513380>
516
517         Reviewed by Dan Bernstein.
518
519         Production ANGLE builds are technically non-compliant. During the
520         installhdrs build action, ANGLE headers are exported but are not
521         post-processed. This differs from the install build action, where the
522         exported headers *are* post-processed. The headers need to be treated
523         identically under both actions. The post-processing is enabled by
524         setting the INSTALLHDRS_SCRIPT_PHASE build setting to YES. Most other
525         WebKit projects already set this setting (see, for example,
526         https://trac.webkit.org/changeset/155787,
527         https://trac.webkit.org/changeset/110327, and
528         https://trac.webkit.org/changeset/41417).
529
530         * Configurations/ANGLE.xcconfig:
531
532 2020-03-15  Michael Catanzaro  <mcatanzaro@gnome.org>
533
534         [ANGLE] Source/ThirdParty/ANGLE/src/common/utilities.cpp:10: warning: ignoring #pragma clang diagnostic [-Wunknown-pragmas]
535         https://bugs.webkit.org/show_bug.cgi?id=209014
536
537         Reviewed by Darin Adler.
538
539         Silence compiler warning.
540
541         * changes.diff:
542         * src/common/utilities.cpp:
543
544 2020-03-15  Michael Catanzaro  <mcatanzaro@gnome.org>
545
546         [ANGLE] Source/ThirdParty/ANGLE/src/libANGLE/Display.h:221:73: warning: implicitly-declared ‘egl::AttributeMap& egl::AttributeMap::operator=(const egl::AttributeMap&)’ is deprecated [-Wdeprecated-copy]
547         https://bugs.webkit.org/show_bug.cgi?id=209015
548
549         Reviewed by Darin Adler.
550
551         Suppress compiler warning. If this were WebKit code, I might take the time to fix it, but
552         with third-party code it's probably best to just turn off warnings that upstream is not
553         using.
554
555         * CMakeLists.txt:
556
557 2020-03-02  Alan Coon  <alancoon@apple.com>
558
559         Add new Mac target numbers
560         https://bugs.webkit.org/show_bug.cgi?id=208398
561
562         Reviewed by Alexey Proskuryakov.
563
564         * Configurations/Base.xcconfig:
565         * Configurations/DebugRelease.xcconfig:
566         * Configurations/Version.xcconfig:
567         * Configurations/WebKitTargetConditionals.xcconfig:
568
569 2020-02-12  Michael Catanzaro  <mcatanzaro@gnome.org>
570
571         Multiple GCC 10 build failures in ANGLE
572         https://bugs.webkit.org/show_bug.cgi?id=207365
573
574         Reviewed by Carlos Alberto Lopez Perez.
575
576         * changes.diff: Updated.
577         * include/platform/Platform.h: Add missing #include to get size_t.
578         * src/common/PackedEnums.h: Remove problematic const_casts.
579
580 2020-02-12  Dean Jackson  <dino@apple.com>
581
582         ANGLE has unused bison and glmark2 code
583         https://bugs.webkit.org/show_bug.cgi?id=207597
584         rdar://59361460
585
586         Reviewed by Maciej Stachowiak.
587
588         Remove some unused files.
589
590         * changes.diff:
591         * src/tests/perf_tests/glmark2Benchmark.cpp: Removed.
592         * third_party/glmark2/BUILD.gn: Removed.
593         * third_party/glmark2/README.angle: Removed.
594         * tools/flex-bison/README.md: Removed.
595         * tools/flex-bison/linux/bison.sha1: Removed.
596         * tools/flex-bison/linux/flex.sha1: Removed.
597         * tools/flex-bison/third_party/.gitattributes: Removed.
598         * tools/flex-bison/third_party/m4sugar/LICENSE: Removed.
599         * tools/flex-bison/third_party/m4sugar/README.chromium: Removed.
600         * tools/flex-bison/third_party/m4sugar/foreach.m4: Removed.
601         * tools/flex-bison/third_party/m4sugar/m4sugar.m4: Removed.
602         * tools/flex-bison/third_party/skeletons/LICENSE: Removed.
603         * tools/flex-bison/third_party/skeletons/README.chromium: Removed.
604         * tools/flex-bison/third_party/skeletons/bison.m4: Removed.
605         * tools/flex-bison/third_party/skeletons/c-like.m4: Removed.
606         * tools/flex-bison/third_party/skeletons/c.m4: Removed.
607         * tools/flex-bison/third_party/skeletons/yacc.c: Removed.
608         * tools/flex-bison/update_flex_bison_binaries.py: Removed.
609         * tools/flex-bison/windows/bison.exe.sha1: Removed.
610         * tools/flex-bison/windows/flex.exe.sha1: Removed.
611         * tools/flex-bison/windows/m4.exe.sha1: Removed.
612         * tools/flex-bison/windows/msys-2.0.dll.sha1: Removed.
613         * tools/flex-bison/windows/msys-iconv-2.dll.sha1: Removed.
614         * tools/flex-bison/windows/msys-intl-8.dll.sha1: Removed.
615
616 2020-02-09  Keith Rollin  <krollin@apple.com>
617
618         Re-enable LTO for ARM builds
619         https://bugs.webkit.org/show_bug.cgi?id=207402
620         <rdar://problem/49190767>
621
622         Reviewed by Sam Weinig.
623
624         Bug 190758 re-enabled LTO for Production builds for x86-family CPUs.
625         Enabling it for ARM was left out due to a compiler issue. That issue
626         has been fixed, and so now we can re-enable LTO for ARM.
627
628         * Configurations/Base.xcconfig:
629
630 2020-02-07  Kenneth Russell  <kbr@chromium.org>
631
632         Try adding glBindFramebuffer flush workaround to ANGLE as remedy for flaky WebGL tests
633         https://bugs.webkit.org/show_bug.cgi?id=206625
634
635         Reviewed by Dean Jackson.
636
637         * include/platform/FeaturesGL.h:
638         * src/libANGLE/renderer/gl/StateManagerGL.cpp:
639         (rx::StateManagerGL::bindFramebuffer):
640         * src/libANGLE/renderer/gl/renderergl_utils.cpp:
641         (rx::nativegl_gl::InitializeFeatures):
642
643 2020-02-05  Dean Jackson  <dino@apple.com>
644
645         Fix MacCatalyst build.
646
647         * src/libANGLE/validationEGL.cpp:
648         (egl::ValidateCreatePbufferFromClientBuffer):
649
650 2020-02-04  James Darpinian  <jdarpinian@chromium.org>
651
652         Update ANGLE
653         https://bugs.webkit.org/show_bug.cgi?id=206318
654
655         Several important changes to fix layout test failures and timeouts in this update.
656         - Made expensive validation non-default in debug mode to reduce timeouts.
657         - Optimize disabling ARB_texture_rectangle to make shader compilation much faster.
658         - Flush before texture deletion to work around Mac Intel driver bug.
659
660         Reviewed by Dean Jackson.
661
662         * ANGLE.plist: update commit hash
663         * ANGLE.xcodeproj/project.pbxproj: Add/remove files
664         * Compiler.cmake: Translated from compiler.gni
665         * GLESv2.cmake: Translated from libGLESv2.gni
666         * changes.diff: Now lists all changes from upstream.
667         * update-angle.sh: Diff command was wrong.
668         * Plus a whole lot of changes from upstream.
669
670 2020-01-30  James Darpinian  <jdarpinian@chromium.org>
671
672         Update ANGLE
673         https://bugs.webkit.org/show_bug.cgi?id=206318
674
675         Take two!
676
677         Several important changes to fix layout test failures and timeouts in this update.
678         - Made expensive validation non-default in debug mode to reduce timeouts.
679         - Optimize disabling ARB_texture_rectangle to make shader compilation much faster.
680         - Flush before texture deletion to work around Mac Intel driver bug.
681
682         Reviewed by Dean Jackson.
683
684         * ANGLE.plist: update commit hash
685         * ANGLE.xcodeproj/project.pbxproj: Add/remove files
686         * Compiler.cmake: Translated from compiler.gni
687         * GLESv2.cmake: Translated from libGLESv2.gni
688         * changes.diff: Now lists all changes from upstream.
689         * update-angle.sh: Diff command was wrong.
690         * Plus a whole lot of changes from upstream.
691
692 2020-01-22  James Darpinian  <jdarpinian@chromium.org>
693
694         Update ANGLE
695         https://bugs.webkit.org/show_bug.cgi?id=206318
696
697         Several important changes to fix layout test failures and timeouts in this update.
698         - Made expensive validation non-default in debug mode to reduce timeouts.
699         - Optimize disabling ARB_texture_rectangle to make shader compilation much faster.
700         - Flush before texture deletion to work around Mac Intel driver bug.
701
702         Reviewed by Dean Jackson.
703
704         * ANGLE.plist: update commit hash
705         * ANGLE.xcodeproj/project.pbxproj: Add/remove files
706         * Compiler.cmake: Translated from compiler.gni
707         * GLESv2.cmake: Translated from libGLESv2.gni
708         * changes.diff: Now lists all changes from upstream.
709         * update-angle.sh: Diff command was wrong.
710         * Plus a whole lot of changes from upstream.
711
712 2020-01-22  James Darpinian  <jdarpinian@chromium.org>
713
714         REGRESSION (r253926): webgl/1.0.3/conformance/rendering/many-draw-calls.html is much slower, times out in debug
715         https://bugs.webkit.org/show_bug.cgi?id=205668
716
717         Disable asserts when compiling ANGLE in release mode by defining
718         NDEBUG.
719
720         Reviewed by Dean Jackson.
721
722         * Configurations/ANGLE.xcconfig:
723
724 2020-01-14  Dean Jackson  <dino@apple.com>
725
726         Build ANGLE as a dynamic library
727         https://bugs.webkit.org/show_bug.cgi?id=204708
728         rdar://57349384
729
730         Rolling this out for the 2nd time.
731
732         - it caused issues with the shared dyld cache, because the
733         cache doesn't know to include the libary until it already
734         exists in the build
735         - probably related to the above, we saw some performance
736         regressions directly related to this change
737
738         * ANGLE.xcodeproj/project.pbxproj:
739         * Configurations/ANGLE.xcconfig:
740         * Configurations/Base.xcconfig:
741         * Configurations/DebugRelease.xcconfig:
742         * include/CMakeLists.txt:
743         * include/GLSLANG/ShaderLang.h:
744         * include/GLSLANG/ShaderVars.h:
745         * src/libANGLE/renderer/gl/cgl/DisplayCGL.mm:
746         (rx::DisplayCGL::isValidNativeWindow const):
747         * src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.mm:
748         (rx::WindowSurfaceCGL::WindowSurfaceCGL):
749         (rx::WindowSurfaceCGL::~WindowSurfaceCGL):
750         * src/libANGLE/renderer/gl/eagl/DisplayEAGL.mm:
751         (rx::DisplayEAGL::terminate):
752         (rx::DisplayEAGL::isValidNativeWindow const):
753         (rx::WorkerContextEAGL::~WorkerContextEAGL):
754         * src/libANGLE/renderer/gl/eagl/WindowSurfaceEAGL.mm:
755         (rx::WindowSurfaceEAGL::WindowSurfaceEAGL):
756         (rx::WindowSurfaceEAGL::~WindowSurfaceEAGL):
757
758 2020-01-14  Kenneth Russell  <kbr@chromium.org>
759
760         Need workaround for crash in Intel OpenGL driver related to texture copying feedback loops
761         https://bugs.webkit.org/show_bug.cgi?id=205843
762
763         Remove ANGLE workaround introduced in bug 205707, as it was
764         discovered to be incomplete, and was never upstreamed. The correct
765         workaround will be integrated in the next ANGLE roll.
766
767         Reviewed by Dean Jackson.
768
769         * include/platform/FeaturesGL.h:
770         * src/libANGLE/renderer/gl/StateManagerGL.cpp:
771         (rx::StateManagerGL::bindFramebuffer):
772         * src/libANGLE/renderer/gl/renderergl_utils.cpp:
773         (rx::nativegl_gl::InitializeFeatures):
774
775 2020-01-08  Kenneth Russell  <kbr@chromium.org>
776
777         Remove some #ifdefs related to iOS port of ANGLE
778         https://bugs.webkit.org/show_bug.cgi?id=205781
779
780         Since the port to the iOS Simulator in
781         https://bugs.webkit.org/show_bug.cgi?id=205618 , these #ifdefs
782         should no longer be needed.
783
784         Reviewed by Dean Jackson.
785
786         * src/common/PackedEnums.cpp:
787         (egl_gl::EGLTextureTargetToTextureType):
788         * src/libANGLE/validationES2.cpp:
789         (gl::ValidateFramebufferTexture2D):
790
791 2020-01-05  Kenneth Russell  <kbr@chromium.org>
792
793         REGRESSION (r253926): Flaky crashes on webgl/1.0.3/conformance/textures/texture-copying-feedback-loops.html and webgl/2.0.0/conformance/textures/misc/texture-copying-feedback-loops.html
794         https://bugs.webkit.org/show_bug.cgi?id=205707
795
796         Work around bugs in Intel's graphics driver where operations can
797         be incorrectly reordered across glBindFramebuffer calls by
798         flushing before/after these calls. Conclusively addresses this
799         crash; may also address other layout test flakiness seen when
800         switching to ANGLE backend for WebGL.
801
802         Reviewed by Dean Jackson.
803
804         * include/platform/FeaturesGL.h:
805         * src/libANGLE/renderer/gl/StateManagerGL.cpp:
806         (rx::StateManagerGL::bindFramebuffer):
807         * src/libANGLE/renderer/gl/renderergl_utils.cpp:
808         (rx::nativegl_gl::InitializeFeatures):
809
810 2020-01-04  Kenneth Russell  <kbr@chromium.org>
811
812         Add support for iOS Simulator to ANGLE backend for WebGL
813         https://bugs.webkit.org/show_bug.cgi?id=205618
814
815         Extend EGL_ANGLE_iosurface_client_buffer extension to require use
816         of TEXTURE_2D target on iOS, and to provide read/write usage hints
817         for the pbuffer created from the IOSurface.
818
819         Emulate missing [EAGLContext texImageIOSurface:...] via texture
820         upload in eglBindTexImage and readback in eglReleaseTexImage.
821
822         These changes will be upstreamed in
823         https://bugs.chromium.org/p/angleproject/issues/detail?id=4256 .
824
825         Reviewed by Dean Jackson.
826
827         * extensions/EGL_ANGLE_iosurface_client_buffer.txt:
828         * include/EGL/eglext_angle.h:
829         * src/libANGLE/renderer/gl/eagl/DisplayEAGL.mm:
830         (rx::DisplayEAGL::initialize):
831         * src/libANGLE/renderer/gl/eagl/IOSurfaceSurfaceEAGL.h:
832         * src/libANGLE/renderer/gl/eagl/IOSurfaceSurfaceEAGL.mm:
833         (rx::IOSurfaceSurfaceEAGL::IOSurfaceSurfaceEAGL):
834         (rx::IOSurfaceSurfaceEAGL::bindTexImage):
835         (rx::IOSurfaceSurfaceEAGL::releaseTexImage):
836         (rx::IOSurfaceSurfaceEAGL::validateAttributes):
837         (rx::IOSurfaceSurfaceEAGL::createDefaultFramebuffer):
838         (rx::IOSurfaceSurfaceEAGL::getIOSurfaceLockOptions const):
839         * src/libANGLE/validationEGL.cpp:
840         (egl::ValidateCreatePbufferFromClientBuffer):
841
842 2019-12-25  Dean Jackson  <dino@apple.com>
843
844         [WebGL] Enable ANGLE by default for Cocoa platforms (except simulator)
845         https://bugs.webkit.org/show_bug.cgi?id=205483
846         rdar://56925821
847
848         Reviewed by Simon Fraser.
849
850         Export entry_points_gles_ext_autogen.h.
851
852         * ANGLE.xcodeproj/project.pbxproj:
853
854 2019-12-19  Dean Jackson  <dino@apple.com>
855
856         Build ANGLE as a dynamic library
857         https://bugs.webkit.org/show_bug.cgi?id=204708
858         rdar://57349384
859
860         Reviewed by Tim Horton.
861
862         Take 2 at attempting this. The first time was rolled out
863         due to failures in Apple's upstream build system.
864
865         Modify ANGLE to build as a dynamic library. My (not thorough) testing suggests
866         this will reduce the in-flight binary size on Apple's build systems by at least
867         a factor of 10 (it was over 1G). Building release for x86_64-only:
868             - Previously: libANGLE.a -- 306 MB
869             - Now: libANGLE-shared.dylib -- 6.7 MB
870
871         In order to do this, some symbols needed to be exported from the
872         "sh" namespace (which are used in ANGLEWebKitBridge, but not when
873         ANGLE's rendering backend is active).
874
875         While here, I turned on some more build options, like ARC.
876
877         Lastly, I added a build phase that creates a fake libANGLE.a
878         because Apple's build system thinks that WebCore still needs it.
879
880         * ANGLE.xcodeproj/project.pbxproj: Link with IOKit and IOSurface frameworks, and
881         product a dylib product.
882         * Configurations/ANGLE.xcconfig: Update the configuration for a dynamic library.
883         * Configurations/Base.xcconfig:
884         * Configurations/DebugRelease.xcconfig:
885         * include/GLSLANG/ShaderLang.h: Add ANGLE_EXPORT to some functions to make
886         sure they will be visible in the exported library.
887         * include/GLSLANG/ShaderVars.h:
888         * src/libANGLE/renderer/gl/cgl/DisplayCGL.mm: Change reinterpret_cast to a normal
889         C cast so it can be annotated with __bridge.
890         (rx::DisplayCGL::isValidNativeWindow const):
891         * src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.mm: Ditto.
892         (rx::WindowSurfaceCGL::WindowSurfaceCGL):
893         (rx::WindowSurfaceCGL::~WindowSurfaceCGL):
894         * src/libANGLE/renderer/gl/eagl/DisplayEAGL.mm: Ditto.
895         * src/libANGLE/renderer/gl/eagl/WindowSurfaceEAGL.mm: Ditto.
896
897 2019-12-19  ChangSeok Oh  <changseok@webkit.org>
898
899         [GTK] Build fix for ANGLE_WEBGL after r253650
900         https://bugs.webkit.org/show_bug.cgi?id=205426
901
902         Reviewed by Carlos Alberto Lopez Perez.
903
904         libglesv2_entry_points_headers was removed in r253650 that updated CMake for ANGLE.
905         GLESv2.cmake seems to be susceptible to ANGLE changes, so it might not be
906         a good place where any platform specific configuration is located.
907         Let's move the entry points header set to CMakeLists.txt.
908
909         * CMakeLists.txt:
910
911 2019-12-18  Dean Jackson  <dino@apple.com>
912
913         Reverting libANGLE.a -> libANGLE-shared.dylib.
914
915         Follow-up to remove the build phase that was trying
916         to fool Apple's build system.
917
918         * ANGLE.xcodeproj/project.pbxproj:
919
920 2019-12-18  Dean Jackson  <dino@apple.com>
921
922         Reverting libANGLE.a -> libANGLE-shared.dylib.
923
924         The internal Apple build systems are still unhappy with
925         this change, so I'm reverting it until I can be sure
926         they'll accept it.
927
928         * ANGLE.xcodeproj/project.pbxproj:
929         * Configurations/ANGLE.xcconfig:
930         * Configurations/Base.xcconfig:
931         * Configurations/DebugRelease.xcconfig:
932         * include/CMakeLists.txt:
933         * include/GLSLANG/ShaderLang.h:
934         * include/GLSLANG/ShaderVars.h:
935         * src/libANGLE/renderer/gl/cgl/DisplayCGL.mm:
936         (rx::DisplayCGL::isValidNativeWindow const):
937         * src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.mm:
938         (rx::WindowSurfaceCGL::WindowSurfaceCGL):
939         (rx::WindowSurfaceCGL::~WindowSurfaceCGL):
940         * src/libANGLE/renderer/gl/eagl/DisplayEAGL.mm:
941         (rx::DisplayEAGL::terminate):
942         (rx::DisplayEAGL::isValidNativeWindow const):
943         (rx::WorkerContextEAGL::~WorkerContextEAGL):
944         * src/libANGLE/renderer/gl/eagl/WindowSurfaceEAGL.mm:
945         (rx::WindowSurfaceEAGL::WindowSurfaceEAGL):
946         (rx::WindowSurfaceEAGL::~WindowSurfaceEAGL):
947
948 2019-12-17  Fujii Hironori  <Hironori.Fujii@sony.com>
949
950         Unreviewed build fix for WinCairo port
951         https://bugs.webkit.org/show_bug.cgi?id=204914
952         <rdar://problem/58023118>
953
954         * include/CMakeLists.txt: Replaced '$libangle_includes' with '${libangle_includes}".
955
956 2019-12-17  James Darpinian  <jdarpinian@chromium.org>
957
958         Improve update-angle.sh and add gni-to-cmake.py
959         https://bugs.webkit.org/show_bug.cgi?id=204914
960
961         update-angle.sh now performs a git rebase. This automatically merges
962         upstream changes with WebKit's local changes where possible and
963         highlights any conflicts for manual resolution.
964
965         Also, it runs a new script gni-to-cmake.py to automatically update the
966         CMake files with upstream changes to the gni files. Along with the
967         changes to include/CMakeLists.txt, this should prevent build breaks
968         like the recently fixed WinCairo one. Additionally, diffing the CMake
969         files provides a concise list of build changes that can be referenced
970         when manually updating the XCode project file.
971
972         Reviewed by Dean Jackson.
973
974         * CMakeLists.txt:
975         * Compiler.cmake:
976         * GLESv2.cmake:
977         * gni-to-cmake.py: Added.
978         * include/CMakeLists.txt:
979         * update-angle.sh:
980
981 2019-12-17  ChangSeok Oh  <changseok@webkit.org>
982
983         Unreviewed build fix for USE_ANGLE_WEBGL after r252994
984
985         * CMakeLists.txt: Add a missing directory separator.
986
987 2019-12-13  Dean Jackson  <dino@apple.com>
988
989         MacCatalyst build of libANGLE is installed in the incorrect location
990         https://bugs.webkit.org/show_bug.cgi?id=205219
991         <rdar://problem/57713353>
992
993         Reviewed by Simon Fraser.
994
995         Rename libANGLE.dylib into libANGLE-shared.dylib, so we can
996         avoid accidentally trying to link to the libANGLE.a that was
997         removed recently (but still exists in the SDK for now).
998
999         Also, make sure that we install into the correct location for
1000         a Catalyst build.
1001
1002         * ANGLE.xcodeproj/project.pbxproj:
1003         * Configurations/ANGLE.xcconfig:
1004         * Configurations/Base.xcconfig:
1005
1006 2019-12-11  Dean Jackson  <dino@apple.com>
1007
1008         Produce a dummy libANGLE.a file to fool Apple's build test infrastructure
1009         https://bugs.webkit.org/show_bug.cgi?id=205068
1010         <rdar://problem/57713353>
1011
1012         Unreviewed followup to apply the script to Mac Catalyst builds.
1013
1014         Note that this phase can be removed in a few days when Apple's Test
1015         Platform realises it doesn't need libANGLE.a any more.
1016
1017         * ANGLE.xcodeproj/project.pbxproj:
1018
1019 2019-12-10  Dean Jackson  <dino@apple.com>
1020
1021         Produce a dummy libANGLE.a file to fool Apple's build test infrastructure
1022         https://bugs.webkit.org/show_bug.cgi?id=205068
1023         <rdar://problem/57713353>
1024
1025         Reviewed by Alex Christensen.
1026
1027         Create a dummy libANGLE.a file until our infrastructure realises it
1028         doesn't need that file any more. Hopefully the fact that it isn't
1029         really a static library, but just a text file, is ok.
1030
1031         * ANGLE.xcodeproj/project.pbxproj: Add a new shell script phase that
1032         creates a dummy file.
1033
1034 2019-12-06  Dean Jackson  <dino@apple.com>
1035
1036         Restrict libANGLE to link only with WebCore
1037         https://bugs.webkit.org/show_bug.cgi?id=204957
1038         <rdar://problem/57708644>
1039
1040         Reviewed by Brian Burg.
1041
1042         Restrict to WebCore and WebCoreTestSupport.
1043
1044         * Configurations/ANGLE.xcconfig:
1045
1046 2019-12-05  James Darpinian  <jdarpinian@chromium.org>
1047
1048         Finish ANGLE update
1049         https://bugs.webkit.org/show_bug.cgi?id=204911
1050
1051         The last ANGLE update patch didn't include all the changed files.
1052         This patch updates the rest of the files.
1053
1054         Reviewed by Alex Christensen.
1055
1056         * src/tests: Lots of changed files from upstream ANGLE.
1057         * src/third_party/compiler/README.chromium:
1058         * third_party/VK-GL-CTS/README.angle: Added.
1059         * third_party/deqp/README.angle: Removed.
1060         * third_party/googletest/README.angle: Removed.
1061         * third_party/libpng/BUILD.gn:
1062         * third_party/spirv-cross/README.angle: Added.
1063         * util/OSWindow.h:
1064         * util/egl_loader_autogen.cpp:
1065         (angle::LoadEGL):
1066         * util/egl_loader_autogen.h:
1067         * util/fuchsia/ScenicWindow.cpp:
1068         (ScenicWindow::resetNativeWindow):
1069         * util/fuchsia/ScenicWindow.h:
1070         * util/gles_loader_autogen.cpp:
1071         (angle::LoadGLES):
1072         * util/gles_loader_autogen.h:
1073         * util/osx/OSXWindow.h:
1074         * util/osx/OSXWindow.mm:
1075         (OSXWindow::initialize):
1076         * util/ozone/OzoneWindow.h:
1077         * util/posix/crash_handler_posix.cpp:
1078         (angle::InitCrashHandler):
1079         * util/posix/test_utils_posix.cpp:
1080         (angle::GetTempDir):
1081         (angle::CreateTemporaryFileInDir):
1082         (angle::DeleteFile):
1083         (angle::LaunchProcess):
1084         (angle::NumberOfProcessors):
1085         * util/shader_utils.cpp:
1086         (CompileShaderFromFile):
1087         (CompileProgramFromFiles):
1088         * util/test_utils.cpp: Added.
1089         (angle::CreateTemporaryFile):
1090         (angle::GetFileSize):
1091         (angle::ReadEntireFileToString):
1092         (angle::ProcessHandle::ProcessHandle):
1093         (angle::ProcessHandle::~ProcessHandle):
1094         (angle::ProcessHandle::operator=):
1095         (angle::ProcessHandle::reset):
1096         * util/test_utils.h:
1097         * util/test_utils_unittest.cpp: Added.
1098         (angle::NormalizeNewLines):
1099         (angle::TEST):
1100         * util/test_utils_unittest_helper.cpp: Added.
1101         (main):
1102         * util/test_utils_unittest_helper.h: Added.
1103         * util/util.gni:
1104         * util/windows/WGLWindow.cpp:
1105         * util/windows/test_utils_win.cpp:
1106         (angle::InitCrashHandler):
1107         (angle::TerminateCrashHandler):
1108         (angle::LaunchProcess):
1109         (angle::GetTempDir):
1110         (angle::CreateTemporaryFileInDir):
1111         (angle::DeleteFile):
1112         (angle::NumberOfProcessors):
1113         * util/windows/win32/Win32Window.cpp:
1114         (Win32Window::initialize):
1115         * util/windows/win32/test_utils_win32.cpp:
1116         (angle::StabilizeCPUForBenchmarking):
1117         * util/x11/X11Window.h:
1118
1119 2019-12-02  Ross Kirsling  <ross.kirsling@sony.com>
1120
1121         Unreviewed WinCairo build fix following r252989.
1122
1123         * include/CMakeLists.txt:
1124
1125 2019-12-02  Dean Jackson  <dino@apple.com>
1126
1127         Clean up ANGLE header post-process script
1128         https://bugs.webkit.org/show_bug.cgi?id=204711
1129
1130         Reviewed by Tim Horton.
1131
1132         Since `sed` on macOS requires the in-place argument to have a zero-length string
1133         to avoid making backups, this script was attempting to pass ''. However, this was
1134         being evaluated, creating a bunch of files with \'\' suffixes. Fix this by using
1135         an array when expanding the arguments.
1136
1137         Also fix a typo where the character "3" was being printed.
1138
1139         Lastly, only print out the basename of the header file being converted.
1140
1141         * adjust-angle-include-paths.sh:
1142
1143 2019-11-30  Dean Jackson  <dino@apple.com>
1144
1145         Build ANGLE as a dynamic library
1146         https://bugs.webkit.org/show_bug.cgi?id=204708
1147         rdar://57349384
1148
1149         Reviewed by Tim Horton.
1150
1151         Modify ANGLE to build as a dynamic library. My (not thorough) testing suggests
1152         this will reduce the in-flight binary size on Apple's build systems by at least
1153         a factor of 10 (it was over 1G). Building release for x86_64-only:
1154             - Previously: libANGLE.a -- 306 MB
1155             - Now: libANGLE.dylib -- 6.7 MB
1156
1157         In order to do this, some symbols needed to be exported from the
1158         "sh" namespace (which are used in ANGLEWebKitBridge, but not when
1159         ANGLE's rendering backend is active).
1160
1161         While here, I turned on some more build options, like ARC.
1162
1163         * ANGLE.xcodeproj/project.pbxproj: Link with IOKit and IOSurface frameworks, and
1164         product a dylib product.
1165         * Configurations/ANGLE.xcconfig: Update the configuration for a dynamic library.
1166         * Configurations/Base.xcconfig:
1167         * Configurations/DebugRelease.xcconfig:
1168         * Configurations/Version.xcconfig: Added.
1169         * Configurations/WebKitTargetConditionals.xcconfig: Added.
1170
1171         * include/GLSLANG/ShaderLang.h: Add ANGLE_EXPORT to some functions to make
1172         sure they will be visible in the exported library.
1173         * include/GLSLANG/ShaderVars.h:
1174         * src/libANGLE/renderer/gl/cgl/DisplayCGL.mm: Change reinterpret_cast to a normal
1175         C cast so it can be annotated with __bridge.
1176         (rx::DisplayCGL::isValidNativeWindow const):
1177         * src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.mm: Ditto.
1178         (rx::WindowSurfaceCGL::WindowSurfaceCGL):
1179         (rx::WindowSurfaceCGL::~WindowSurfaceCGL):
1180         * src/libANGLE/renderer/gl/eagl/DisplayEAGL.mm: Ditto.
1181         * src/libANGLE/renderer/gl/eagl/WindowSurfaceEAGL.mm: Ditto.
1182
1183 2019-12-02  James Darpinian  <jdarpinian@chromium.org>
1184
1185         Update ANGLE
1186         https://bugs.webkit.org/show_bug.cgi?id=204595
1187
1188         Reviewed by Alex Christensen.
1189
1190         * ANGLE.plist: Updated commit hash.
1191         * ANGLE.xcodeproj/project.pbxproj: Changes mirroring gn changes upstream.
1192         * Compiler.cmake: Changes mirroring gn changes upstream.
1193         * GLESv2.cmake: Changes mirroring gn changes upstream.
1194         * CMakeLists.txt: Changes mirroring gn changes upstream.
1195
1196         * Many other files added/removed/changed from upstream.
1197
1198
1199 2019-11-20  ChangSeok Oh  <changseok@webkit.org>
1200
1201         [GTK] Add ANGLE backend to GTK port
1202         https://bugs.webkit.org/show_bug.cgi?id=199060
1203
1204         Reviewed by Žan Doberšek.
1205
1206         * CMakeLists.txt: When USE_ANGLE_WEBGL is enabled, necessary glesv2 entry points headers
1207           are installed in the derived source directory. And then adjust-angle-include-path.sh is applied
1208           to change include paths in the entry points header files.
1209         * GLESv2.cmake: libglesv2_entry_points_headers is newly defined, which is a gathering of
1210           entry point headers of libGLESv2.
1211         * PlatformGTK.cmake: In this file, we append gl and glx related angle code as a build target.
1212           Since we want gl context and gles context simultaneously, we remove gl prototype calls
1213           from the generated libGLESv2 library. Instead, we invoke egl and gl calls of ANGLE
1214           via their non-prototype function names.
1215         * adjust-angle-include-paths.sh: sed is slightly different in unix and linux systems.
1216           In particular, its inplace option needs to be changed for better compatibility on linux.
1217         * include/CMakeLists.txt: ANGLE_WEBGL_HEADERS is newly defined. It gathers header files of ANGLE
1218           for WebGL support.
1219
1220 2019-11-08  Dean Jackson  <dino@apple.com>
1221
1222         Add ANGLE backend for iOS device
1223         https://bugs.webkit.org/show_bug.cgi?id=202159
1224         <rdar://57000166>
1225
1226         Build fix. Don't include IOSurface.h on iOS (public SDK doesn't have it).
1227
1228         * src/libANGLE/renderer/gl/eagl/IOSurfaceSurfaceEAGL.mm:
1229
1230 2019-11-07  Dean Jackson  <dino@apple.com>
1231
1232         Add ANGLE backend for iOS device
1233         https://bugs.webkit.org/show_bug.cgi?id=202159
1234         <rdar://57000166>
1235
1236         Reviewed by Myles Maxfield.
1237
1238         Add an OpenGLES backend over EAGL for iOS to ANGLE.
1239
1240         This is basically a copy of all the files in
1241         libANGLE/renderer/gl/cgl into libANGLE/renderer/gl/eagl, then with
1242         modifications to make it work on iOS's OpenGL ES. Most notably,
1243         some format enums and the manner in which you bind an IOSurface to
1244         a GL texture are different.
1245
1246         This introduces a few places where we have to do a compile time
1247         switch for iOS, some of which might actually be applicable to
1248         other OpenGL ES backends.
1249
1250         The biggest missing piece is support for the iOS simulator. At the moment
1251         this backend relies on an IOSurface binding as a rendering target.
1252         But the iOS Simulator does not have the required ability to have a
1253         GL ES texture backed by an IOSurface.
1254
1255         The WindowSurfaceEAGL code is incomplete, but was not necessary
1256         in order to get WebGL operational. And even if you are using ANGLE
1257         directly, you can have the client code render into a CALayer without
1258         going through the WindowSurface.
1259
1260         * ANGLE.xcodeproj/project.pbxproj:
1261         * include/EGL/eglext_angle.h:
1262         * src/common/PackedEnums.cpp:
1263         (egl_gl::EGLTextureTargetToTextureType):
1264         * src/common/platform.h:
1265         * src/gpu_info_util/SystemInfo_ios.cpp: Added.
1266         (angle::GetSystemInfo):
1267         * src/gpu_info_util/SystemInfo_macos.cpp: Renamed from Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo_mac.cpp.
1268         (angle::GetSystemInfo):
1269         * src/libANGLE/Caps.h:
1270         * src/libANGLE/Display.cpp:
1271         * src/libANGLE/formatutils.cpp:
1272         (gl::BuildInternalFormatInfoMap):
1273         * src/libANGLE/renderer/gl/cgl/DeviceCGL.cpp:
1274         * src/libANGLE/renderer/gl/cgl/DisplayCGL.mm:
1275         * src/libANGLE/renderer/gl/cgl/IOSurfaceSurfaceCGL.cpp:
1276         (rx::IOSurfaceSurfaceCGL::bindTexImage):
1277         * src/libANGLE/renderer/gl/cgl/PbufferSurfaceCGL.cpp:
1278         * src/libANGLE/renderer/gl/cgl/RendererCGL.cpp:
1279         * src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.mm:
1280         * src/libANGLE/renderer/gl/eagl/ContextEAGL.cpp: Added.
1281         (rx::ContextEAGL::ContextEAGL):
1282         * src/libANGLE/renderer/gl/eagl/ContextEAGL.h: Added.
1283         * src/libANGLE/renderer/gl/eagl/DeviceEAGL.cpp: Added.
1284         (rx::DeviceEAGL::DeviceEAGL):
1285         (rx::DeviceEAGL::~DeviceEAGL):
1286         (rx::DeviceEAGL::initialize):
1287         (rx::DeviceEAGL::getAttribute):
1288         (rx::DeviceEAGL::getType):
1289         (rx::DeviceEAGL::generateExtensions const):
1290         * src/libANGLE/renderer/gl/eagl/DeviceEAGL.h: Added.
1291         * src/libANGLE/renderer/gl/eagl/DisplayEAGL.h: Added.
1292         * src/libANGLE/renderer/gl/eagl/DisplayEAGL.mm: Added.
1293         (rx::FunctionsGLEAGL::FunctionsGLEAGL):
1294         (rx::DisplayEAGL::DisplayEAGL):
1295         (rx::DisplayEAGL::~DisplayEAGL):
1296         (rx::DisplayEAGL::initialize):
1297         (rx::DisplayEAGL::terminate):
1298         (rx::DisplayEAGL::createWindowSurface):
1299         (rx::DisplayEAGL::createPbufferSurface):
1300         (rx::DisplayEAGL::createPbufferFromClientBuffer):
1301         (rx::DisplayEAGL::createPixmapSurface):
1302         (rx::DisplayEAGL::createContext):
1303         (rx::DisplayEAGL::createDevice):
1304         (rx::DisplayEAGL::generateConfigs):
1305         (rx::DisplayEAGL::testDeviceLost):
1306         (rx::DisplayEAGL::restoreLostDevice):
1307         (rx::DisplayEAGL::isValidNativeWindow const):
1308         (rx::DisplayEAGL::validateClientBuffer const):
1309         (rx::DisplayEAGL::getVendorString const):
1310         (rx::DisplayEAGL::getEAGLContext const):
1311         (rx::DisplayEAGL::getEAGLPixelFormat const):
1312         (rx::DisplayEAGL::generateExtensions const):
1313         (rx::DisplayEAGL::generateCaps const):
1314         (rx::DisplayEAGL::waitClient):
1315         (rx::DisplayEAGL::waitNative):
1316         (rx::DisplayEAGL::getMaxSupportedESVersion const):
1317         (rx::DisplayEAGL::makeCurrentSurfaceless):
1318         (rx::WorkerContextEAGL::WorkerContextEAGL):
1319         (rx::WorkerContextEAGL::~WorkerContextEAGL):
1320         (rx::WorkerContextEAGL::makeCurrent):
1321         (rx::WorkerContextEAGL::unmakeCurrent):
1322         (rx::DisplayEAGL::createWorkerContext):
1323         (rx::DisplayEAGL::initializeFrontendFeatures const):
1324         (rx::DisplayEAGL::populateFeatureList):
1325         * src/libANGLE/renderer/gl/eagl/IOSurfaceSurfaceEAGL.h: Added.
1326         * src/libANGLE/renderer/gl/eagl/IOSurfaceSurfaceEAGL.mm: Copied from Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/cgl/IOSurfaceSurfaceCGL.cpp.
1327         (rx::IOSurfaceSurfaceEAGL::IOSurfaceSurfaceEAGL):
1328         (rx::IOSurfaceSurfaceEAGL::~IOSurfaceSurfaceEAGL):
1329         (rx::IOSurfaceSurfaceEAGL::initialize):
1330         (rx::IOSurfaceSurfaceEAGL::makeCurrent):
1331         (rx::IOSurfaceSurfaceEAGL::unMakeCurrent):
1332         (rx::IOSurfaceSurfaceEAGL::swap):
1333         (rx::IOSurfaceSurfaceEAGL::postSubBuffer):
1334         (rx::IOSurfaceSurfaceEAGL::querySurfacePointerANGLE):
1335         (rx::IOSurfaceSurfaceEAGL::bindTexImage):
1336         (rx::IOSurfaceSurfaceEAGL::releaseTexImage):
1337         (rx::IOSurfaceSurfaceEAGL::setSwapInterval):
1338         (rx::IOSurfaceSurfaceEAGL::getWidth const):
1339         (rx::IOSurfaceSurfaceEAGL::getHeight const):
1340         (rx::IOSurfaceSurfaceEAGL::isPostSubBufferSupported const):
1341         (rx::IOSurfaceSurfaceEAGL::getSwapBehavior const):
1342         (rx::IOSurfaceSurfaceEAGL::validateAttributes):
1343         (rx::IOSurfaceFramebuffer::IOSurfaceFramebuffer):
1344         (rx::IOSurfaceSurfaceEAGL::createDefaultFramebuffer):
1345         (rx::IOSurfaceSurfaceEAGL::initializeAlphaChannel):
1346         (rx::IOSurfaceSurfaceEAGL::hasEmulatedAlphaChannel const):
1347         * src/libANGLE/renderer/gl/eagl/PbufferSurfaceEAGL.cpp: Copied from Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/cgl/PbufferSurfaceCGL.cpp.
1348         (rx::PbufferSurfaceEAGL::PbufferSurfaceEAGL):
1349         (rx::PbufferSurfaceEAGL::~PbufferSurfaceEAGL):
1350         (rx::PbufferSurfaceEAGL::initialize):
1351         (rx::PbufferSurfaceEAGL::makeCurrent):
1352         (rx::PbufferSurfaceEAGL::swap):
1353         (rx::PbufferSurfaceEAGL::postSubBuffer):
1354         (rx::PbufferSurfaceEAGL::querySurfacePointerANGLE):
1355         (rx::PbufferSurfaceEAGL::bindTexImage):
1356         (rx::PbufferSurfaceEAGL::releaseTexImage):
1357         (rx::PbufferSurfaceEAGL::setSwapInterval):
1358         (rx::PbufferSurfaceEAGL::getWidth const):
1359         (rx::PbufferSurfaceEAGL::getHeight const):
1360         (rx::PbufferSurfaceEAGL::isPostSubBufferSupported const):
1361         (rx::PbufferSurfaceEAGL::getSwapBehavior const):
1362         (rx::PbufferSurfaceEAGL::createDefaultFramebuffer):
1363         * src/libANGLE/renderer/gl/eagl/PbufferSurfaceEAGL.h: Added.
1364         * src/libANGLE/renderer/gl/eagl/RendererEAGL.cpp: Added.
1365         (rx::RendererEAGL::RendererEAGL):
1366         (rx::RendererEAGL::~RendererEAGL):
1367         (rx::RendererEAGL::createWorkerContext):
1368         * src/libANGLE/renderer/gl/eagl/RendererEAGL.h: Added.
1369         * src/libANGLE/renderer/gl/eagl/WindowSurfaceEAGL.h: Added.
1370         * src/libANGLE/renderer/gl/eagl/WindowSurfaceEAGL.mm: Copied from Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.mm.
1371         (-[WebSwapLayer initWithSharedState:withContext:withFunctions:]):
1372         (-[WebSwapLayer display]):
1373         (rx::WindowSurfaceEAGL::WindowSurfaceEAGL):
1374         (rx::WindowSurfaceEAGL::~WindowSurfaceEAGL):
1375         (rx::WindowSurfaceEAGL::initialize):
1376         (rx::WindowSurfaceEAGL::makeCurrent):
1377         (rx::WindowSurfaceEAGL::swap):
1378         (rx::WindowSurfaceEAGL::postSubBuffer):
1379         (rx::WindowSurfaceEAGL::querySurfacePointerANGLE):
1380         (rx::WindowSurfaceEAGL::bindTexImage):
1381         (rx::WindowSurfaceEAGL::releaseTexImage):
1382         (rx::WindowSurfaceEAGL::setSwapInterval):
1383         (rx::WindowSurfaceEAGL::getWidth const):
1384         (rx::WindowSurfaceEAGL::getHeight const):
1385         (rx::WindowSurfaceEAGL::isPostSubBufferSupported const):
1386         (rx::WindowSurfaceEAGL::getSwapBehavior const):
1387         (rx::WindowSurfaceEAGL::createDefaultFramebuffer):
1388         * src/libANGLE/renderer/gl/renderergl_utils.cpp:
1389         (rx::nativegl_gl::GenerateCaps):
1390         * src/libANGLE/validationES2.cpp:
1391         (gl::ValidateFramebufferTexture2D):
1392         * src/libGLESv2/entry_points_egl_ext.cpp:
1393
1394 2019-11-06  Dean Jackson  <dino@apple.com>
1395
1396         [ANGLE] IOSurfaceSurfaceCGL has format and internalFormat flipped
1397         https://bugs.webkit.org/show_bug.cgi?id=203911
1398         <rdar://problem/56954291>
1399
1400         Reviewed by Simon Fraser.
1401
1402         Fix a typo where internalFormat and format are used in the
1403         wrong order. The table of formats also had them backwards.
1404
1405         * src/libANGLE/renderer/gl/cgl/IOSurfaceSurfaceCGL.cpp:
1406         (rx::IOSurfaceSurfaceCGL::bindTexImage):
1407
1408 2019-10-29  Dean Jackson  <dino@apple.com>
1409
1410         [ANGLE] Put Apple platform compilation guards in a better place
1411         https://bugs.webkit.org/show_bug.cgi?id=203590
1412         <rdar://problem/56722345>
1413
1414         Reviewed by Simon Fraser.
1415
1416         Move the #define to platform.h.
1417
1418         * src/common/platform.h:
1419         * src/libANGLE/renderer/gl/cgl/DeviceCGL.cpp:
1420         * src/libANGLE/renderer/gl/cgl/DisplayCGL.mm:
1421         * src/libANGLE/renderer/gl/cgl/IOSurfaceSurfaceCGL.cpp:
1422         * src/libANGLE/renderer/gl/cgl/PbufferSurfaceCGL.cpp:
1423         * src/libANGLE/renderer/gl/cgl/RendererCGL.cpp:
1424         * src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.mm:
1425
1426 2019-10-29  Dean Jackson  <dino@apple.com>
1427
1428         [ANGLE] Window Server blocking stops single GPU systems from creating a CGLPixelFormat
1429         https://bugs.webkit.org/show_bug.cgi?id=203522
1430         <rdar://problem/56685302>
1431
1432         Reviewed by Alex Christensen.
1433
1434         The Web Content Process blocks access to the Window Server. For that reason, we
1435         must create all CGLPixelFormats with the "offline renderer" flag, even if we're
1436         not on a dual-GPU system.
1437
1438         * src/libANGLE/renderer/gl/cgl/DisplayCGL.mm: Always enable kCGLPFAAllowOfflineRenderers.
1439         (rx::DisplayCGL::initialize):
1440
1441 2019-10-23  Dean Jackson  <dino@apple.com>
1442
1443         [ANGLE] Improve compile-time macOS guards and avoid ObjC if possible
1444         https://bugs.webkit.org/show_bug.cgi?id=203343
1445
1446         Reviewed by Simon Fraser.
1447
1448         Use the more official compile-time detection of Apple platforms, so that
1449         it will be easier to differentiate between macOS and iOS. Also move some
1450         .mm files to .cpp where possible.
1451
1452         * ANGLE.xcodeproj/project.pbxproj:
1453         * src/gpu_info_util/SystemInfo_mac.cpp: Renamed from Source/ThirdParty/ANGLE/src/gpu_info_util/SystemInfo_mac.mm.
1454         (angle::GetSystemInfo):
1455         * src/libANGLE/renderer/gl/cgl/DeviceCGL.cpp:
1456         * src/libANGLE/renderer/gl/cgl/DisplayCGL.mm:
1457         * src/libANGLE/renderer/gl/cgl/IOSurfaceSurfaceCGL.cpp: Renamed from Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/cgl/IOSurfaceSurfaceCGL.mm.
1458         * src/libANGLE/renderer/gl/cgl/PbufferSurfaceCGL.cpp: Renamed from Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/cgl/PbufferSurfaceCGL.mm.
1459         * src/libANGLE/renderer/gl/cgl/RendererCGL.cpp: Renamed from Source/ThirdParty/ANGLE/src/libANGLE/renderer/gl/cgl/RendererCGL.mm.
1460         * src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.mm:
1461
1462 2019-10-23  Dean Jackson  <dino@apple.com>
1463
1464         Don't try to compile .inc files in ANGLE
1465         https://bugs.webkit.org/show_bug.cgi?id=203315
1466
1467         Reviewed by Simon Fraser.
1468
1469         These are headers, not files we need to compile directly.
1470
1471         * ANGLE.xcodeproj/project.pbxproj:
1472
1473 2019-10-15  Brent Fulgham  <bfulgham@apple.com>
1474
1475         Unreviewed build fix after r251018
1476
1477
1478         * PlatformFTW.cmake: Add missing dxgi library.
1479
1480 2019-10-12  Stephan Szabo  <stephan.szabo@sony.com>
1481
1482         Regression (251018): Wincairo build broken: unresolved external symbol
1483         https://bugs.webkit.org/show_bug.cgi?id=202879
1484
1485         Reviewed by Alex Christensen.
1486
1487         * PlatformWin.cmake: Add dxgi library for CreateDXGIFactory1
1488
1489 2019-10-11  Kenneth Russell  <kbr@chromium.org>
1490
1491         USE_ANGLE=1 build broken with last ANGLE roll
1492         https://bugs.webkit.org/show_bug.cgi?id=202872
1493
1494         Add FrameCapture_mock.cpp to Xcode and CMake builds.
1495
1496         Reviewed by Alex Christensen.
1497
1498         * ANGLE.xcodeproj/project.pbxproj:
1499         * CMakeLists.txt:
1500         * GLESv2.cmake:
1501
1502 2019-10-11  Kenneth Russell  <kbr@chromium.org>
1503
1504         Roll ANGLE for ETC extensions and EGL_ANGLE_device_cgl
1505         https://bugs.webkit.org/show_bug.cgi?id=202780
1506
1507         Roll ANGLE to c5e0ac757a112a24a0118d434e652fd7b558e6a8 via new
1508         update-angle.sh script.
1509
1510         Reviewed by Alex Christensen.
1511
1512         * .gitignore:
1513         * ANGLE.plist:
1514         * ANGLE.xcodeproj/project.pbxproj:
1515         * BUILD.gn:
1516         * CMakeLists.txt:
1517         * CONTRIBUTORS:
1518         * DEPS:
1519         * GLESv2.cmake:
1520         * OWNERS:
1521         * PRESUBMIT.py:
1522         (_CheckExportValidity):
1523         (CheckChangeOnUpload):
1524         (CheckChangeOnCommit):
1525         * README.md:
1526         * android/angle_apk.gni:
1527         * build_overrides/angle.gni:
1528         * changes.diff:
1529         * doc/DevSetup.md:
1530         * dotfile_settings.gni:
1531         * extensions/ANGLE_compressed_texture_etc.txt: Added.
1532         * extensions/EGL_ANGLE_device_cgl.txt: Added.
1533         * extensions/EGL_ANGLE_feature_control.txt:
1534         * extensions/EGL_ANGLE_platform_angle_d3d11on12.txt: Added.
1535         * extensions/EGL_ANGLE_platform_angle_device_type_swiftshader.txt: Added.
1536         * extensions/EGL_ANGLE_platform_angle_metal.txt: Added.
1537         * gni/angle.gni:
1538         * include/EGL/eglext_angle.h:
1539         * include/platform/Feature.h:
1540         (angle::Feature::Feature):
1541         * include/platform/FeaturesD3D.h:
1542         * include/platform/FeaturesGL.h:
1543         * include/platform/FeaturesVk.h:
1544         * include/platform/FrontendFeatures.h:
1545         * samples/WindowTest/WindowTest.cpp:
1546         * samples/gles1/DrawTexture.cpp:
1547         * samples/multi_texture/MultiTexture.cpp:
1548         * samples/multiple_draw_buffers/MultipleDrawBuffers.cpp:
1549         * samples/particle_system/ParticleSystem.cpp:
1550         * samples/sample_util/SampleApplication.cpp:
1551         (SampleApplication::SampleApplication):
1552         * samples/sample_util/SampleApplication.h:
1553         * scripts/code_generation_hashes/ANGLE_format.json:
1554         * scripts/code_generation_hashes/ANGLE_load_functions_table.json:
1555         * scripts/code_generation_hashes/D3D11_format.json:
1556         * scripts/code_generation_hashes/DXGI_format.json:
1557         * scripts/code_generation_hashes/GL_EGL_WGL_loader.json:
1558         * scripts/code_generation_hashes/GL_EGL_entry_points.json:
1559         * scripts/code_generation_hashes/OpenGL_dispatch_table.json:
1560         * scripts/code_generation_hashes/Static_builtins.json:
1561         * scripts/code_generation_hashes/Vulkan_format.json:
1562         * scripts/code_generation_hashes/Vulkan_internal_shader_programs.json:
1563         * scripts/code_generation_hashes/Vulkan_mandatory_format_support_table.json:
1564         * scripts/code_generation_hashes/proc_table.json:
1565         * scripts/export_targets.py:
1566         (has_all_includes):
1567         * scripts/generate_entry_points.py:
1568         (get_resource_id_types):
1569         (format_resource_id_types):
1570         (write_capture_helper_header):
1571         (get_resource_id_type_from_param_type):
1572         (format_param_type_to_resource_id_type_case):
1573         (format_param_type_resource_id_cases):
1574         (format_resource_id_type_name_case):
1575         (write_capture_helper_source):
1576         * scripts/generate_vulkan_layers_json.py:
1577         (main):
1578         * scripts/registry_xml.py:
1579         * src/common/PackedEnums.cpp:
1580         (gl::operator<<):
1581         * src/common/PackedEnums.h:
1582         (angle::EnumSize<E>):
1583         (gl::FromGLenum<VertexAttribType>):
1584         (gl::ToGLenum):
1585         (gl::ValueEquals):
1586         (gl::operator==):
1587         (gl::operator!=):
1588         * src/common/android_util.cpp:
1589         (angle::android::NativePixelFormatToGLInternalFormat):
1590         * src/common/angleutils.h:
1591         * src/common/debug.h:
1592         * src/common/platform.h:
1593         * src/common/system_utils_winuwp.cpp: Added.
1594         (angle::SetEnvironmentVar):
1595         (angle::GetEnvironmentVar):
1596         (angle::GetSharedLibraryExtension):
1597         (angle::GetPathSeparator):
1598         (angle::GetCurrentTime):
1599         (angle::UwpLibrary::UwpLibrary):
1600         (angle::OpenSharedLibrary):
1601         (angle::IsDebuggerAttached):
1602         (angle::BreakDebugger):
1603         * src/common/tls.cpp:
1604         (CreateTLSIndex):
1605         (DestroyTLSIndex):
1606         (SetTLSValue):
1607         (GetTLSValue):
1608         * src/common/tls.h:
1609         * src/common/utilities.cpp:
1610         (gl::StripLastArrayIndex):
1611         * src/common/utilities.h:
1612         * src/compiler.gni:
1613         * src/compiler/translator/Compiler.cpp:
1614         (sh::TCompiler::compileTreeImpl):
1615         * src/compiler/translator/ImmutableString_ESSL_autogen.cpp:
1616         * src/compiler/translator/ImmutableString_autogen.cpp:
1617         * src/compiler/translator/IntermNode.h:
1618         (sh::TIntermPreprocessorDirective::getDirective const): Deleted.
1619         (sh::TIntermPreprocessorDirective::getCommand const): Deleted.
1620         * src/compiler/translator/ParseContext.cpp:
1621         (sh::TParseContext::TParseContext):
1622         (sh::TParseContext::checkIsValidArraySize):
1623         (sh::TParseContext::parseFunctionDeclarator):
1624         * src/compiler/translator/ParseContext.h:
1625         (sh::TParseContext::getOutputType const):
1626         * src/compiler/translator/ShaderVars.cpp:
1627         (sh::ShaderVariable::operator=):
1628         * src/compiler/translator/SymbolTable.cpp:
1629         (sh::TSymbolTable::setGlInArraySize):
1630         (sh::TSymbolTable::gl_FragData const):
1631         (sh::TSymbolTable::gl_SecondaryFragDataEXT const):
1632         (sh::SymbolRule::get const):
1633         (sh::FindMangledBuiltIn):
1634         (sh::UnmangledEntry::matches const):
1635         * src/compiler/translator/SymbolTable.h:
1636         (sh::SymbolRule::SymbolRule):
1637         (sh::SymbolRule::Get):
1638         (sh::UnmangledEntry::UnmangledEntry):
1639         (sh::SymbolEntry::SymbolEntry): Deleted.
1640         * src/compiler/translator/SymbolTable_ESSL_autogen.cpp:
1641         (sh::BuiltInVariable::angle_BaseInstance):
1642         (sh::BuiltInVariable::angle_BaseVertex):
1643         (sh::BuiltInVariable::gl_BaseInstance):
1644         (sh::BuiltInVariable::gl_BaseVertex):
1645         (sh::BuiltInVariable::gl_DrawID):
1646         (sh::BuiltInVariable::gl_FragColor):
1647         (sh::BuiltInVariable::gl_FragCoord):
1648         (sh::BuiltInVariable::gl_FragDepth):
1649         (sh::BuiltInVariable::gl_FrontFacing):
1650         (sh::BuiltInVariable::gl_GlobalInvocationID):
1651         (sh::BuiltInVariable::gl_InstanceID):
1652         (sh::BuiltInVariable::gl_InstanceIndex):
1653         (sh::BuiltInVariable::gl_InvocationID):
1654         (sh::BuiltInVariable::gl_LastFragColor):
1655         (sh::BuiltInVariable::gl_LastFragColorARM):
1656         (sh::BuiltInVariable::gl_Layer):
1657         (sh::BuiltInVariable::gl_LayerGS):
1658         (sh::BuiltInVariable::gl_LayerVS):
1659         (sh::BuiltInVariable::gl_LocalInvocationID):
1660         (sh::BuiltInVariable::gl_LocalInvocationIndex):
1661         (sh::BuiltInVariable::gl_NumWorkGroups):
1662         (sh::BuiltInVariable::gl_PointCoord):
1663         (sh::BuiltInVariable::gl_PointSize):
1664         (sh::BuiltInVariable::gl_Position):
1665         (sh::BuiltInVariable::gl_PrimitiveID):
1666         (sh::BuiltInVariable::gl_PrimitiveIDGS):
1667         (sh::BuiltInVariable::gl_PrimitiveIDIn):
1668         (sh::BuiltInVariable::gl_SecondaryFragColorEXT):
1669         (sh::BuiltInVariable::gl_VertexID):
1670         (sh::BuiltInVariable::gl_VertexIndex):
1671         (sh::BuiltInVariable::gl_ViewID_OVR):
1672         (sh::BuiltInVariable::gl_ViewportIndex):
1673         (sh::BuiltInVariable::gl_WorkGroupID):
1674         (sh::BuiltInVariable::gl_WorkGroupSize):
1675         (sh::TSymbolTable::initializeBuiltInVariables):
1676         (sh::TSymbolTable::findBuiltIn const):
1677         (sh::TSymbolTable::isUnmangledBuiltInName const):
1678         (sh::TSymbolTable::getSymbol const): Deleted.
1679         (sh::TSymbolTable::getUnmangled const): Deleted.
1680         (sh::TSymbolTable::getUnmangledBuiltInForShaderVersion): Deleted.
1681         * src/compiler/translator/SymbolTable_autogen.cpp:
1682         (sh::BuiltInVariable::angle_BaseInstance):
1683         (sh::BuiltInVariable::angle_BaseVertex):
1684         (sh::BuiltInVariable::gl_BaseInstance):
1685         (sh::BuiltInVariable::gl_BaseVertex):
1686         (sh::BuiltInVariable::gl_DrawID):
1687         (sh::BuiltInVariable::gl_FragColor):
1688         (sh::BuiltInVariable::gl_FragCoord):
1689         (sh::BuiltInVariable::gl_FragDepth):
1690         (sh::BuiltInVariable::gl_FrontFacing):
1691         (sh::BuiltInVariable::gl_GlobalInvocationID):
1692         (sh::BuiltInVariable::gl_InstanceID):
1693         (sh::BuiltInVariable::gl_InstanceIndex):
1694         (sh::BuiltInVariable::gl_InvocationID):
1695         (sh::BuiltInVariable::gl_LastFragColor):
1696         (sh::BuiltInVariable::gl_LastFragColorARM):
1697         (sh::BuiltInVariable::gl_Layer):
1698         (sh::BuiltInVariable::gl_LayerGS):
1699         (sh::BuiltInVariable::gl_LayerVS):
1700         (sh::BuiltInVariable::gl_LocalInvocationID):
1701         (sh::BuiltInVariable::gl_LocalInvocationIndex):
1702         (sh::BuiltInVariable::gl_NumWorkGroups):
1703         (sh::BuiltInVariable::gl_PointCoord):
1704         (sh::BuiltInVariable::gl_PointSize):
1705         (sh::BuiltInVariable::gl_Position):
1706         (sh::BuiltInVariable::gl_PrimitiveID):
1707         (sh::BuiltInVariable::gl_PrimitiveIDGS):
1708         (sh::BuiltInVariable::gl_PrimitiveIDIn):
1709         (sh::BuiltInVariable::gl_SecondaryFragColorEXT):
1710         (sh::BuiltInVariable::gl_VertexID):
1711         (sh::BuiltInVariable::gl_VertexIndex):
1712         (sh::BuiltInVariable::gl_ViewID_OVR):
1713         (sh::BuiltInVariable::gl_ViewportIndex):
1714         (sh::BuiltInVariable::gl_WorkGroupID):
1715         (sh::BuiltInVariable::gl_WorkGroupSize):
1716         (sh::TSymbolTable::initializeBuiltInVariables):
1717         (sh::TSymbolTable::findBuiltIn const):
1718         (sh::TSymbolTable::isUnmangledBuiltInName const):
1719         (sh::TSymbolTable::getSymbol const): Deleted.
1720         (sh::TSymbolTable::getUnmangled const): Deleted.
1721         (sh::TSymbolTable::getUnmangledBuiltInForShaderVersion): Deleted.
1722         * src/compiler/translator/SymbolTable_autogen.h:
1723         * src/compiler/translator/TranslatorVulkan.cpp:
1724         (sh::TranslatorVulkan::translate):
1725         * src/compiler/translator/gen_builtin_symbols.py:
1726         (get_shader_version_for_level):
1727         (GroupedList.__init__):
1728         (GroupedList.add_entry):
1729         (GroupedList.format_rule):
1730         (GroupedList):
1731         (GroupedList.format_rules):
1732         (GroupedList.get_rules):
1733         (GroupedList.get_names):
1734         (GroupedList.get_offsets):
1735         (GroupedList.update_arrays):
1736         (GroupedList.update_arrays.add_rule):
1737         (UnmangledGroupedList.add_entry):
1738         (UnmangledGroupedList.get_array):
1739         (define_constexpr_variable):
1740         (process_single_function_group):
1741         (process_function_group):
1742         (process_single_variable_group):
1743         (GroupedList.add_obj): Deleted.
1744         (GroupedList.get_array): Deleted.
1745         (UnmangledGroupedList.add_obj): Deleted.
1746         * src/feature_support_util/feature_support_util.cpp:
1747         * src/gpu_info_util/SystemInfo_win.cpp:
1748         (angle::GetSystemInfo):
1749         * src/image_util/loadimage.cpp:
1750         (angle::LoadD24S8ToD32F):
1751         (angle::LoadD32ToD32FX32):
1752         (angle::LoadD32ToD32F):
1753         * src/image_util/loadimage.h:
1754         * src/libANGLE/Buffer.cpp:
1755         (gl::Buffer::Buffer):
1756         * src/libANGLE/Buffer.h:
1757         * src/libANGLE/Caps.cpp:
1758         (gl::DetermineHalfFloatTextureFilteringSupport):
1759         (gl::DetermineFloatTextureFilteringSupport):
1760         (gl::Extensions::setTextureExtensionSupport):
1761         (gl::GetExtensionInfoMap):
1762         (egl::DisplayExtensions::getStrings const):
1763         (egl::DeviceExtensions::getStrings const):
1764         (egl::ClientExtensions::getStrings const):
1765         * src/libANGLE/Caps.h:
1766         * src/libANGLE/Constants.h:
1767         * src/libANGLE/Context.cpp:
1768         (gl::Context::Context):
1769         (gl::Context::initialize):
1770         (gl::Context::onDestroy):
1771         (gl::Context::bindImageTexture):
1772         (gl::Context::getQueryiv):
1773         (gl::Context::detachTexture):
1774         (gl::Context::generateSupportedExtensions const):
1775         (gl::Context::initCaps):
1776         (gl::Context::onSubjectStateChange):
1777         (gl::StateCache::updateActiveAttribsMask):
1778         (gl::StateCache::updateVertexAttribTypesValidation):
1779         * src/libANGLE/Context.h:
1780         * src/libANGLE/Device.cpp:
1781         (egl::Device::getAttribute):
1782         (egl::Device::getDevice): Deleted.
1783         * src/libANGLE/Device.h:
1784         * src/libANGLE/Display.cpp:
1785         (egl::Display::createContext):
1786         (egl::GenerateClientExtensions):
1787         (egl::Display::isValidNativeDisplay):
1788         (egl::Display::initializeFrontendFeatures):
1789         (egl::Display::queryStringi):
1790         * src/libANGLE/ErrorStrings.h:
1791         * src/libANGLE/Fence.h:
1792         * src/libANGLE/FrameCapture.cpp:
1793         (angle::ParamCapture::ParamCapture):
1794         (angle::ParamCapture::operator=):
1795         (angle::ParamBuffer::ParamBuffer):
1796         (angle::ParamBuffer::operator=):
1797         (angle::ParamBuffer::getParam):
1798         (angle::ParamBuffer::getParam const):
1799         (angle::ParamBuffer::addParam):
1800         (angle::ParamBuffer::addReturnValue):
1801         (angle::ParamBuffer::getClientArrayPointerParameter):
1802         (angle::CallCapture::CallCapture):
1803         (angle::CallCapture::operator=):
1804         (angle::CallCapture::name const):
1805         (angle::ReplayContext::ReplayContext):
1806         (angle::ReplayContext::~ReplayContext):
1807         (angle::FrameCapture::FrameCapture):
1808         (angle::FrameCapture::maybeCaptureClientData):
1809         (angle::FrameCapture::captureCall):
1810         (angle::FrameCapture::captureUpdateResourceIDs):
1811         (angle::FrameCapture::maybeUpdateResourceIDs):
1812         (angle::FrameCapture::captureClientArraySnapshot):
1813         (angle::FrameCapture::onEndFrame):
1814         (angle::DataCounters::getAndIncrement):
1815         (angle::FrameCapture::reset):
1816         (angle::CaptureGenHandlesImpl):
1817         (angle::WriteParamValueToStream<ParamType::TBufferID>):
1818         (angle::WriteParamValueToStream<ParamType::TFenceNVID>):
1819         (angle::WriteParamValueToStream<ParamType::TFramebufferID>):
1820         (angle::WriteParamValueToStream<ParamType::TMemoryObjectID>):
1821         (angle::WriteParamValueToStream<ParamType::TPathID>):
1822         (angle::WriteParamValueToStream<ParamType::TProgramPipelineID>):
1823         (angle::WriteParamValueToStream<ParamType::TQueryID>):
1824         (angle::WriteParamValueToStream<ParamType::TRenderbufferID>):
1825         (angle::WriteParamValueToStream<ParamType::TSamplerID>):
1826         (angle::WriteParamValueToStream<ParamType::TSemaphoreID>):
1827         (angle::WriteParamValueToStream<ParamType::TShaderProgramID>):
1828         (angle::WriteParamValueToStream<ParamType::TTextureID>):
1829         (angle::WriteParamValueToStream<ParamType::TTransformFeedbackID>):
1830         (angle::WriteParamValueToStream<ParamType::TVertexArrayID>):
1831         (angle::CallCapture::~CallCapture): Deleted.
1832         (angle::ParamBuffer::~ParamBuffer): Deleted.
1833         (angle::ParamCapture::~ParamCapture): Deleted.
1834         (angle::FrameCapture::~FrameCapture): Deleted.
1835         (angle::FrameCapture::anyClientArray const): Deleted.
1836         (angle::FrameCapture::saveCapturedFrameAsCpp): Deleted.
1837         (angle::FrameCapture::getAndIncrementCounter): Deleted.
1838         (angle::FrameCapture::writeStringPointerParamReplay): Deleted.
1839         (angle::FrameCapture::writeRenderbufferIDPointerParamReplay): Deleted.
1840         (angle::FrameCapture::writeBinaryParamReplay): Deleted.
1841         (angle::FrameCapture::writeCallReplay): Deleted.
1842         * src/libANGLE/FrameCapture.h:
1843         (angle::CaptureGenHandles):
1844         * src/libANGLE/FrameCapture_mock.cpp: Added.
1845         (angle::CallCapture::~CallCapture):
1846         (angle::ParamBuffer::~ParamBuffer):
1847         (angle::ParamCapture::~ParamCapture):
1848         (angle::FrameCapture::FrameCapture):
1849         (angle::FrameCapture::~FrameCapture):
1850         (angle::FrameCapture::onEndFrame):
1851         (angle::FrameCapture::replay):
1852         * src/libANGLE/Framebuffer.cpp:
1853         (gl::Framebuffer::formsRenderingFeedbackLoopWith const):
1854         (gl::Framebuffer::formsCopyingFeedbackLoopWith const):
1855         * src/libANGLE/Framebuffer.h:
1856         * src/libANGLE/FramebufferAttachment.cpp:
1857         (gl::FramebufferAttachment::getRedSize const):
1858         (gl::FramebufferAttachment::getGreenSize const):
1859         (gl::FramebufferAttachment::getBlueSize const):
1860         (gl::FramebufferAttachment::getAlphaSize const):
1861         (gl::FramebufferAttachment::getDepthSize const):
1862         (gl::FramebufferAttachment::getStencilSize const):
1863         * src/libANGLE/FramebufferAttachment.h:
1864         * src/libANGLE/GLES1State.cpp:
1865         (gl::GLES1State::getActiveAttributesMask const):
1866         * src/libANGLE/GLES1State.h:
1867         * src/libANGLE/ImageIndex.cpp:
1868         * src/libANGLE/ImageIndex.h:
1869         * src/libANGLE/MemoryObject.cpp:
1870         (gl::MemoryObject::MemoryObject):
1871         * src/libANGLE/MemoryObject.h:
1872         * src/libANGLE/MemoryProgramCache.cpp:
1873         * src/libANGLE/Program.cpp:
1874         (gl::ProgramBindings::bindLocation):
1875         (gl::ProgramBindings::getBindingByName const):
1876         (gl::ProgramBindings::getBinding const):
1877         (gl::ProgramBindings::begin const):
1878         (gl::ProgramBindings::end const):
1879         (gl::ProgramAliasedBindings::ProgramAliasedBindings):
1880         (gl::ProgramAliasedBindings::~ProgramAliasedBindings):
1881         (gl::ProgramAliasedBindings::bindLocation):
1882         (gl::ProgramAliasedBindings::getBindingByName const):
1883         (gl::ProgramAliasedBindings::getBinding const):
1884         (gl::ProgramAliasedBindings::begin const):
1885         (gl::ProgramAliasedBindings::end const):
1886         (gl::ProgramState::getAttributeLocation const):
1887         (gl::ProgramState::getFirstAttachedShaderStageType const):
1888         (gl::ProgramState::getLastAttachedShaderStageType const):
1889         (gl::Program::getFragmentInputBindingInfo const):
1890         (gl::Program::link):
1891         (gl::ProgramState::updateProgramInterfaceInputs):
1892         (gl::ProgramState::updateProgramInterfaceOutputs):
1893         (gl::Program::unlink):
1894         (gl::Program::getActiveAttribute const):
1895         (gl::Program::getActiveAttributeCount const):
1896         (gl::Program::getActiveAttributeMaxLength const):
1897         (gl::Program::getAttributes const):
1898         (gl::Program::getInputResource const):
1899         (gl::Program::getInputResourceIndex const):
1900         (gl::Program::getResourceMaxNameSize const):
1901         (gl::Program::getInputResourceMaxNameSize const):
1902         (gl::Program::getOutputResourceMaxNameSize const):
1903         (gl::Program::getResourceLocation const):
1904         (gl::Program::getInputResourceLocation const):
1905         (gl::Program::getOutputResourceLocation const):
1906         (gl::Program::getOutputResourceIndex const):
1907         (gl::Program::getResourceName const):
1908         (gl::Program::getInputResourceName const):
1909         (gl::Program::getOutputResourceName const):
1910         (gl::Program::getUniformResourceName const):
1911         (gl::Program::getBufferVariableResourceName const):
1912         (gl::Program::getOutputResource const):
1913         (gl::Program::getUniformLocationBindings const):
1914         (gl::Program::linkUniforms):
1915         (gl::Program::linkAttributes):
1916         (gl::Program::linkValidateGlobalNames const):
1917         (gl::Program::getMergedVaryings const):
1918         (gl::Program::linkOutputVariables):
1919         (gl::Program::serialize const):
1920         (gl::Program::deserialize):
1921         * src/libANGLE/Program.h:
1922         (gl::ProgramVaryingRef::get const):
1923         * src/libANGLE/ProgramLinkedResources.cpp:
1924         (gl::UniformLinker::link):
1925         (gl::UniformLinker::indexUniforms):
1926         (gl::UniformLinker::gatherUniformLocationsAndCheckConflicts):
1927         * src/libANGLE/ProgramLinkedResources.h:
1928         * src/libANGLE/ProgramPipeline.cpp:
1929         (gl::ProgramPipeline::ProgramPipeline):
1930         * src/libANGLE/ProgramPipeline.h:
1931         * src/libANGLE/Query.cpp:
1932         (gl::Query::Query):
1933         * src/libANGLE/Query.h:
1934         * src/libANGLE/RefCountObject.h:
1935         (gl::RefCountObject::RefCountObject):
1936         (gl::RefCountObject::id const):
1937         (gl::BindingPointer::id const):
1938         * src/libANGLE/Renderbuffer.cpp:
1939         (gl::Renderbuffer::Renderbuffer):
1940         (gl::Renderbuffer::getId const):
1941         * src/libANGLE/Renderbuffer.h:
1942         * src/libANGLE/Sampler.cpp:
1943         (gl::Sampler::Sampler):
1944         * src/libANGLE/Sampler.h:
1945         * src/libANGLE/Semaphore.cpp:
1946         (gl::Semaphore::Semaphore):
1947         * src/libANGLE/Semaphore.h:
1948         * src/libANGLE/Shader.cpp:
1949         (gl::Shader::resolveCompile):
1950         (gl::Shader::getTransformFeedbackVaryingMappedName):
1951         * src/libANGLE/State.cpp:
1952         (gl::State::getSamplerTextureId const):
1953         (gl::State::detachTexture):
1954         (gl::State::detachSampler):
1955         (gl::State::detachRenderbuffer):
1956         (gl::State::removeTransformFeedbackBinding):
1957         (gl::State::getActiveQueryId const):
1958         (gl::State::detachBuffer):
1959         (gl::State::getIntegerv):
1960         (gl::State::getIntegeri_v):
1961         (gl::State::syncImages):
1962         (gl::State::onImageStateChange):
1963         * src/libANGLE/State.h:
1964         (gl::State::getSamplerId const):
1965         (gl::State::getRenderbufferId const):
1966         * src/libANGLE/Texture.cpp:
1967         (gl::Texture::Texture):
1968         (gl::Texture::setStorage):
1969         (gl::Texture::getId const):
1970         * src/libANGLE/Texture.h:
1971         * src/libANGLE/TransformFeedback.cpp:
1972         (gl::TransformFeedback::TransformFeedback):
1973         (gl::TransformFeedback::detachBuffer):
1974         * src/libANGLE/TransformFeedback.h:
1975         * src/libANGLE/VaryingPacking.cpp:
1976         (gl::VaryingPacking::collectAndPackUserVaryings):
1977         (gl::VaryingPacking::packUserVaryings):
1978         * src/libANGLE/VertexArray.cpp:
1979         (gl::VertexArray::detachBuffer):
1980         (gl::VertexArray::bindVertexBufferImpl):
1981         * src/libANGLE/VertexArray.h:
1982         * src/libANGLE/capture_gles_2_0_params.cpp:
1983         (gl::CaptureDeleteBuffers_buffersPacked):
1984         (gl::CaptureDeleteFramebuffers_framebuffersPacked):
1985         (gl::CaptureDeleteTextures_texturesPacked):
1986         (gl::CaptureGenBuffers_buffersPacked):
1987         (gl::CaptureGenFramebuffers_framebuffersPacked):
1988         (gl::CaptureGenRenderbuffers_renderbuffersPacked):
1989         (gl::CaptureGenTextures_texturesPacked):
1990         (gl::CaptureShaderSource_string):
1991         * src/libANGLE/capture_gles_3_0_params.cpp:
1992         (gl::CaptureDeleteQueries_idsPacked):
1993         (gl::CaptureDeleteSamplers_samplersPacked):
1994         (gl::CaptureDeleteTransformFeedbacks_idsPacked):
1995         (gl::CaptureDeleteVertexArrays_arraysPacked):
1996         (gl::CaptureGenQueries_idsPacked):
1997         (gl::CaptureGenSamplers_samplersPacked):
1998         (gl::CaptureGenTransformFeedbacks_idsPacked):
1999         (gl::CaptureGenVertexArrays_arraysPacked):
2000         * src/libANGLE/capture_gles_3_1_params.cpp:
2001         (gl::CaptureDeleteProgramPipelines_pipelinesPacked):
2002         (gl::CaptureGenProgramPipelines_pipelinesPacked):
2003         * src/libANGLE/capture_gles_ext_params.cpp:
2004         (gl::CaptureDeleteQueriesEXT_idsPacked):
2005         (gl::CaptureGenQueriesEXT_idsPacked):
2006         * src/libANGLE/features.h:
2007         * src/libANGLE/formatutils.cpp:
2008         (gl::UnsizedHalfFloatOESRGBATextureAttachmentSupport):
2009         (gl::BuildInternalFormatInfoMap):
2010         (gl::InternalFormat::computeDepthPitch const):
2011         (gl::GetVertexFormatID):
2012         (gl::GetVertexFormatFromID):
2013         (gl::GetVertexFormatSize):
2014         * src/libANGLE/frame_capture_utils_autogen.cpp:
2015         (angle::GetResourceIDTypeFromParamType):
2016         (angle::GetResourceIDTypeName):
2017         * src/libANGLE/frame_capture_utils_autogen.h:
2018         * src/libANGLE/queryutils.cpp:
2019         (gl::GetBufferVariableResourceProperty):
2020         (gl::QueryProgramResourceLocation):
2021         (gl::QueryProgramResourceiv):
2022         (egl::QueryContextAttrib):
2023         * src/libANGLE/renderer/DeviceImpl.h:
2024         * src/libANGLE/renderer/Format.h:
2025         (angle::Format::isVertexTypeHalfFloat const):
2026         * src/libANGLE/renderer/FormatID_autogen.h:
2027         * src/libANGLE/renderer/Format_table_autogen.cpp:
2028         (angle::Format::InternalFormatToID):
2029         * src/libANGLE/renderer/angle_format.py:
2030         (gl_format_channels):
2031         (get_vertex_copy_function):
2032         * src/libANGLE/renderer/angle_format_map.json:
2033         * src/libANGLE/renderer/copyvertex.h:
2034         * src/libANGLE/renderer/copyvertex.inc.h:
2035         (rx::CopyTo32FVertexData):
2036         (rx::CopyXYZ10ToXYZW32FVertexData):
2037         (rx::CopyW2XYZ10ToXYZW32FVertexData):
2038         * src/libANGLE/renderer/d3d/DeviceD3D.cpp:
2039         (rx::DeviceD3D::getAttribute):
2040         (rx::DeviceD3D::getDevice): Deleted.
2041         * src/libANGLE/renderer/d3d/DeviceD3D.h:
2042         * src/libANGLE/renderer/d3d/HLSLCompiler.cpp:
2043         (rx::HLSLCompiler::ensureInitialized):
2044         (rx::HLSLCompiler::compileToBinary):
2045         * src/libANGLE/renderer/d3d/ProgramD3D.cpp:
2046         (rx::ProgramD3D::getVertexExecutableForCachedInputLayout):
2047         * src/libANGLE/renderer/d3d/RendererD3D.cpp:
2048         (rx::DefaultGLErrorCode):
2049         * src/libANGLE/renderer/d3d/ShaderD3D.cpp:
2050         (rx::ShaderD3D::compile):
2051         * src/libANGLE/renderer/d3d/d3d11/Buffer11.cpp:
2052         (rx::Buffer11::getConstantBufferRange):
2053         (rx::Buffer11::NativeStorage::FillBufferDesc):
2054         * src/libANGLE/renderer/d3d/d3d11/Context11.cpp:
2055         (rx::Context11::drawArrays):
2056         (rx::Context11::drawArraysInstanced):
2057         (rx::Context11::drawArraysInstancedBaseInstance):
2058         (rx::Context11::drawArraysIndirect):
2059         * src/libANGLE/renderer/d3d/d3d11/DebugAnnotator11.cpp:
2060         (rx::DebugAnnotator11::initialize):
2061         * src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp:
2062         (rx::Renderer11::Renderer11):
2063         (rx::Renderer11::initialize):
2064         (rx::Renderer11::callD3D11On12CreateDevice):
2065         (rx::Renderer11::initializeD3DDevice):
2066         (rx::Renderer11::generateDisplayExtensions const):
2067         (rx::Renderer11::isValidNativeWindow const):
2068         (rx::Renderer11::createNativeWindow const):
2069         (rx::Renderer11::drawArrays):
2070         (rx::Renderer11::release):
2071         (rx::Renderer11::getShareHandleSupport const):
2072         (rx::Renderer11::copyImageInternal):
2073         * src/libANGLE/renderer/d3d/d3d11/Renderer11.h:
2074         * src/libANGLE/renderer/d3d/d3d11/TextureStorage11.cpp:
2075         (rx::TextureStorage11::getSRVForImage):
2076         (rx::TextureStorage11::getUAVForImage):
2077         * src/libANGLE/renderer/d3d/d3d11/Trim11.cpp:
2078         (rx::Trim11::trim):
2079         (rx::Trim11::registerForRendererTrimRequest):
2080         (rx::Trim11::unregisterForRendererTrimRequest):
2081         * src/libANGLE/renderer/d3d/d3d11/Trim11.h:
2082         * src/libANGLE/renderer/d3d/d3d11/converged/CompositorNativeWindow11.cpp:
2083         (rx::RoHelper::SupportedWindowsRelease):
2084         * src/libANGLE/renderer/d3d/d3d11/renderer11_utils.cpp:
2085         (rx::d3d11_gl::GenerateCaps):
2086         (rx::d3d11::InitializeFeatures):
2087         * src/libANGLE/renderer/d3d/d3d11/winrt/CoreWindowNativeWindow.h:
2088         * src/libANGLE/renderer/d3d/d3d11/winrt/NativeWindow11WinRT.cpp:
2089         (rx::NativeWindow11WinRT::createSwapChain):
2090         * src/libANGLE/renderer/d3d/d3d11/winrt/NativeWindow11WinRT.h:
2091         * src/libANGLE/renderer/d3d/d3d11/winrt/SwapChainPanelNativeWindow.h:
2092         * src/libANGLE/renderer/d3d/d3d9/renderer9_utils.cpp:
2093         (rx::d3d9::InitializeFeatures):
2094         * src/libANGLE/renderer/gen_angle_format_table.py:
2095         (ceil_int):
2096         (get_channel_struct):
2097         (get_mip_generation_function):
2098         * src/libANGLE/renderer/gl/BlitGL.cpp:
2099         (rx::BlitGL::copyImageToLUMAWorkaroundTexture):
2100         (rx::BlitGL::copySubImageToLUMAWorkaroundTexture):
2101         (rx::BlitGL::blitColorBufferWithShader):
2102         (rx::BlitGL::copySubTexture):
2103         (rx::BlitGL::copySubTextureCPUReadback):
2104         (rx::BlitGL::copyTexSubImage):
2105         (rx::BlitGL::clearRenderableTexture):
2106         (rx::BlitGL::clearRenderbuffer):
2107         (rx::BlitGL::clearFramebuffer):
2108         (rx::BlitGL::clearRenderableTextureAlphaToOne):
2109         (rx::BlitGL::initializeResources):
2110         (rx::BlitGL::orphanScratchTextures):
2111         (rx::BlitGL::setScratchTextureParameter):
2112         (rx::BlitGL::getBlitProgram):
2113         (rx::BlitGL::getBlitProgramType): Deleted.
2114         * src/libANGLE/renderer/gl/BlitGL.h:
2115         * src/libANGLE/renderer/gl/ContextGL.cpp:
2116         (rx::ContextGL::createRenderbuffer):
2117         (rx::ContextGL::setDrawArraysState):
2118         (rx::ContextGL::setDrawElementsState):
2119         (rx::ContextGL::drawArrays):
2120         (rx::ContextGL::updateAttributesForBaseInstance):
2121         (rx::ContextGL::resetUpdatedAttributes):
2122         (rx::ContextGL::drawArraysInstancedBaseInstance):
2123         (rx::ContextGL::drawElements):
2124         (rx::ContextGL::drawElementsInstancedBaseVertexBaseInstance):
2125         (rx::ContextGL::validateState const):
2126         * src/libANGLE/renderer/gl/ContextGL.h:
2127         * src/libANGLE/renderer/gl/ProgramGL.cpp:
2128         (rx::ProgramGL::link):
2129         * src/libANGLE/renderer/gl/RenderbufferGL.cpp:
2130         (rx::RenderbufferGL::RenderbufferGL):
2131         (rx::RenderbufferGL::~RenderbufferGL):
2132         (rx::RenderbufferGL::onDestroy):
2133         (rx::RenderbufferGL::setStorage):
2134         (rx::RenderbufferGL::setStorageMultisample):
2135         (rx::RenderbufferGL::initializeContents):
2136         * src/libANGLE/renderer/gl/RenderbufferGL.h:
2137         * src/libANGLE/renderer/gl/ShaderGL.cpp:
2138         (rx::ShaderGL::compile):
2139         * src/libANGLE/renderer/gl/StateManagerGL.cpp:
2140         (rx::StateManagerGL::bindBufferBase):
2141         (rx::StateManagerGL::bindBufferRange):
2142         (rx::StateManagerGL::validateState const):
2143         * src/libANGLE/renderer/gl/StateManagerGL.h:
2144         * src/libANGLE/renderer/gl/SurfaceGL.cpp:
2145         (rx::SurfaceGL::initializeContents):
2146         * src/libANGLE/renderer/gl/TextureGL.cpp:
2147         (rx::TextureGL::setImageHelper):
2148         (rx::TextureGL::setSubImage):
2149         (rx::TextureGL::setCompressedImage):
2150         (rx::TextureGL::setCompressedSubImage):
2151         (rx::TextureGL::copyImage):
2152         (rx::TextureGL::copySubTextureHelper):
2153         (rx::TextureGL::setStorage):
2154         (rx::TextureGL::setImageExternal):
2155         (rx::TextureGL::setStorageMultisample):
2156         (rx::TextureGL::setStorageExternalMemory):
2157         (rx::TextureGL::setEGLImageTarget):
2158         (rx::TextureGL::setLevelInfo):
2159         (rx::TextureGL::initializeContents):
2160         * src/libANGLE/renderer/gl/VertexArrayGL.cpp:
2161         (rx::VertexArrayGL::streamAttributes const):
2162         (rx::VertexArrayGL::validateState const):
2163         * src/libANGLE/renderer/gl/VertexArrayGL.h:
2164         * src/libANGLE/renderer/gl/cgl/DeviceCGL.cpp: Added.
2165         (rx::DeviceCGL::DeviceCGL):
2166         (rx::DeviceCGL::~DeviceCGL):
2167         (rx::DeviceCGL::initialize):
2168         (rx::DeviceCGL::getAttribute):
2169         (rx::DeviceCGL::getType):
2170         (rx::DeviceCGL::generateExtensions const):
2171         * src/libANGLE/renderer/gl/cgl/DeviceCGL.h: Added.
2172         * src/libANGLE/renderer/gl/cgl/DisplayCGL.h:
2173         * src/libANGLE/renderer/gl/cgl/DisplayCGL.mm:
2174         (rx::DisplayCGL::createDevice):
2175         (rx::DisplayCGL::getCGLPixelFormat const):
2176         (rx::DisplayCGL::generateExtensions const):
2177         * src/libANGLE/renderer/gl/cgl/IOSurfaceSurfaceCGL.mm:
2178         (rx::IOSurfaceSurfaceCGL::initializeAlphaChannel):
2179         * src/libANGLE/renderer/gl/egl/DisplayEGL.cpp:
2180         (rx::DisplayEGL::generateExtensions const):
2181         * src/libANGLE/renderer/gl/glx/DisplayGLX.cpp:
2182         (rx::DisplayGLX::makeCurrent):
2183         * src/libANGLE/renderer/gl/glx/WindowSurfaceGLX.cpp:
2184         (rx::WindowSurfaceGLX::initialize):
2185         * src/libANGLE/renderer/gl/renderergl_utils.cpp:
2186         (rx::nativegl_gl::GenerateCaps):
2187         (rx::nativegl_gl::InitializeFeatures):
2188         (rx::nativegl_gl::InitializeFrontendFeatures):
2189         (rx::nativegl::SupportsCompute):
2190         (rx::nativegl::GetBufferBindingQuery):
2191         (rx::nativegl::GetBufferBindingString):
2192         * src/libANGLE/renderer/gl/renderergl_utils.h:
2193         * src/libANGLE/renderer/load_functions_data.json:
2194         * src/libANGLE/renderer/load_functions_table_autogen.cpp:
2195         (angle::GetLoadFunctionsMap):
2196         * src/libANGLE/renderer/null/DeviceNULL.cpp:
2197         (rx::DeviceNULL::getAttribute):
2198         (rx::DeviceNULL::getDevice): Deleted.
2199         * src/libANGLE/renderer/null/DeviceNULL.h:
2200         * src/libANGLE/renderer/renderer_utils.cpp:
2201         (rx::ShouldUseDebugLayers):
2202         * src/libANGLE/renderer/vulkan/BufferVk.cpp:
2203         (rx::BufferVk::release):
2204         (rx::BufferVk::mapRangeImpl):
2205         (rx::BufferVk::setDataImpl):
2206         * src/libANGLE/renderer/vulkan/CommandGraph.cpp:
2207         (rx::vk::CommandGraphResource::CommandGraphResource):
2208         (rx::vk::CommandGraphResource::~CommandGraphResource):
2209         (rx::vk::CommandGraphResource::isResourceInUse const):
2210         (rx::vk::CommandGraphResource::recordCommands):
2211         (rx::vk::CommandGraphResource::addWriteDependency):
2212         (rx::vk::CommandGraphResource::addReadDependency):
2213         (rx::vk::CommandGraphResource::startNewCommands):
2214         (rx::vk::CommandGraphResource::onWriteImpl):
2215         (rx::vk::SharedGarbage::SharedGarbage):
2216         (rx::vk::SharedGarbage::operator=):
2217         (rx::vk::SharedGarbage::destroyIfComplete):
2218         (rx::vk::CommandGraph::~CommandGraph):
2219         (rx::vk::CommandGraph::submitCommands):
2220         (rx::vk::CommandGraph::releaseResourceUses):
2221         (rx::vk::CommandGraph::releaseResourceUsesAndUpdateSerials):
2222         (rx::vk::CommandGraphResource::resetQueueSerial): Deleted.
2223         * src/libANGLE/renderer/vulkan/CommandGraph.h:
2224         (rx::vk::CommandGraphResource::getLatestSerial const):
2225         (rx::vk::CommandGraphResource::hasStartedRenderPass const):
2226         (rx::vk::CommandGraphResource::updateCurrentAccessNodes):
2227         (rx::vk::CommandGraphResource::onGraphAccess):
2228         (rx::vk::CommandGraphResource::appendToStartedRenderPass):
2229         (rx::vk::CommandGraphResource::renderPassStartedButEmpty const):
2230         (rx::vk::CommandGraphResource::clearRenderPassColorAttachment):
2231         (rx::vk::CommandGraphResource::clearRenderPassDepthAttachment):
2232         (rx::vk::CommandGraphResource::clearRenderPassStencilAttachment):
2233         (rx::vk::CommandGraphResource::invalidateRenderPassColorAttachment):
2234         (rx::vk::CommandGraphResource::invalidateRenderPassDepthAttachment):
2235         (rx::vk::CommandGraphResource::invalidateRenderPassStencilAttachment):
2236         (rx::vk::CommandGraphResource::getRenderPassRenderArea const):
2237         (rx::vk::CommandGraphResource::addGlobalMemoryBarrier):
2238         (rx::vk::CommandGraphResource::hasChildlessWritingNode const):
2239         (rx::vk::CommandGraph::onResourceUse):
2240         (rx::vk::CommandGraphResource::getStoredQueueSerial const): Deleted.
2241         (rx::vk::CommandGraphResource::updateQueueSerial): Deleted.
2242         * src/libANGLE/renderer/vulkan/ContextVk.cpp:
2243         (rx::CommandBatch::CommandBatch):
2244         (rx::CommandBatch::operator=):
2245         (rx::CommandBatch::destroy):
2246         (rx::CommandQueue::destroy):
2247         (rx::CommandQueue::init):
2248         (rx::CommandQueue::checkCompletedCommands):
2249         (rx::CommandQueue::releaseToCommandBatch):
2250         (rx::CommandQueue::clearAllGarbage):
2251         (rx::CommandQueue::allocatePrimaryCommandBuffer):
2252         (rx::CommandQueue::releasePrimaryCommandBuffer):
2253         (rx::CommandQueue::handleDeviceLost):
2254         (rx::CommandQueue::hasInFlightCommands const):
2255         (rx::CommandQueue::finishToSerialOrTimeout):
2256         (rx::CommandQueue::submitFrame):
2257         (rx::CommandQueue::getLastSubmittedFence const):
2258         (rx::ContextVk::ContextVk):
2259         (rx::ContextVk::onDestroy):
2260         (rx::ContextVk::initialize):
2261         (rx::ContextVk::setupDraw):
2262         (rx::ContextVk::setupIndirectDraw):
2263         (rx::ContextVk::setupIndexedIndirectDraw):
2264         (rx::ContextVk::setupLineLoopIndexedIndirectDraw):
2265         (rx::ContextVk::handleDirtyGraphicsVertexBuffers):
2266         (rx::ContextVk::handleDirtyGraphicsIndexBuffer):
2267         (rx::ContextVk::submitFrame):
2268         (rx::ContextVk::flushCommandGraph):
2269         (rx::ContextVk::synchronizeCpuGpuTime):
2270         (rx::ContextVk::traceGpuEventImpl):
2271         (rx::ContextVk::checkCompletedGpuEvents):
2272         (rx::ContextVk::flushGpuEvents):
2273         (rx::ContextVk::clearAllGarbage):
2274         (rx::ContextVk::handleDeviceLost):
2275         (rx::ContextVk::drawArraysIndirect):
2276         (rx::ContextVk::drawElementsIndirect):
2277         (rx::ContextVk::syncState):
2278         (rx::ContextVk::onMakeCurrent):
2279         (rx::ContextVk::dispatchComputeIndirect):
2280         (rx::ContextVk::memoryBarrier):
2281         (rx::ContextVk::writeAtomicCounterBufferDriverUniformOffsets):
2282         (rx::ContextVk::updateActiveTextures):
2283         (rx::ContextVk::updateActiveImages):
2284         (rx::ContextVk::shouldFlush):
2285         (rx::ContextVk::flushImpl):
2286         (rx::ContextVk::finishImpl):
2287         (rx::ContextVk::isSerialInUse const):
2288         (rx::ContextVk::checkCompletedCommands):
2289         (rx::ContextVk::finishToSerial):
2290         (rx::ContextVk::finishToSerialOrTimeout):
2291         (rx::ContextVk::getCompatibleRenderPass):
2292         (rx::ContextVk::getRenderPassWithOps):
2293         (rx::ContextVk::ensureSubmitFenceInitialized):
2294         (rx::ContextVk::getNextSubmitFence):
2295         (rx::ContextVk::getLastSubmittedFence const):
2296         (rx::ContextVk::getTimestamp):
2297         (rx::ContextVk::updateDefaultAttribute):
2298         (rx::ContextVk::waitForSwapchainImageIfNecessary):
2299         (rx::ContextVk::CommandBatch::CommandBatch): Deleted.
2300         (rx::ContextVk::CommandBatch::operator=): Deleted.
2301         (rx::ContextVk::CommandBatch::destroy): Deleted.
2302         (rx::ContextVk::releaseToCommandBatch): Deleted.
2303         (rx::ContextVk::recycleCommandBatch): Deleted.
2304         (rx::ContextVk::getCommandGraph): Deleted.
2305         * src/libANGLE/renderer/vulkan/ContextVk.h:
2306         (rx::ContextVk::onVertexAttributeChange):
2307         (rx::ContextVk::getCurrentQueueSerial const):
2308         (rx::ContextVk::getLastSubmittedQueueSerial const):
2309         (rx::ContextVk::getLastCompletedQueueSerial const):
2310         (rx::ContextVk::addGarbage):
2311         (rx::ContextVk::getCommandGraph):
2312         (rx::ContextVk::releaseObject): Deleted.
2313         * src/libANGLE/renderer/vulkan/DeviceVk.cpp:
2314         (rx::DeviceVk::getAttribute):
2315         (rx::DeviceVk::getDevice): Deleted.
2316         * src/libANGLE/renderer/vulkan/DeviceVk.h:
2317         * src/libANGLE/renderer/vulkan/DisplayVk.cpp:
2318         (rx::DisplayVk::generateExtensions const):
2319         * src/libANGLE/renderer/vulkan/FramebufferVk.cpp:
2320         (rx::FramebufferVk::destroy):
2321         (rx::FramebufferVk::invalidate):
2322         (rx::FramebufferVk::invalidateSub):
2323         (rx::FramebufferVk::clearImpl):
2324         (rx::FramebufferVk::getImplementationColorReadType const):
2325         (rx::FramebufferVk::blitWithCommand):
2326         (rx::FramebufferVk::blit):
2327         (rx::FramebufferVk::resolveColorWithCommand):
2328         (rx::FramebufferVk::readPixelsImpl):
2329         (rx::FramebufferVk::onScissorChange):
2330         * src/libANGLE/renderer/vulkan/FramebufferVk.h:
2331         (rx::FramebufferVk::appendToStartedRenderPass):
2332         * src/libANGLE/renderer/vulkan/GlslangWrapper.cpp:
2333         * src/libANGLE/renderer/vulkan/ImageVk.cpp:
2334         (rx::ImageVk::onDestroy):
2335         (rx::ImageVk::orphan):
2336         * src/libANGLE/renderer/vulkan/ImageVk.h:
2337         * src/libANGLE/renderer/vulkan/MemoryObjectVk.cpp:
2338         (rx::MemoryObjectVk::createImage):
2339         * src/libANGLE/renderer/vulkan/OverlayVk.cpp:
2340         (rx::OverlayVk::createFont):
2341         (rx::OverlayVk::cullWidgets):
2342         (rx::OverlayVk::onPresent):
2343         * src/libANGLE/renderer/vulkan/PersistentCommandPool.cpp:
2344         (rx::vk::PersistentCommandPool::destroy):
2345         (rx::vk::PersistentCommandPool::allocate):
2346         (rx::vk::PersistentCommandPool::alloc): Deleted.
2347         * src/libANGLE/renderer/vulkan/PersistentCommandPool.h:
2348         * src/libANGLE/renderer/vulkan/ProgramVk.cpp:
2349         (rx::ProgramVk::reset):
2350         (rx::ProgramVk::initDefaultUniformLayoutMapping):
2351         (rx::ProgramVk::updateDefaultUniformsDescriptorSet):
2352         (rx::ProgramVk::updateBuffersDescriptorSet):
2353         (rx::ProgramVk::updateAtomicCounterBuffersDescriptorSet):
2354         (rx::ProgramVk::updateImagesDescriptorSet):
2355         (rx::ProgramVk::updateTransformFeedbackDescriptorSetImpl):
2356         (rx::ProgramVk::updateDescriptorSets):
2357         * src/libANGLE/renderer/vulkan/ProgramVk.h:
2358         (rx::ProgramVk::getGraphicsPipeline):
2359         * src/libANGLE/renderer/vulkan/README.md:
2360         * src/libANGLE/renderer/vulkan/RenderTargetVk.cpp:
2361         (rx::RenderTargetVk::RenderTargetVk):
2362         (rx::RenderTargetVk::init):
2363         (rx::RenderTargetVk::reset):
2364         (rx::RenderTargetVk::onColorDraw):
2365         (rx::RenderTargetVk::onDepthStencilDraw):
2366         (rx::RenderTargetVk::updateSwapchainImage):
2367         (rx::RenderTargetVk::getImageForRead):
2368         (rx::RenderTargetVk::getImageForWrite const):
2369         (rx::RenderTargetVk::getFetchImageView const): Deleted.
2370         * src/libANGLE/renderer/vulkan/RenderTargetVk.h:
2371         * src/libANGLE/renderer/vulkan/RenderbufferVk.cpp:
2372         (rx::RenderbufferVk::setStorageImpl):
2373         (rx::RenderbufferVk::setStorageEGLImageTarget):
2374         (rx::RenderbufferVk::releaseImage):
2375         * src/libANGLE/renderer/vulkan/RenderbufferVk.h:
2376         * src/libANGLE/renderer/vulkan/RendererVk.cpp:
2377         (rx::RendererVk::~RendererVk):
2378         (rx::RendererVk::onDestroy):
2379         (rx::RendererVk::notifyDeviceLost):
2380         (rx::RendererVk::initialize):
2381         (rx::RendererVk::initializeDevice):
2382         (rx::RendererVk::initFeatures):
2383         (rx::RendererVk::queueSubmit):
2384         (rx::RendererVk::cleanupGarbage):
2385         (rx::RendererVk::getMaxFenceWaitTimeNs const):
2386         (rx::RendererVk::onCompletedSerial):
2387         (rx::RendererVk::nextSerial): Deleted.
2388         (rx::RendererVk::addGarbage): Deleted.
2389         * src/libANGLE/renderer/vulkan/RendererVk.h:
2390         (rx::CollectGarbage):
2391         (rx::RendererVk::getMaxVertexAttribDivisor const):
2392         (rx::RendererVk::collectGarbageAndReinit):
2393         (rx::RendererVk::getCurrentQueueSerial const):
2394         (rx::RendererVk::getLastSubmittedQueueSerial const):
2395         (rx::RendererVk::getLastCompletedQueueSerial const):
2396         (rx::RendererVk::shouldCleanupGarbage):
2397         * src/libANGLE/renderer/vulkan/SamplerVk.cpp:
2398         (rx::SamplerVk::onDestroy):
2399         (rx::SamplerVk::syncState):
2400         * src/libANGLE/renderer/vulkan/SecondaryCommandBuffer.cpp:
2401         (rx::vk::priv::SecondaryCommandBuffer::executeCommands):
2402         (rx::vk::priv::SecondaryCommandBuffer::dumpCommands const):
2403         * src/libANGLE/renderer/vulkan/SecondaryCommandBuffer.h:
2404         (rx::vk::priv::SecondaryCommandBuffer::drawIndirect):
2405         (rx::vk::priv::SecondaryCommandBuffer::drawIndexedIndirect):
2406         * src/libANGLE/renderer/vulkan/SemaphoreVk.cpp:
2407         (rx::SemaphoreVk::onDestroy):
2408         * src/libANGLE/renderer/vulkan/SurfaceVk.cpp:
2409         (rx::OffscreenSurfaceVk::AttachmentImage::initialize):
2410         (rx::OffscreenSurfaceVk::AttachmentImage::destroy):
2411         (rx::OffscreenSurfaceVk::OffscreenSurfaceVk):
2412         (rx::WindowSurfaceVk::WindowSurfaceVk):
2413         (rx::WindowSurfaceVk::createSwapChain):
2414         (rx::WindowSurfaceVk::releaseSwapchainImages):
2415         (rx::WindowSurfaceVk::destroySwapChainImages):
2416         (rx::WindowSurfaceVk::present):
2417         (rx::WindowSurfaceVk::nextSwapchainImage):
2418         * src/libANGLE/renderer/vulkan/SyncVk.cpp:
2419         (rx::vk::SyncHelper::SyncHelper):
2420         (rx::vk::SyncHelper::~SyncHelper):
2421         (rx::vk::SyncHelper::releaseToRenderer):
2422         (rx::vk::SyncHelper::initialize):
2423         (rx::vk::SyncHelper::clientWait):
2424         (rx::vk::SyncHelper::serverWait):
2425         (rx::vk::SyncHelper::getStatus):
2426         (rx::SyncVk::onDestroy):
2427         (rx::SyncVk::serverWait):
2428         (rx::EGLSyncVk::onDestroy):
2429         (rx::EGLSyncVk::serverWait):
2430         (rx::FenceSyncVk::FenceSyncVk): Deleted.
2431         (rx::FenceSyncVk::~FenceSyncVk): Deleted.
2432         (rx::FenceSyncVk::onDestroy): Deleted.
2433         (rx::FenceSyncVk::initialize): Deleted.
2434         (rx::FenceSyncVk::clientWait): Deleted.
2435         (rx::FenceSyncVk::serverWait): Deleted.
2436         (rx::FenceSyncVk::getStatus): Deleted.
2437         * src/libANGLE/renderer/vulkan/SyncVk.h:
2438         * src/libANGLE/renderer/vulkan/TextureVk.cpp:
2439         (rx::TextureVk::onDestroy):
2440         (rx::TextureVk::copySubImageImpl):
2441         (rx::TextureVk::copySubTextureImpl):
2442         (rx::TextureVk::copySubImageImplWithTransfer):
2443         (rx::TextureVk::copySubImageImplWithDraw):
2444         (rx::TextureVk::setStorageExternalMemory):
2445         (rx::TextureVk::setEGLImageTarget):
2446         (rx::TextureVk::ensureImageAllocated):
2447         (rx::TextureVk::setImageHelper):
2448         (rx::TextureVk::copyImageDataToBufferAndGetData):
2449         (rx::TextureVk::copyImageDataToBuffer):
2450         (rx::TextureVk::generateMipmapsWithCPU):
2451         (rx::TextureVk::generateMipmap):
2452         (rx::TextureVk::setBaseLevel):
2453         (rx::TextureVk::changeLevels):
2454         (rx::TextureVk::bindTexImage):
2455         (rx::TextureVk::getAttachmentRenderTarget):
2456         (rx::TextureVk::ensureImageInitialized):
2457         (rx::TextureVk::initLayerRenderTargets):
2458         (rx::TextureVk::syncState):
2459         (rx::TextureVk::getReadImageView const):
2460         (rx::TextureVk::getFetchImageView const):
2461         (rx::TextureVk::getLayerLevelDrawImageView):
2462         (rx::TextureVk::getLayerLevelStorageImageView):
2463         (rx::TextureVk::initImage):
2464         (rx::TextureVk::initImageViews):
2465         (rx::TextureVk::releaseImage):
2466         (rx::TextureVk::releaseImageViews):
2467         (rx::TextureVk::releaseStagingBuffer):
2468         (rx::TextureVk::getLevelCount const):
2469         (rx::TextureVk::generateMipmapLevelsWithCPU):
2470         (rx::TextureVk::TextureVkViews::TextureVkViews): Deleted.
2471         (rx::TextureVk::TextureVkViews::~TextureVkViews): Deleted.
2472         (rx::TextureVk::TextureVkViews::release): Deleted.
2473         (rx::TextureVk::init3DRenderTargets): Deleted.
2474         (rx::TextureVk::initCubeMapRenderTargets): Deleted.
2475         (rx::TextureVk::getTextureViews const): Deleted.
2476         (rx::TextureVk::initImageViewImpl): Deleted.
2477         * src/libANGLE/renderer/vulkan/TextureVk.h:
2478         (): Deleted.
2479         * src/libANGLE/renderer/vulkan/TransformFeedbackVk.cpp:
2480         (rx::TransformFeedbackVk::onBeginOrEnd):
2481         * src/libANGLE/renderer/vulkan/UtilsVk.cpp:
2482         (rx::UtilsVk::ensureConvertIndexIndirectResourcesInitialized):
2483         (rx::UtilsVk::ensureConvertIndexIndirectLineLoopResourcesInitialized):
2484         (rx::UtilsVk::convertIndexIndirectBuffer):
2485         (rx::UtilsVk::convertLineLoopIndexIndirectBuffer):
2486         (rx::UtilsVk::startRenderPass):
2487         (rx::UtilsVk::clearFramebuffer):
2488         (rx::UtilsVk::blitResolveImpl):
2489         (rx::UtilsVk::stencilBlitResolveNoShaderExport):
2490         (rx::UtilsVk::copyImage):
2491         (rx::UtilsVk::cullOverlayWidgets):
2492         (rx::UtilsVk::drawOverlay):
2493         * src/libANGLE/renderer/vulkan/UtilsVk.h:
2494         * src/libANGLE/renderer/vulkan/VertexArrayVk.cpp:
2495         (rx::VertexArrayVk::destroy):
2496         (rx::VertexArrayVk::convertIndexBufferIndirectGPU):
2497         (rx::VertexArrayVk::handleLineLoopIndirect):
2498         (rx::VertexArrayVk::convertVertexBufferCPU):
2499         (rx::VertexArrayVk::syncDirtyAttrib):
2500         (rx::VertexArrayVk::updateStreamedAttribs):
2501         (rx::VertexArrayVk::updateDefaultAttrib):
2502         (rx::VertexArrayVk::updateClientAttribs): Deleted.
2503         * src/libANGLE/renderer/vulkan/VertexArrayVk.h:
2504         (rx::VertexArrayVk::getStreamingVertexAttribsMask const):
2505         * src/libANGLE/renderer/vulkan/android/HardwareBufferImageSiblingVkAndroid.cpp:
2506         (rx::HardwareBufferImageSiblingVkAndroid::initImpl):
2507         (rx::HardwareBufferImageSiblingVkAndroid::release):
2508         * src/libANGLE/renderer/vulkan/android/HardwareBufferImageSiblingVkAndroid.h:
2509         * src/libANGLE/renderer/vulkan/doc/FastOpenGLStateTransitions.md:
2510         * src/libANGLE/renderer/vulkan/doc/FormatTablesAndEmulation.md:
2511         * src/libANGLE/renderer/vulkan/doc/OpenGLLineSegmentRasterization.md:
2512         * src/libANGLE/renderer/vulkan/doc/ShaderModuleCompilation.md:
2513         * src/libANGLE/renderer/vulkan/gen_vk_internal_shaders.py:
2514         (shader_path):
2515         * src/libANGLE/renderer/vulkan/shaders/gen/ConvertIndex.comp.00000000.inc:
2516         * src/libANGLE/renderer/vulkan/shaders/gen/ConvertIndex.comp.00000001.inc:
2517         * src/libANGLE/renderer/vulkan/shaders/gen/ConvertVertex.comp.00000008.inc:
2518         * src/libANGLE/renderer/vulkan/shaders/gen/ConvertVertex.comp.00000009.inc:
2519         * src/libANGLE/renderer/vulkan/shaders/gen/ConvertVertex.comp.00000018.inc:
2520         * src/libANGLE/renderer/vulkan/shaders/gen/ConvertVertex.comp.00000019.inc:
2521         * src/libANGLE/renderer/vulkan/shaders/src/ConvertIndex.comp:
2522         * src/libANGLE/renderer/vulkan/shaders/src/ConvertIndex.comp.json:
2523         * src/libANGLE/renderer/vulkan/shaders/src/ConvertVertex.comp:
2524         * src/libANGLE/renderer/vulkan/shaders/src/ConvertVertex.comp.json:
2525         * src/libANGLE/renderer/vulkan/vk_cache_utils.cpp:
2526         (rx::vk::GraphicsPipelineDesc::initializePipeline const):
2527         (rx::vk::GraphicsPipelineDesc::updateVertexInput):
2528         (rx::vk::PipelineLayoutDesc::updatePushConstantRange):
2529         (rx::RenderPassCache::addRenderPass):
2530         (rx::GraphicsPipelineCache::release):
2531         (rx::GraphicsPipelineCache::insertPipeline):
2532         * src/libANGLE/renderer/vulkan/vk_cache_utils.h:
2533         * src/libANGLE/renderer/vulkan/vk_caps_utils.cpp:
2534         (rx::RendererVk::ensureCapsInitialized const):
2535         * src/libANGLE/renderer/vulkan/vk_format_map.json:
2536         * src/libANGLE/renderer/vulkan/vk_format_table_autogen.cpp:
2537         (rx::vk::Format::initialize):
2538         * src/libANGLE/renderer/vulkan/vk_format_utils.cpp:
2539         (rx::MapSwizzleState):
2540         * src/libANGLE/renderer/vulkan/vk_helpers.cpp:
2541         (rx::vk::DynamicBuffer::allocate):
2542         (rx::vk::DynamicBuffer::releaseBufferListToRenderer):
2543         (rx::vk::DynamicBuffer::release):
2544         (rx::vk::DynamicBuffer::releaseInFlightBuffers):
2545         (rx::vk::DescriptorPoolHelper::release):
2546         (rx::vk::LineLoopHelper::LineLoopHelper):
2547         (rx::vk::LineLoopHelper::streamIndicesIndirect):
2548         (rx::vk::LineLoopHelper::release):
2549         (rx::vk::LineLoopHelper::destroy):
2550         (rx::vk::BufferHelper::init):
2551         (rx::vk::BufferHelper::release):
2552         (rx::vk::ImageHelper::ImageHelper):
2553         (rx::vk::ImageHelper::init):
2554         (rx::vk::ImageHelper::initExternal):
2555         (rx::vk::ImageHelper::releaseImage):
2556         (rx::vk::ImageHelper::releaseStagingBuffer):
2557         (rx::vk::ImageHelper::destroy):
2558         (rx::vk::ImageHelper::getBaseLevel):
2559         (rx::vk::ImageHelper::setBaseAndMaxLevels):
2560         (rx::vk::ImageHelper::generateMipmapsWithBlit):
2561         (rx::vk::ImageHelper::removeStagedUpdates):
2562         (rx::vk::ImageHelper::stageSubresourceUpdate):
2563         (rx::vk::ImageHelper::stageSubresourceUpdateAndGetData):
2564         (rx::vk::ImageHelper::stageSubresourceUpdateFromBuffer):
2565         (rx::vk::ImageHelper::stageSubresourceUpdateFromFramebuffer):
2566         (rx::vk::ImageHelper::allocateStagingMemory):
2567         (rx::vk::ImageHelper::flushStagedUpdates):
2568         (rx::vk::ImageHelper::isUpdateStaged):
2569         (rx::vk::ImageHelper::SubresourceUpdate::SubresourceUpdate):
2570         (rx::vk::ImageHelper::SubresourceUpdate::release):
2571         (rx::vk::FramebufferHelper::release):
2572         (rx::vk::ShaderProgramHelper::release):
2573         (rx::vk::DynamicBuffer::releaseBufferListToContext): Deleted.
2574         (rx::vk::DynamicBuffer::releaseBufferListToDisplay): Deleted.
2575         (rx::vk::ImageHelper::dumpResources): Deleted.
2576         * src/libANGLE/renderer/vulkan/vk_helpers.h:
2577         (rx::vk::ShaderProgramHelper::getShader):
2578         (rx::vk::ShaderProgramHelper::getGraphicsPipeline):
2579         * src/libANGLE/renderer/vulkan/vk_internal_shaders_autogen.cpp:
2580         (rx::vk::ShaderLibrary::destroy):
2581         (rx::vk::ShaderLibrary::getConvertIndexIndirectLineLoop_comp):
2582         * src/libANGLE/renderer/vulkan/vk_internal_shaders_autogen.gni:
2583         * src/libANGLE/renderer/vulkan/vk_internal_shaders_autogen.h:
2584         * src/libANGLE/renderer/vulkan/vk_utils.cpp:
2585         (rx::HasKhronosValidationLayer):
2586         (rx::HasStandardValidationLayer):
2587         (rx::GetAvailableValidationLayers):
2588         (rx::vk::StagingBuffer::init):
2589         (rx::vk::StagingBuffer::release):
2590         (rx::vk::GarbageObject::GarbageObject):
2591         (rx::vk::GarbageObject::operator=):
2592         (rx::vk::GarbageObject::destroy):
2593         (rx::gl_vk::GetSamplerMipmapMode):
2594         (rx::vk::StagingBuffer::dumpResources): Deleted.
2595         (rx::vk::GarbageObjectBase::GarbageObjectBase): Deleted.
2596         (rx::vk::GarbageObjectBase::destroy): Deleted.
2597         (rx::vk::GarbageObject::destroyIfComplete): Deleted.
2598         * src/libANGLE/renderer/vulkan/vk_utils.h:
2599         (rx::vk::GarbageObject::valid const):
2600         (rx::vk::GarbageObject::Get):
2601         (rx::vk::GetGarbage):
2602         (rx::vk::GarbageObjectBase::GarbageObjectBase): Deleted.
2603         * src/libANGLE/renderer/vulkan/vk_wrapper.h:
2604         (rx::vk::WrappedObject::getHandle const):
2605         (rx::vk::WrappedObject::valid const):
2606         (rx::vk::WrappedObject::ptr const):
2607         (rx::vk::WrappedObject::release):
2608         (rx::vk::WrappedObject::WrappedObject):
2609         (rx::vk::WrappedObject::~WrappedObject):
2610         (rx::vk::WrappedObject::operator=):
2611         (rx::vk::priv::CommandBuffer::SupportsQueries):
2612         (rx::vk::priv::CommandBuffer::getMemoryUsageStats const):
2613         (rx::vk::priv::CommandBuffer::drawIndexedIndirect):
2614         (rx::vk::priv::CommandBuffer::drawIndirect):
2615         (rx::vk::WrappedObject::dumpResources): Deleted.
2616         (rx::vk::priv::CommandBuffer::getMemoryUsageStats): Deleted.
2617         * src/libANGLE/validationEGL.cpp:
2618         (egl::ValidateCreateContext):
2619         (egl::ValidateMakeCurrent):
2620         (egl::ValidateCompatibleSurface):
2621         (egl::ValidateStreamConsumerGLTextureExternalKHR):
2622         (egl::ValidateStreamConsumerGLTextureExternalAttribsNV):
2623         (egl::ValidateQueryStringiANGLE):
2624         (egl::ValidateCompatibleConfigs): Deleted.
2625         * src/libANGLE/validationEGL.h:
2626         * src/libANGLE/validationES.cpp:
2627         (gl::ValidateRenderbufferStorageParametersBase):
2628         (gl::ValidateTexStorageMultisample):
2629         * src/libANGLE/validationES.h:
2630         (gl::ValidateVertexFormat):
2631         * src/libANGLE/validationES2.cpp:
2632         (gl::ValidateES2TexStorageParameters):
2633         * src/libANGLE/validationES3.cpp:
2634         (gl::ValidateES3TexStorageParametersBase):
2635         * src/libANGLE/validationES31.cpp:
2636         (gl::err::ValidateProgramResourceIndex):
2637         * src/libGLESv2.gni:
2638         * src/libGLESv2/entry_points_egl_ext.cpp:
2639         * src/tests/BUILD.gn:
2640         * src/tests/angle_deqp_tests_main.cpp:
2641         (main):
2642         * src/tests/angle_end2end_tests.gni:
2643         * src/tests/compiler_tests/DebugShaderPrecision_test.cpp:
2644         (TEST_F):
2645         * src/tests/compiler_tests/ImmutableString_test_ESSL_autogen.cpp:
2646         (sh::TEST):
2647         * src/tests/compiler_tests/ImmutableString_test_autogen.cpp:
2648         (sh::TEST):
2649         * src/tests/compiler_tests/QualificationOrder_test.cpp:
2650         (TEST_F):
2651         * src/tests/deqp_support/angle_deqp_gtest.cpp:
2652         (angle::InitTestHarness):
2653         * src/tests/deqp_support/angle_deqp_libtester_main.cpp:
2654         * src/tests/deqp_support/deqp_egl_TestExpectations: Removed.
2655         * src/tests/deqp_support/deqp_gles2_TestExpectations: Removed.
2656         * src/tests/deqp_support/deqp_gles31_TestExpectations: Removed.
2657         * src/tests/deqp_support/deqp_gles3_TestExpectations: Removed.
2658         * src/tests/deqp_support/deqp_khr_gles2_TestExpectations: Removed.
2659         * src/tests/deqp_support/deqp_khr_gles31_TestExpectations: Removed.
2660         * src/tests/deqp_support/deqp_khr_gles3_TestExpectations: Removed.
2661         * src/tests/deqp_support/tcuANGLENativeDisplayFactory.cpp:
2662         * src/tests/deqp_support/tcuANGLEPlatform.cpp:
2663         (tcu::ANGLEPlatform::ANGLEPlatform):
2664         * src/tests/deqp_support/tes31Context_override.cpp:
2665         (deqp::gles31::Context::Context):
2666         (deqp::gles31::Context::~Context):
2667         (deqp::gles31::Context::createRenderContext):
2668         (deqp::gles31::Context::destroyRenderContext):
2669         (deqp::gles31::Context::getRenderTarget const):
2670         * src/tests/egl_tests/EGLDeviceCGLTest.cpp: Added.
2671         (EGLDeviceCGLQueryTest::EGLDeviceCGLQueryTest):
2672         (TEST_P):
2673         * src/tests/egl_tests/EGLDirectCompositionTest.cpp:
2674         * src/tests/egl_tests/EGLFeatureControlTest.cpp:
2675         (TEST_P):
2676         * src/tests/egl_tests/EGLNoConfigContextTest.cpp: Added.
2677         (EGLNoConfigContextTest::EGLNoConfigContextTest):
2678         (TEST_P):
2679         * src/tests/gl_tests/BlendFuncExtendedTest.cpp:
2680         (angle::EXTBlendFuncExtendedDrawTestES3::LinkProgram):
2681         * src/tests/gl_tests/ComputeShaderTest.cpp:
2682         * src/tests/gl_tests/CopyTexImageTest.cpp:
2683         (angle::TEST_P):
2684         * src/tests/gl_tests/CopyTextureTest.cpp:
2685         (angle::CopyTextureVariationsTest::initializeSourceTexture):
2686         (angle::CopyTextureVariationsTest::testCopyTexture):
2687         (angle::CopyTextureVariationsTest::testCopySubTexture):
2688         (angle::TEST_P):
2689         * src/tests/gl_tests/DrawBaseVertexBaseInstanceTest.cpp:
2690         (angle::DrawBaseVertexBaseInstanceTest::DrawBaseVertexBaseInstanceTest):
2691         (angle::DrawBaseVertexBaseInstanceTest::vertexShaderSource300):
2692         * src/tests/gl_tests/FramebufferTest.cpp:
2693         (TEST_P):
2694         * src/tests/gl_tests/GLSLTest.cpp:
2695         * src/tests/gl_tests/IndexBufferOffsetTest.cpp:
2696         * src/tests/gl_tests/InstancingTest.cpp:
2697         * src/tests/gl_tests/LineLoopTest.cpp:
2698         (LineLoopTest::checkPixels):
2699         (LineLoopTest::runTest):
2700         (LineLoopIndirectTest::runTest):
2701         (TEST_P):
2702         * src/tests/gl_tests/LinkAndRelinkTest.cpp:
2703         (angle::TEST_P):
2704         * src/tests/gl_tests/MipmapTest.cpp:
2705         * src/tests/gl_tests/OcclusionQueriesTest.cpp:
2706         * src/tests/gl_tests/ParallelShaderCompileTest.cpp:
2707         (angle::ParallelShaderCompileTest::TaskRunner::run):
2708         * src/tests/gl_tests/ProgramInterfaceTest.cpp:
2709         * src/tests/gl_tests/SimpleOperationTest.cpp:
2710         * src/tests/gl_tests/StateChangeTest.cpp:
2711         * src/tests/gl_tests/TextureTest.cpp:
2712         (angle::SliceFormatColor):
2713         (angle::SliceFormatColor32F):
2714         * src/tests/gl_tests/TimerQueriesTest.cpp:
2715         * src/tests/gl_tests/UniformBufferTest.cpp:
2716         * src/tests/gl_tests/VertexAttributeTest.cpp:
2717         (angle::TypeStride):
2718         (angle::Normalize10):
2719         (angle::Normalize2):
2720         (angle::Pack1010102):
2721         (angle::VertexAttributeTest::checkPixels):
2722         (angle::VertexAttributeTest::checkRGBPixels):
2723         (angle::VertexAttributeTest::runTest):
2724         (angle::TEST_P):
2725         * src/tests/gles1_conformance_tests/ConformanceTests.cpp:
2726         (angle::TEST_P):
2727         * src/tests/perf_tests/ANGLEPerfTest.cpp:
2728         * src/tests/perf_tests/DrawCallPerf.cpp:
2729         (angle::DrawArraysPerfParams::DrawArraysPerfParams): Deleted.
2730         (angle::DrawArraysPerfParams::story const): Deleted.
2731         (angle::operator<<): Deleted.
2732         (angle::CreateSimpleTexture2D): Deleted.
2733         (angle::DrawCallPerfBenchmark::DrawCallPerfBenchmark): Deleted.
2734         (angle::DrawCallPerfBenchmark::initializeBenchmark): Deleted.
2735         (): Deleted.
2736         * src/tests/perf_tests/EGLMakeCurrentPerf.cpp:
2737         * src/tests/perf_tests/LinkProgramPerfTest.cpp:
2738         (angle::TEST_P):
2739         * src/tests/perf_tests/MultiviewPerf.cpp:
2740         (angle::MultiviewCPUBoundBenchmark::initializeBenchmark):
2741         (angle::MultiviewGPUBoundBenchmark::initializeBenchmark):
2742         (angle::TEST_P):
2743         * src/tests/perf_tests/UniformsPerf.cpp:
2744         (TEST_P):
2745         * src/tests/perf_tests/VulkanPipelineCachePerf.cpp:
2746         (rx::VulkanPipelineCachePerfTest::step):
2747         * src/tests/perf_tests/glmark2Benchmark.cpp:
2748         * src/tests/test_expectations/GPUTestConfig.cpp:
2749         (angle::GPUTestConfig::GPUTestConfig):
2750         * src/tests/test_expectations/GPUTestConfig.h:
2751         * src/tests/test_expectations/GPUTestExpectationsParser.cpp:
2752         (angle::GPUTestExpectationsParser::parseLine):
2753         * src/tests/test_utils/ANGLETest.cpp:
2754         * src/tests/test_utils/ANGLETest.h:
2755         * src/tests/test_utils/angle_test_configs.cpp:
2756         (angle::PlatformParameters::initDefaultParameters):
2757         (angle::operator<<):
2758         (angle::egl_platform::VULKAN_SWIFTSHADER):
2759         (angle::ES2_VULKAN_SWIFTSHADER):
2760         * src/tests/test_utils/angle_test_configs.h:
2761         * src/tests/test_utils/angle_test_instantiate.cpp:
2762         (angle::IsWindows7):
2763         * src/tests/test_utils/angle_test_instantiate.h:
2764         * src/third_party/compiler/README.chromium:
2765         * third_party/vulkan-headers/BUILD.gn: Removed.
2766         * third_party/vulkan-headers/vulkan_headers_script_deps.gni: Removed.
2767         * third_party/vulkan-loader/BUILD.gn:
2768         * third_party/vulkan-tools/BUILD.gn: Removed.
2769         * third_party/vulkan-validation-layers/BUILD.gn: Removed.
2770         * third_party/vulkan-validation-layers/dummy_spirv_tools_commit_id.h: Removed.
2771         * util/EGLWindow.cpp:
2772         * util/fuchsia/ScenicWindow.cpp:
2773         (ScenicWindow::resetNativeWindow):
2774         * util/posix/crash_handler_posix.cpp: Renamed from Source/ThirdParty/ANGLE/util/posix/Posix_crash_handler.cpp.
2775         * util/posix/test_utils_posix.cpp: Renamed from Source/ThirdParty/ANGLE/util/posix/Posix_system_utils.cpp.
2776         * util/test_utils.h: Renamed from Source/ThirdParty/ANGLE/util/system_utils.h.
2777         * util/util.gni:
2778         * util/util_gl.h:
2779         * util/windows/WGLWindow.cpp:
2780         * util/windows/test_utils_win.cpp: Renamed from Source/ThirdParty/ANGLE/util/windows/Windows_system_utils.cpp.
2781         (angle::PrintStackBacktrace):
2782         * util/windows/win32/test_utils_win32.cpp: Renamed from Source/ThirdParty/ANGLE/util/windows/win32/Win32_system_utils.cpp.
2783         * util/x11/X11Window.cpp:
2784
2785 2019-10-01  Fujii Hironori  <Hironori.Fujii@sony.com>
2786
2787         [WinCairo][Clang][ANGLE] global_state.cpp(39,1): error: static_assert failed due to requirement 'std::is_trivially_constructible<std::atomic<std::mutex *>>::value' "global mutex is not trivially constructible"
2788         https://bugs.webkit.org/show_bug.cgi?id=201751
2789
2790         Reviewed by Alex Christensen.
2791
2792         Clang-cl couldn't compile the latest ANGLE with MS STL owing to a
2793         static_assert failure.
2794
2795         Fix it by cherri-picking the upstream fix.
2796         <https://chromium.googlesource.com/angle/angle/+/755417dd79071d6149c81418e1404b0c61d19672>
2797
2798         * AUTHORS:
2799         * src/common/angleutils.h:
2800         * src/libGLESv2/global_state.cpp:
2801
2802 2019-09-24  Adrian Perez de Castro  <aperez@igalia.com>
2803
2804         [GTK] ANGLE's eglplatform.h is build broken with -DENABLE_X11_PLATFORM=OFF
2805         https://bugs.webkit.org/show_bug.cgi?id=198621
2806
2807         Reviewed by Carlos Garcia Campos.
2808
2809         * PlatformGTK.cmake: Define WL_EGL_PLATFORM to prefer Wayland type
2810         definitions with ENABLE_WAYLAND_TARGET=ON and ENABLE_X11_TARGET=OFF
2811         to avoid ANGLE's eglplatform.h from trying to include the X11 headers.
2812
2813 2019-09-16  James Darpinian  <jdarpinian@chromium.org>
2814
2815         Remove commit.h copying build steps
2816         https://bugs.webkit.org/show_bug.cgi?id=201785
2817
2818         Reviewed by Alex Christensen.
2819
2820         * ANGLE.xcodeproj/project.pbxproj: Remove leftover build step
2821         * CMakeLists.txt: Remove commit.h copying
2822         * src/common/version.h: Restore to upstream version
2823         * src/id/commit.h: Added.
2824         * update-angle.sh: Copy commit.h to id/commit.h at import time
2825
2826 2019-09-12  James Darpinian  <jdarpinian@chromium.org>
2827
2828         Update ANGLE
2829         https://bugs.webkit.org/show_bug.cgi?id=201156
2830
2831         Reviewed by Alex Christensen.
2832
2833         Update to 2019-9-9, revision 79ad0411911b2fc84834c3705f55707be9e4b498
2834         I merged a bunch of changes to upstream ANGLE, to minimize the changes
2835         necessary when updating ANGLE in WebKit.
2836
2837         * ANGLE.plist: Update commit hashes
2838         * ANGLE.txt: Removed in favor of LICENSE
2839         * ANGLE.xcodeproj/project.pbxproj: Updated with upstream changes
2840           Also, copy src/commit.h to id/commit.h during build
2841         * CMakeLists.txt: Updated with upstream changes
2842           Also, copy src/commit.h to id/commit.h during build
2843         * Compiler.cmake: Updated with upstream changes
2844         * GLESv2.cmake: Updated with upstream changes
2845         * adjust-angle-include-paths-rule: Support "" as well as <> for includes
2846         * adjust-angle-include-paths.sh: Support "" as well as <> for includes
2847         * changes.diff: Pared down to just legal disclaimer and warning flag changes
2848         * update-angle.sh: Update ANGLE.plist
2849
2850         * Many other files modified/added/removed upstream
2851
2852 2019-09-11  Ryan Haddad  <ryanhaddad@apple.com>
2853
2854         Unreviewed, rolling out r249791.
2855
2856         Breaks internal production builds.
2857
2858         Reverted changeset:
2859
2860         "Update ANGLE"
2861         https://bugs.webkit.org/show_bug.cgi?id=201156
2862         https://trac.webkit.org/changeset/249791
2863
2864 2019-09-11  James Darpinian  <jdarpinian@chromium.org>
2865
2866         Update ANGLE
2867         https://bugs.webkit.org/show_bug.cgi?id=201156
2868
2869         Reviewed by Alex Christensen.
2870
2871         Update to 2019-9-9, revision 79ad0411911b2fc84834c3705f55707be9e4b498
2872         I merged a bunch of changes to upstream ANGLE, to minimize the changes
2873         necessary when updating ANGLE in WebKit.
2874
2875         * ANGLE.plist: Update commit hashes
2876         * ANGLE.txt: Removed in favor of LICENSE
2877         * ANGLE.xcodeproj/project.pbxproj: Updated with upstream changes
2878         Also, copy src/commit.h to id/commit.h during build
2879         * CMakeLists.txt: Updated with upstream changes
2880         Also, copy src/commit.h to id/commit.h during build
2881         * Compiler.cmake: Updated with upstream changes
2882         * GLESv2.cmake: Updated with upstream changes
2883         * adjust-angle-include-paths-rule: Support "" as well as <> for includes
2884         * adjust-angle-include-paths.sh: Support "" as well as <> for includes
2885         * changes.diff: Pared down to just legal disclaimer and warning flag changes
2886         * update-angle.sh: Update ANGLE.plist
2887
2888         * Many other files modified/added/removed upstream
2889
2890 2019-08-29  Keith Rollin  <krollin@apple.com>
2891
2892         Update .xcconfig symbols to reflect the current set of past and future product versions.
2893         https://bugs.webkit.org/show_bug.cgi?id=200720
2894         <rdar://problem/54305032>
2895
2896         Reviewed by Alex Christensen.
2897
2898         Remove version symbols related to old OS's we no longer support,
2899         ensure that version symbols are defined for OS's we do support.
2900
2901         * Configurations/Base.xcconfig:
2902         * Configurations/DebugRelease.xcconfig:
2903
2904 2019-08-26  James Darpinian  <jdarpinian@google.com>
2905
2906         Add a script to update ANGLE
2907         https://bugs.webkit.org/show_bug.cgi?id=201109
2908
2909         Reviewed by Alex Christensen.
2910
2911         * update-angle.sh: Added.
2912
2913 2019-08-16  Keith Rollin  <krollin@apple.com>
2914
2915         Add XCBuild support to ANGLE
2916         https://bugs.webkit.org/show_bug.cgi?id=200836
2917         <rdar://problem/54410420>
2918
2919         Reviewed by Alex Christensen.
2920
2921         The ANGLE Xcode project contains two Build Phases: one that copies
2922         some headers, and another that modifies those headers. This
2923         combination does not work with XCBuild, which gets confused when it
2924         finds that headers that it's copied have been changed. When it detects
2925         this, XCBuild thinks that it should recopy those headers on the next
2926         build, causing their modification dates to change and for all
2927         dependent files to be rebuilt. This essentially turns an incremental
2928         rebuild into a full rebuild.
2929
2930         Address this problem by using a new facility in Xcode 11. This
2931         facility supports the copying and modifying headers files in a single
2932         step. It is achieved by first enabling the facility by setting
2933         APPLY_RULES_IN_COPY_HEADERS to YES. Next, we add a new Build Rule that
2934         invokes a custom script when the header files are copied. Third, we
2935         provide this script, which can essentially be a stripped down version
2936         of the one already used to modify the exported headers files. Finally,
2937         we disable the use of that old script when we are using Xcode 11. In
2938         this way, the old script that modifies the exported headers is used in
2939         Xcode 10, and the new facility is used in Xcode 11.
2940
2941         See also Bug 197340 for where this process was also applied to
2942         JavaScriptCore, WebKit, and WebKitLegacy.
2943
2944         * ANGLE.xcodeproj/project.pbxproj:
2945         * Configurations/ANGLE.xcconfig:
2946         * adjust-angle-include-paths-rule: Added.
2947
2948 2019-08-08  Brent Fulgham  <bfulgham@apple.com>
2949
2950         [FTW] Get WebKit, WebKit2, and MiniBrowser building and executing
2951         https://bugs.webkit.org/show_bug.cgi?id=200539
2952
2953         Reviewed by Dean Jackson.
2954
2955         * PlatformFTW.cmake: Added.
2956
2957 2019-07-17  Kenneth Russell  <kbr@chromium.org>
2958
2959         Make ANGLE work inside WebKit2's sandbox
2960         https://bugs.webkit.org/show_bug.cgi?id=199844
2961
2962         Reviewed by Alex Christensen.
2963
2964         Cherry-pick fix for crbug.com/angleproject/3383 to eliminate use
2965         of deprecated API in SystemInfo_mac.mm.
2966
2967         * BUILD.gn:
2968         * src/gpu_info_util/SystemInfo.cpp:
2969         (angle::FindActiveGPU):
2970         (angle::PrintSystemInfo):
2971         (angle::FindPrimaryGPU): Deleted.
2972         * src/gpu_info_util/SystemInfo.h:
2973         * src/gpu_info_util/SystemInfo_internal.h:
2974         * src/gpu_info_util/SystemInfo_linux.cpp:
2975         (angle::GetSystemInfo):
2976         * src/gpu_info_util/SystemInfo_mac.mm:
2977         (angle::GetSystemInfo):
2978         * src/gpu_info_util/SystemInfo_win.cpp:
2979         (angle::GetSystemInfo):
2980         * src/tests/BUILD.gn:
2981         * src/tests/test_expectations/GPUTestConfig.cpp:
2982         * src/tests/test_utils/angle_test_instantiate.cpp:
2983         (angle::IsConfigWhitelisted):
2984
2985 2019-07-10  Alex Christensen  <achristensen@webkit.org>
2986
2987         Allow CMake to build WebCore on Mac
2988         https://bugs.webkit.org/show_bug.cgi?id=198979
2989
2990         Reviewed by Don Olmstead.
2991
2992         * include/GLSLANG/ShaderLang.h:
2993
2994 2019-07-10  Kenneth Russell  <kbr@chromium.org>
2995
2996         Hook up WebGL's back buffer in ANGLE backend on macOS
2997         https://bugs.webkit.org/show_bug.cgi?id=198982
2998
2999         Reviewed by Alex Christensen.
3000
3001         Add source files needed to implement and call ANGLE extensions, and
3002         export headers necessary for those extensions. Update the script which
3003         adjusts include paths to handle the new headers.
3004
3005         Cherry-pick fix for ANGLE bug crbug.com/angleproject/3669 to support
3006         antialias:true for ANGLE-backed WebGL contexts.
3007
3008         * ANGLE.xcodeproj/project.pbxproj:
3009         * adjust-angle-include-paths.sh:
3010         * src/libANGLE/FramebufferAttachment.cpp:
3011         (gl::FramebufferAttachment::getTextureImageIndex const): Deleted.
3012         * src/libANGLE/FramebufferAttachment.h:
3013         (gl::FramebufferAttachment::getTextureImageIndex const):
3014         * src/libANGLE/validationES2.cpp:
3015         (gl::ValidateBlitFramebufferANGLE):
3016
3017 2019-06-27  Beth Dakin  <bdakin@apple.com>
3018
3019         Upstream use of MACCATALYST
3020         https://bugs.webkit.org/show_bug.cgi?id=199245
3021         rdar://problem/51687723
3022
3023         Reviewed by Tim Horton.
3024
3025         * Configurations/SDKVariant.xcconfig:
3026
3027 2019-06-25  Kenneth Russell  <kbr@chromium.org>
3028
3029         Script which adjusts include paths in ANGLE's copied headers breaks incremental builds
3030         https://bugs.webkit.org/show_bug.cgi?id=199212
3031
3032         Reviewed by Darin Adler.
3033
3034         Maintain and test a timestamp in adjust-angle-include-paths.sh
3035         in order to avoid touching the headers during each build.
3036
3037         * adjust-angle-include-paths.sh:
3038
3039 2019-06-25  Ryan Haddad  <ryanhaddad@apple.com>
3040
3041         Unreviewed, rolling out r246825.
3042
3043         Breaks internal builds.
3044
3045         Reverted changeset:
3046
3047         "Script which adjusts include paths in ANGLE's copied headers
3048         breaks incremental builds"
3049         https://bugs.webkit.org/show_bug.cgi?id=199212
3050         https://trac.webkit.org/changeset/246825
3051
3052 2019-06-25  Kenneth Russell  <kbr@chromium.org>
3053
3054         Script which adjusts include paths in ANGLE's copied headers breaks incremental builds
3055         https://bugs.webkit.org/show_bug.cgi?id=199212
3056
3057         Reviewed by Darin Adler.
3058
3059         Maintain and test a timestamp in adjust-angle-include-paths.sh
3060         in order to avoid touching the headers during each build.
3061
3062         * adjust-angle-include-paths.sh:
3063
3064 2019-06-18  Kenneth Russell  <kbr@chromium.org>
3065
3066         Add preliminary ANGLE backend to WebCore
3067         https://bugs.webkit.org/show_bug.cgi?id=197755
3068
3069         Reviewed by Dean Jackson.
3070
3071         Add a build step which processes ANGLE's copied public headers so they
3072         can all be referred to under the <ANGLE/xyz.h> prefix. This avoids
3073         touching ANGLE's headers and allows WebCore to include them with no
3074         additional include path modifications.
3075
3076         * ANGLE.xcodeproj/project.pbxproj:
3077         * adjust-angle-include-paths.sh: Added.
3078
3079 2019-06-17  Ryan Haddad  <ryanhaddad@apple.com>
3080
3081         Unreviewed, rolling out r246501.
3082
3083         Breaks Apple internal builds.
3084
3085         Reverted changeset:
3086
3087         "Support using ANGLE as the backend for the WebGL
3088         implementation"
3089         https://bugs.webkit.org/show_bug.cgi?id=197755
3090         https://trac.webkit.org/changeset/246501
3091
3092 2019-06-17  Kenneth Russell  <kbr@chromium.org>
3093
3094         Support using ANGLE as the backend for the WebGL implementation
3095         https://bugs.webkit.org/show_bug.cgi?id=197755
3096
3097         Reviewed by Dean Jackson.
3098
3099         Add a build step which processes ANGLE's copied public headers so they
3100         can all be referred to under the <ANGLE/xyz.h> prefix. This avoids
3101         touching ANGLE's headers and allows WebCore to include them with no
3102         additional include path modifications.
3103
3104         * ANGLE.xcodeproj/project.pbxproj:
3105         * adjust-angle-include-paths.sh: Added.
3106
3107 2019-06-12  Justin Fan  <justin_fan@apple.com>
3108
3109         [WebGL] ANGLE Extension directive location incorrectly enforced for webgl 1.0
3110         https://bugs.webkit.org/show_bug.cgi?id=198811
3111
3112         Reviewed by Dean Jackson.
3113
3114         Apply ANGLE change from https://chromium-review.googlesource.com/c/angle/angle/+/1648661 to
3115         prevent enforcing ESSL late extension rule on WebGL 1.0 shaders.
3116
3117         * src/compiler/preprocessor/DiagnosticsBase.cpp:
3118         (angle::pp::Diagnostics::message):
3119         * src/compiler/preprocessor/DiagnosticsBase.h:
3120         * src/compiler/preprocessor/DirectiveParser.cpp:
3121         (angle::pp::DirectiveParser::parseExtension):
3122
3123 2019-05-23  Don Olmstead  <don.olmstead@sony.com>
3124
3125         [CMake] Use target oriented design for bmalloc
3126         https://bugs.webkit.org/show_bug.cgi?id=198046
3127
3128         Reviewed by Konstantin Tokarev.
3129
3130         Remove WEBKIT_COPY_FILES from CMakelists.txt now that it is in WebKitMacros.
3131
3132         * CMakeLists.txt:
3133
3134 2019-05-14  Miguel Gomez  <magomez@igalia.com>
3135
3136         REGRESSION(r245088): [GTK] Several WebGL tests failing
3137         https://bugs.webkit.org/show_bug.cgi?id=197880
3138
3139         Reviewed by Carlos Garcia Campos.
3140
3141         Enable GLSL compiler output for WebKitGTK.
3142
3143         * PlatformGTK.cmake: Added.
3144
3145 2019-05-13  Alex Christensen  <achristensen@webkit.org>
3146
3147         Build more ANGLE files
3148         https://bugs.webkit.org/show_bug.cgi?id=197787
3149
3150         Reviewed by Simon Fraser.
3151
3152         * ANGLE.xcodeproj/project.pbxproj:
3153         * src/gpu_info_util/SystemInfo.cpp:
3154         (angle::ParseMacMachineModel):
3155         * src/gpu_info_util/SystemInfo_mac.mm:
3156         (angle::GetSystemInfo):
3157         * src/libANGLE/renderer/gl/cgl/DisplayCGL.mm:
3158         * src/libANGLE/renderer/gl/cgl/IOSurfaceSurfaceCGL.mm:
3159         (rx::IOSurfaceSurfaceCGL::IOSurfaceSurfaceCGL):
3160         (rx::IOSurfaceSurfaceCGL::validateAttributes):
3161         * src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.h:
3162         * src/libANGLE/renderer/gl/cgl/WindowSurfaceCGL.mm:
3163         (rx::WindowSurfaceCGL::initialize):
3164         (-[SwapLayer initWithSharedState:withContext:withFunctions:]): Deleted.
3165
3166 2019-05-10  Michael Catanzaro  <mcatanzaro@igalia.com>
3167
3168         Fix a bunch of compiler warnings
3169         https://bugs.webkit.org/show_bug.cgi?id=197785
3170
3171         Reviewed by Don Olmstead.
3172
3173         Add compiler flags to suppress various warnings triggered by the new version of ANGLE.
3174
3175         * CMakeLists.txt:
3176
3177 2019-05-09  Don Olmstead  <don.olmstead@sony.com>
3178
3179         [ANGLE] Update ANGLE
3180         https://bugs.webkit.org/show_bug.cgi?id=197676
3181         <rdar://problem/50609501>
3182
3183         Reviewed by Alex Christensen.
3184
3185         * changes.diff:
3186         Updated with all the previous fixes.
3187         * include/EGL/eglplatform.h:
3188         Use the more generic name USE_SYSTEM_EGL not USE_WPE.
3189         * src/common/debug.h:
3190         Fix a stray COMPILER_GCC to be __GNUC__.
3191
3192 2019-05-08  Alex Christensen  <achristensen@webkit.org>
3193
3194         Fix internal and Windows builds.
3195
3196         * ANGLE.txt: Added.
3197         Restore this file.  It was deleted, but it's needed.
3198         * GLESv2.cmake:
3199         It turns out CompositorNativeWindow11.cpp and Renderer11.cpp are needed, but the bot doesn't seem to have the right SDK.
3200
3201 2019-05-08  Alex Christensen  <achristensen@webkit.org>
3202
3203         Fix High Sierra and Windows builds.
3204
3205         * GLESv2.cmake:
3206         CompositorNativeWindow11.cpp was also having a hard time compiling on the bots.
3207         * src/libANGLE/validationES3.cpp:
3208         (gl::ValidateBindFragDataLocationIndexedEXT):
3209         Remove a check for if an unsigned integer is less than 0.
3210
3211 2019-05-08  Alex Christensen  <achristensen@webkit.org>
3212
3213         Fix High Sierra and Windows builds.
3214
3215         * src/common/utilities.cpp:
3216         (gl::priv::gLineModes):
3217         * src/common/utilities.h:
3218         (gl::IsLineMode):
3219         Don't have a global constructor.  Use a function scoped static variable instead.
3220         * GLESv2.cmake:
3221         Renderer11.cpp was not building successfully on the bots.
3222         I don't think it's needed, so just don't build it.
3223
3224 2019-05-08  Alex Christensen  <achristensen@webkit.org>
3225
3226         Fix High Sierra build.
3227
3228         * src/libANGLE/State.cpp:
3229         (gl::State::kBufferSetters):
3230         * src/libANGLE/State.h:
3231         (gl::State::setBufferBinding):
3232         Remove the need for a global constructor.
3233
3234 2019-05-08  Don Olmstead  <don.olmstead@sony.com>
3235
3236         Update ANGLE
3237         https://bugs.webkit.org/show_bug.cgi?id=197676
3238
3239         Reviewed by Alex Christensen.
3240
3241         Many changed files.  Updated to trunk ANGLE 565441b1078b.
3242
3243 2019-04-29  Alex Christensen  <achristensen@webkit.org>
3244
3245         <rdar://problem/50299396> Fix internal High Sierra build
3246         https://bugs.webkit.org/show_bug.cgi?id=197388
3247
3248         * Configurations/Base.xcconfig:
3249
3250 2019-04-25  Alex Christensen  <achristensen@webkit.org>
3251
3252         Start using C++17
3253         https://bugs.webkit.org/show_bug.cgi?id=197131
3254
3255         Reviewed by Darin Adler.
3256
3257         * Configurations/Base.xcconfig:
3258
3259 2019-03-22  Keith Rollin  <krollin@apple.com>
3260
3261         Enable ThinLTO support in Production builds
3262         https://bugs.webkit.org/show_bug.cgi?id=190758
3263         <rdar://problem/45413233>
3264
3265         Reviewed by Daniel Bates.
3266
3267         Enable building with Thin LTO in Production when using Xcode 10.2 or
3268         later. This change results in a 1.45% progression in PLT5. Full
3269         Production build times increase about 2-3%. Incremental build times
3270         are more severely affected, and so LTO is not enabled for local
3271         engineering builds.
3272
3273         LTO is enabled only on macOS for now, until rdar://problem/49013399,
3274         which affects ARM builds, is fixed.
3275
3276         To change the LTO setting when building locally:
3277
3278         - If building with `make`, specify WK_LTO_MODE={none,thin,full} on the
3279           command line.
3280         - If building with `build-webkit`, specify --lto-mode={none,thin,full}
3281           on the command line.
3282         - If building with `build-root`, specify --lto={none,thin,full} on the
3283           command line.
3284         - If building with Xcode, create a LocalOverrides.xcconfig file at the
3285           top level of your repository directory (if needed) and define
3286           WK_LTO_MODE to full, thin, or none.
3287
3288         * Configurations/Base.xcconfig:
3289
3290 2019-02-23  Keith Miller  <keith_miller@apple.com>
3291
3292         Add new mac target numbers
3293         https://bugs.webkit.org/show_bug.cgi?id=194955
3294
3295         Reviewed by Tim Horton.
3296
3297         * Configurations/Base.xcconfig:
3298         * Configurations/DebugRelease.xcconfig:
3299
3300 2019-02-20  Andy Estes  <aestes@apple.com>
3301
3302         [Xcode] Add SDKVariant.xcconfig to various Xcode projects
3303         https://bugs.webkit.org/show_bug.cgi?id=194869
3304
3305         Rubber-stamped by Jer Noble.
3306
3307         * ANGLE.xcodeproj/project.pbxproj:
3308
3309 2019-01-18  Jer Noble  <jer.noble@apple.com>
3310
3311         SDK_VARIANT build destinations should be separate from non-SDK_VARIANT builds
3312         https://bugs.webkit.org/show_bug.cgi?id=189553
3313
3314         Reviewed by Tim Horton.
3315
3316         * Configurations/Base.xcconfig:
3317         * Configurations/SDKVariant.xcconfig: Added.
3318
3319 2019-01-17  Truitt Savell  <tsavell@apple.com>
3320
3321         Unreviewed, rolling out r240124.
3322
3323         This commit broke an internal build.
3324
3325         Reverted changeset:
3326
3327         "SDK_VARIANT build destinations should be separate from non-
3328         SDK_VARIANT builds"
3329         https://bugs.webkit.org/show_bug.cgi?id=189553
3330         https://trac.webkit.org/changeset/240124
3331
3332 2019-01-17  Jer Noble  <jer.noble@apple.com>
3333
3334         SDK_VARIANT build destinations should be separate from non-SDK_VARIANT builds
3335         https://bugs.webkit.org/show_bug.cgi?id=189553
3336
3337         Reviewed by Tim Horton.
3338
3339         * Configurations/Base.xcconfig:
3340         * Configurations/SDKVariant.xcconfig: Added.
3341
3342 2019-01-15  David Kilzer  <ddkilzer@apple.com>
3343
3344         clang-tidy: Fix unnecessary copy of for loop variables in ANGLE
3345         <https://webkit.org/b/193443>
3346
3347         Reviewed by Alex Christensen.
3348
3349         Fix unwanted copying of loop variables by making them const
3350         references.
3351
3352         * src/compiler/preprocessor/MacroExpander.cpp:
3353         (pp::MacroExpander::ScopedMacroReenabler::~ScopedMacroReenabler):
3354         - Prevents copy and reference churn of std::shared_ptr<Macro>
3355           objects.
3356         * src/compiler/translator/Compiler.cpp:
3357         (sh::TCompiler::useAllMembersInUnusedStandardAndSharedBlocks):
3358         - Prevents copy of sh::InterfaceBlock structs.
3359         (sh::TCompiler::initializeOutputVariables):
3360         - Prevents copy of sh::Varying structs.
3361         * src/libANGLE/Program.cpp:
3362         (gl::(anonymous namespace)::IncludeSameArrayElement):
3363         - Prevents copy of std::string objects.
3364
3365 2018-10-03  Dan Bernstein  <mitz@apple.com>
3366
3367         ANGLE part of [Xcode] Update some build settings as recommended by Xcode 10
3368         https://bugs.webkit.org/show_bug.cgi?id=190250
3369
3370         Reviewed by Andy Estes.
3371
3372         * ANGLE.xcodeproj/project.pbxproj: Kept the unreachable code warning off for four files that
3373           were generated by tools: glslang_lex.cpp, glslang_tab.cpp, Tokenizer.cpp, and
3374           ExpressionParser.cpp. Let Xcode update LastUpgradeCheck.
3375
3376         * Configurations/Base.xcconfig: Enabled CLANG_WARN_COMMA, CLANG_WARN_INFINITE_RECURSION,
3377           CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS, CLANG_WARN_SUSPICIOUS_MOVE,
3378           CLANG_WARN_UNREACHABLE_CODE, CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF, and
3379           CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED.
3380
3381 2018-09-21  Adrian Perez de Castro  <aperez@igalia.com>
3382
3383         [GTK] ANGLE's eglplatform.h does not support Wayland-only builds
3384         https://bugs.webkit.org/show_bug.cgi?id=189844
3385
3386         Reviewed by Michael Catanzaro.
3387
3388         This makes it possible to build WebKitGTK+ after r225340 when the
3389         build is configured to support only Wayland, and the X11 headers
3390         are not present.
3391
3392         * changes.diff: Updated.
3393         * include/EGL/eglplatform.h: Include the X11 headers only when
3394         ANGLE_USE_X11 is defined and, for consistency with Mesa's version
3395         of the header, when MESA_EGL_NO_X11_HEADERS is not defined.
3396
3397 2018-08-29  David Kilzer  <ddkilzer@apple.com>
3398
3399         Remove empty directories from from svn.webkit.org repository
3400         <https://webkit.org/b/189081>
3401
3402         * src/angle.xcodeproj: Removed.
3403         * src/common/third_party/numerics: Removed.
3404
3405 2018-08-28  David Kilzer  <ddkilzer@apple.com>
3406
3407         Move PMurHash.{cpp,h} into 'src' folder to match path on disk
3408
3409         * ANGLE.xcodeproj/project.pbxproj:
3410         (src/common/third_party/smhasher/src): Add folder and move
3411         PMurHash.{cpp,h} into it.  This makes tidy-Xcode-project-file
3412         run smoothly when updating the ANGLE project.
3413
3414 2018-08-27  Keith Rollin  <krollin@apple.com>
3415
3416         Unreviewed build fix -- disable LTO for production builds
3417
3418         * Configurations/Base.xcconfig:
3419
3420 2018-08-27  Keith Rollin  <krollin@apple.com>
3421
3422         Build system support for LTO
3423         https://bugs.webkit.org/show_bug.cgi?id=187785
3424         <rdar://problem/42353132>
3425
3426         Reviewed by Dan Bernstein.
3427
3428         Update Base.xcconfig and DebugRelease.xcconfig to optionally enable
3429         LTO.
3430
3431         * Configurations/Base.xcconfig:
3432         * Configurations/DebugRelease.xcconfig:
3433
3434 2018-08-03  Alex Christensen  <achristensen@webkit.org>
3435
3436         Fix spelling of "overridden"
3437         https://bugs.webkit.org/show_bug.cgi?id=188315
3438
3439         Reviewed by Darin Adler.
3440
3441         * src/libANGLE/renderer/ProgramImpl.h:
3442
3443 2018-07-14  Kocsen Chung  <kocsen_chung@apple.com>
3444
3445         Ensure WebKit stack is ad-hoc signed
3446         https://bugs.webkit.org/show_bug.cgi?id=187667
3447
3448         Reviewed by Alexey Proskuryakov.
3449
3450         * Configurations/Base.xcconfig:
3451
3452 2018-07-04  Tim Horton  <timothy_horton@apple.com>
3453
3454         Introduce PLATFORM(IOSMAC)
3455         https://bugs.webkit.org/show_bug.cgi?id=187315
3456
3457         Reviewed by Dan Bernstein.
3458
3459         * Configurations/Base.xcconfig:
3460
3461 2018-06-09  Dan Bernstein  <mitz@apple.com>
3462
3463         [Xcode] Clean up and modernize some build setting definitions
3464         https://bugs.webkit.org/show_bug.cgi?id=186463
3465
3466         Reviewed by Sam Weinig.
3467
3468         * Configurations/Base.xcconfig: Removed definition for macOS 10.11.
3469         * Configurations/DebugRelease.xcconfig: Ditto.
3470
3471 2018-05-30  David Kilzer  <ddkilzer@apple.com>
3472
3473         ANGLE: Fix clang static analyzer issues in GetExecutablePath() and GetExecutableDirectory()
3474         <https://webkit.org/b/186106>
3475         <rdar://problem/40659179>
3476
3477         Reviewed by Alex Christensen.
3478
3479         * src/common/system_utils_linux.cpp:
3480         (angle::GetExecutablePath):
3481         (angle::GetExecutableDirectory):
3482         * src/common/system_utils_mac.cpp:
3483         (angle::GetExecutablePath):
3484         (angle::GetExecutableDirectory):
3485         * src/common/system_utils_win.cpp:
3486         (angle::GetExecutablePath):
3487         (angle::GetExecutableDirectory):
3488
3489 2018-05-22  Ryan Haddad  <ryanhaddad@apple.com>
3490
3491         Unreviewed, rolling out r232052.
3492
3493         Breaks internal builds.
3494
3495         Reverted changeset:
3496
3497         "Use more C++17"
3498         https://bugs.webkit.org/show_bug.cgi?id=185176
3499         https://trac.webkit.org/changeset/232052
3500
3501 2018-05-21  Yusuke Suzuki  <utatane.tea@gmail.com>
3502
3503         Use more C++17
3504         https://bugs.webkit.org/show_bug.cgi?id=185176
3505
3506         Reviewed by JF Bastien.
3507
3508         * Configurations/Base.xcconfig:
3509
3510 2018-04-18  Jer Noble  <jer.noble@apple.com>
3511
3512         Don't put build products into WK_ALTERNATE_WEBKIT_SDK_PATH for engineering builds
3513         https://bugs.webkit.org/show_bug.cgi?id=184762
3514
3515         Reviewed by Dan Bernstein.
3516
3517         * Configurations/Base.xcconfig:
3518
3519 2018-04-19  David Kilzer  <ddkilzer@apple.com>
3520
3521         Enable Objective-C weak references
3522         <https://webkit.org/b/184789>
3523         <rdar://problem/39571716>
3524
3525         Reviewed by Dan Bernstein.
3526
3527         * Configurations/Base.xcconfig:
3528         (CLANG_ENABLE_OBJC_WEAK): Enable.
3529
3530 2018-03-19  Carlos Alberto Lopez Perez  <clopez@igalia.com>
3531
3532         REGRESSION(r225340): WPE port should not be getting EGL X11 types on ANGLE
3533         https://bugs.webkit.org/show_bug.cgi?id=183749
3534
3535         Reviewed by Alex Christensen.
3536
3537         Add back the USE_WPE ifdef.
3538
3539         * changes.diff:
3540         * include/EGL/eglplatform.h:
3541
3542 2018-03-15  Tim Horton  <timothy_horton@apple.com>
3543
3544         Add and adopt WK_ALTERNATE_FRAMEWORKS_DIR in ANGLE
3545         https://bugs.webkit.org/show_bug.cgi?id=183675
3546         <rdar://problem/38515281>
3547
3548         Reviewed by Dan Bernstein.
3549
3550         * ANGLE.xcodeproj/project.pbxproj:
3551         * Configurations/ANGLE.xcconfig:
3552         * Configurations/Base.xcconfig:
3553
3554 2018-01-27  Dan Bernstein  <mitz@apple.com>
3555
3556         HaveInternalSDK includes should be "#include?"
3557         https://bugs.webkit.org/show_bug.cgi?id=179670
3558
3559         * Configurations/Base.xcconfig:
3560
3561 2018-01-18  Dan Bernstein  <mitz@apple.com>
3562
3563         [Xcode] Streamline and future-proof target-macOS-version-dependent build setting definitions
3564         https://bugs.webkit.org/show_bug.cgi?id=181803
3565
3566         Reviewed by Tim Horton.
3567
3568         * Configurations/Base.xcconfig: Updated.
3569         * Configurations/DebugRelease.xcconfig: Ditto.
3570
3571 2018-01-09  Dan Bernstein  <mitz@apple.com>
3572
3573         Removed some empty directories that were left behind
3574
3575         * src/third_party/murmurhash: Removed.
3576         * third_party: Removed.
3577         * third_party/deqp: Removed.
3578
3579 2017-12-14  David Kilzer  <ddkilzer@apple.com>
3580
3581         Enable -Wstrict-prototypes for WebKit
3582         <https://webkit.org/b/180757>
3583         <rdar://problem/36024132>
3584
3585         Rubber-stamped by Joseph Pecoraro.
3586
3587         * Configurations/Base.xcconfig:
3588         (CLANG_WARN_STRICT_PROTOTYPES): Add. Set to YES.
3589
3590 2017-12-06  Dean Jackson  <dino@apple.com>
3591
3592         Update ANGLE's changes.diff
3593         https://bugs.webkit.org/show_bug.cgi?id=180491
3594
3595         Reviewed by Antoine Quint.
3596
3597         Here is the list of things we've changed from the
3598         ANGLE commit that we merged in.
3599
3600         * changes.diff:
3601
3602 2017-12-06  Dean Jackson  <dino@apple.com>
3603
3604         Some iOS tests failing after ANGLE update
3605         https://bugs.webkit.org/show_bug.cgi?id=180487
3606         <rdar://problem/35885969>
3607
3608         Reviewed by Antoine Quint.
3609
3610         The iOS OpenGL compiler doesn't like function declarations with
3611         nameless array parameters. See:
3612         <rdar://problem/35885989> Nameless array parameters in function declaration cause compiler error
3613
3614         While that is being fixed, tell ANGLE's translator to not cull
3615         the names from parameters. This is not a bug in ANGLE, so we won't
3616         fix it upstream at the moment.
3617
3618         * src/compiler/translator/ParseContext.cpp:
3619         (sh::TParseContext::addFunctionPrototypeDeclaration):
3620
3621 2017-12-01  Michael Catanzaro  <mcatanzaro@igalia.com>
3622
3623         Unreviewed, fix byte order macros and address new -Wunknown-pragmas warnings
3624         https://bugs.webkit.org/show_bug.cgi?id=180177
3625         <rdar://problem/35774734>
3626
3627         I'm not sure how this code was developed, as it seems to have been designed for GCC, but it
3628         does not use any of GCC's documented byte order macros, and accordingly does not work. Let's
3629         fix it to guarantee there are no problems when building with GCC. I presume it should help
3630         Clang as well.
3631
3632         This time, hopefully without breaking 32-bit macOS, where __BYTE_ORDER actually is defined.
3633
3634         * src/common/third_party/smhasher/src/PMurHash.cpp:
3635         (angle::PMurHash32_Process):
3636
3637 2017-12-01  Ryan Haddad  <ryanhaddad@apple.com>
3638
3639         Unreviewed, rolling out r225412.
3640
3641         Breaks 32-bit macOS builds.
3642
3643         Reverted changeset:
3644
3645         "Unreviewed, fix byte order macros and address new -Wunknown-
3646         pragmas warnings"
3647         https://bugs.webkit.org/show_bug.cgi?id=180177
3648         https://trac.webkit.org/changeset/225412
3649
3650 2017-12-01  Michael Catanzaro  <mcatanzaro@igalia.com>
3651
3652         Unreviewed, fix byte order macros and address new -Wunknown-pragmas warnings
3653         https://bugs.webkit.org/show_bug.cgi?id=180177
3654         <rdar://problem/35774734>
3655
3656         I'm not sure how this code was developed, as it seems to have been designed for GCC, but it
3657         does not use any of GCC's documented byte order macros, and accordingly does not work. Let's
3658         fix it to guarantee there are no problems when building with GCC. I presume it should help
3659         Clang as well.
3660
3661         * src/common/third_party/smhasher/src/PMurHash.cpp:
3662         (angle::PMurHash32_Process):
3663
3664 2017-12-01  Tomoki Imai  <Tomoki.Imai@sony.com>
3665
3666         Fix WinCairo build break after r225340
3667         https://bugs.webkit.org/show_bug.cgi?id=180230
3668
3669         Unreviewed build fix.
3670
3671         * CMakeLists.txt: Add missing sources.
3672         * PlatformWin.cmake: Add missing sources.
3673
3674 2017-12-01  Michael Catanzaro  <mcatanzaro@igalia.com>
3675
3676         Unreviewed, fix -Wunknown-pragmas warnings.
3677         https://bugs.webkit.org/show_bug.cgi?id=180177
3678
3679         It seems GCC has started to warn about unrecognized Clang pragmas. Oh well.
3680
3681         This is not sent upstream, because the Clang pragmas appear to be downstream WebKit
3682         additions. changes.diff is not updated, because it was not updated in yesterday's ANGLE
3683         update.
3684
3685         * include/GLSLANG/ShaderVars.h:
3686         * src/libANGLE/Platform.cpp:
3687
3688 2017-11-30  Alex Christensen  <achristensen@webkit.org>
3689
3690         Speculative WinCairo fix.
3691         https://bugs.webkit.org/show_bug.cgi?id=180177
3692
3693         * CMakeLists.txt:
3694         * PlatformWin.cmake:
3695
3696 2017-11-30  Ryan Haddad  <ryanhaddad@apple.com>
3697
3698         Unreviewed build fix, remove executable property from a header file.
3699
3700         * include/KHR/khrplatform.h: Removed property svn:executable.
3701
3702 2017-11-30  Dean Jackson  <dino@apple.com>
3703
3704         Update ANGLE
3705         https://bugs.webkit.org/show_bug.cgi?id=180177
3706         <rdar://problem/35774734>
3707
3708         Reviewed by Alex Christensen.
3709
3710         Huge list of changed files omitted.
3711
3712 2017-07-18  Andy Estes  <aestes@apple.com>
3713
3714         [Xcode] Enable CLANG_WARN_RANGE_LOOP_ANALYSIS
3715         https://bugs.webkit.org/show_bug.cgi?id=174631
3716
3717         Reviewed by Tim Horton.
3718
3719         * Configurations/Base.xcconfig:
3720
3721 2017-07-18  Andy Estes  <aestes@apple.com>
3722
3723         [Xcode] Enable CLANG_WARN_OBJC_LITERAL_CONVERSION
3724         https://bugs.webkit.org/show_bug.cgi?id=174631
3725
3726         Reviewed by Sam Weinig.
3727
3728         * Configurations/Base.xcconfig:
3729
3730 2017-07-18  Andy Estes  <aestes@apple.com>
3731
3732         [Xcode] Enable CLANG_WARN_NON_LITERAL_NULL_CONVERSION
3733         https://bugs.webkit.org/show_bug.cgi?id=174631
3734
3735         Reviewed by Dan Bernstein.
3736
3737         * Configurations/Base.xcconfig:
3738
3739 2017-07-18  Andy Estes  <aestes@apple.com>
3740
3741         [Xcode] Enable CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING
3742         https://bugs.webkit.org/show_bug.cgi?id=174631
3743
3744         Reviewed by Darin Adler.
3745
3746         * Configurations/Base.xcconfig:
3747
3748 2017-07-13  Adrian Perez de Castro  <aperez@igalia.com>
3749
3750         eglplatform.h does not support Wayland
3751         https://bugs.webkit.org/show_bug.cgi?id=163482
3752
3753         This makes it possible to build WebKitGTK+ when the target system has only Wayland support,
3754         but no X11 (and therefore the X11 headers are not present).
3755
3756         Reviewed by Alex Christensen.
3757
3758         * include/EGL/eglplatform.h: Add Wayland typedefs when WL_EGL_PLATFORM is defined (for example
3759         by including wayland-egl.h before including EGL/egl.h). Also, include the X11 headers only
3760         when ANGLE_USE_X11 is defined and, for consistency with Mesa's version of the header, when
3761         MESA_EGL_NO_X11_HEADERS is not defined.
3762
3763 2017-07-03  Andy Estes  <aestes@apple.com>
3764
3765         [Xcode] Add an experimental setting to build with ccache
3766         https://bugs.webkit.org/show_bug.cgi?id=173875
3767
3768         Reviewed by Tim Horton.
3769
3770         * Configurations/DebugRelease.xcconfig: Included ccache.xcconfig.
3771
3772 2017-07-01  Dan Bernstein  <mitz@apple.com>
3773
3774         [macOS] Remove code only needed when building for OS X Yosemite
3775         https://bugs.webkit.org/show_bug.cgi?id=174067
3776
3777         Reviewed by Tim Horton.
3778
3779         * Configurations/Base.xcconfig:
3780         * Configurations/DebugRelease.xcconfig:
3781
3782 2017-06-10  Dan Bernstein  <mitz@apple.com>
3783
3784         Reverted r218056 because it made the IDE reindex constantly.
3785
3786         * Configurations/DebugRelease.xcconfig:
3787
3788 2017-06-10  Dan Bernstein  <mitz@apple.com>
3789
3790         [Xcode] With Xcode 9 developer beta, everything rebuilds when switching between command-line and IDE
3791         https://bugs.webkit.org/show_bug.cgi?id=173223
3792
3793         Reviewed by Sam Weinig.
3794
3795         The rebuilds were happening due to a difference in the compiler options that the IDE and
3796         xcodebuild were specifying. Only the IDE was passing the -index-store-path option. To make
3797         xcodebuild pass that option, too, set CLANG_INDEX_STORE_ENABLE to YES if it is unset, and
3798         specify an appropriate path in CLANG_INDEX_STORE_PATH.
3799
3800         * Configurations/DebugRelease.xcconfig:
3801
3802 2017-05-28  Dan Bernstein  <mitz@apple.com>
3803
3804         [Xcode] ALWAYS_SEARCH_USER_PATHS is set to YES
3805         https://bugs.webkit.org/show_bug.cgi?id=172691
3806
3807         Reviewed by Tim Horton.
3808
3809         * Configurations/Base.xcconfig: Set ALWAYS_SEARCH_USER_PATHS to NO.
3810
3811 2017-05-09  Zan Dobersek  <zdobersek@igalia.com>
3812
3813         Upstream the WPE port
3814         https://bugs.webkit.org/show_bug.cgi?id=171110
3815
3816         Reviewed by Alex Christensen.
3817
3818         * include/EGL/eglplatform.h:
3819         Allow building WPE on platforms that don't provide X11 libraries.
3820
3821 2017-05-04  Don Olmstead  <don.olmstead@am.sony.com>
3822
3823         [Win] Remove redundant macros that are set in the CMake config
3824         https://bugs.webkit.org/show_bug.cgi?id=171571
3825
3826         Reviewed by Brent Fulgham.
3827
3828         * CMakeLists.txt:
3829
3830 2017-04-20  Konstantin Tokarev  <annulen@yandex.ru>
3831
3832         [cmake] Define FORWARDING_HEADERS_DIR in WebKitFS and use it everywhere
3833         https://bugs.webkit.org/show_bug.cgi?id=171071
3834
3835         Reviewed by Michael Catanzaro.
3836
3837         "${DERIVED_SOURCES_DIR}/ForwardingHeaders" path occurs very often in the
3838         build system files. GTK-specifc FORWARDING_HEADERS_DIR variable should
3839         be available for all ports.
3840
3841         * CMakeLists.txt:
3842
3843 2017-04-20  Fujii Hironori  <Hironori.Fujii@sony.com>
3844
3845         [WinCairo] Fix build break after updating ANGLE
3846         https://bugs.webkit.org/show_bug.cgi?id=170980
3847
3848         Reviewed by Brent Fulgham.
3849
3850         * CMakeLists.txt: Added some new source files.
3851         * PlatformMac.cmake: Ditto.
3852         * PlatformWin.cmake: Ditto. Remove a macro 'ANGLE_WEBKIT_WIN'
3853         because SoftLinking is not used anymore.
3854         * src/third_party/systeminfo/: Restored.
3855
3856 2017-04-19  Ryan Haddad  <ryanhaddad@apple.com>
3857
3858         Remove executable property from a header file.
3859
3860         * include/KHR/khrplatform.h: Removed property svn:executable.
3861
3862 2017-04-18  Dean Jackson  <dino@apple.com>
3863
3864         Add the actual content to the files, now that
3865         SVN knows they can have tabs.
3866
3867         * src/third_party/murmurhash/MurmurHash3.cpp:
3868         * src/third_party/murmurhash/MurmurHash3.h:
3869
3870 2017-04-18  Dean Jackson  <dino@apple.com>
3871
3872         WinCairo needs these files I recently removed
3873         from our copy of ANGLE.
3874
3875         * src/third_party/murmurhash/LICENSE: Added.
3876         * src/third_party/murmurhash/MurmurHash3.cpp: Added.
3877         * src/third_party/murmurhash/MurmurHash3.h: Added.
3878
3879 2017-04-18  Dean Jackson  <dino@apple.com>
3880
3881         Still trying to fix Windows.
3882
3883         * PlatformWin.cmake:
3884
3885 2017-04-18  Dean Jackson  <dino@apple.com>
3886
3887         Attempt to fix the Windows build.
3888
3889         * PlatformWin.cmake:
3890
3891 2017-04-18  Dean Jackson  <dino@apple.com>
3892
3893         Update ANGLE
3894         https://bugs.webkit.org/show_bug.cgi?id=170941
3895         <rdar://problem/31633999>
3896
3897         Reviewed by Alex Christensen.
3898
3899         Huge list of changed files omitted.
3900
3901 2017-04-12  Dan Bernstein  <mitz@apple.com>
3902
3903         [Mac] Future-proof .xcconfig files
3904         https://bugs.webkit.org/show_bug.cgi?id=170802
3905
3906         Reviewed by Tim Horton.
3907
3908         * Configurations/Base.xcconfig:
3909         * Configurations/DebugRelease.xcconfig:
3910
3911 2016-12-20  Tim Horton  <timothy_horton@apple.com>
3912
3913         Remove an ANGLE Markdown file from the ANGLE target
3914         https://bugs.webkit.org/show_bug.cgi?id=166279
3915
3916         Reviewed by Alex Christensen.
3917
3918         * ANGLE.xcodeproj/project.pbxproj:
3919         We don't need to build this, it's not source code.
3920
3921 2016-12-15  Myles C. Maxfield  <mmaxfield@apple.com>
3922
3923         Sort Xcode project files
3924         https://bugs.webkit.org/show_bug.cgi?id=165937
3925
3926         Reviewed by Simon Fraser.
3927
3928         * ANGLE.xcodeproj/project.pbxproj:
3929
3930 2016-12-15  Alex Christensen  <achristensen@webkit.org>
3931
3932         Fix Windows WebGL build after r209832
3933
3934         * CMakeLists.txt:
3935         * include/EGL/egl.h:
3936         * include/GLES2/gl2.h:
3937
3938 2016-12-14  Alex Christensen  <achristensen@webkit.org>
3939
3940         Progress towards using ANGLE to do WebGL rendering
3941         https://bugs.webkit.org/show_bug.cgi?id=165864
3942
3943         Reviewed by Dean Jackson.
3944
3945         * ANGLE.xcodeproj/project.pbxproj:
3946         Compile more files, and add some more "public" headers.
3947         ANGLE is not a public framework, so these headers just go in 
3948         WebKitBuild/Release/usr/local/include/ANGLE to be included when compiling WebCore.
3949         * ANGLE/egl.h: Added.
3950         * ANGLE/eglext.h: Added.
3951         * ANGLE/eglplatform.h: Added.
3952         * ANGLE/entry_points_gles_2_0.h: Added.
3953         * ANGLE/entry_points_gles_2_0_ext.h: Added.
3954         * ANGLE/entry_points_gles_3_0.h: Added.
3955         * ANGLE/export.h: Added.
3956         * ANGLE/gl2.h: Added.
3957         * ANGLE/gl2ext.h: Added.
3958         * ANGLE/gl2platform.h: Added.
3959         * ANGLE/gl3.h: Added.
3960         * ANGLE/gl31.h: Added.
3961         * ANGLE/gl3platform.h: Added.
3962         * ANGLE/khrplatform.h: Added.
3963         Add more forwarding headers.  There are already a few, but we need more.
3964         * CMakeLists.txt:
3965         * PlatformMac.cmake:
3966         Make the frameworks linked to by ANGLE be private so frameworks that link with 
3967         ANGLE don't automatically link with them. This allows me to switch ANGLE from a 
3968         static library to a dynamic library to make sure WebCore isn't directly using OpenGL.
3969         * PlatformWin.cmake:
3970         Move HLSL-specific files to only be built on Windows.
3971         * include/EGL/egl.h:
3972         * include/EGL/eglplatform.h:
3973         * include/GLES2/gl2.h:
3974         * include/GLES2/gl2platform.h:
3975         * include/GLES3/gl3.h:
3976         * include/GLES3/gl31.h:
3977         * include/GLES3/gl32.h:
3978         * include/GLES3/gl3platform.h:
3979         * src/libGLESv2/entry_points_egl.h:
3980         * src/libGLESv2/entry_points_egl_ext.h:
3981         * src/libGLESv2/entry_points_gles_2_0.h:
3982         * src/libGLESv2/entry_points_gles_2_0_ext.h:
3983         * src/libGLESv2/entry_points_gles_3_0.h:
3984         * src/libGLESv2/entry_points_gles_3_1.h:
3985         Include ANGLE headers as #include <ANGLE/*> instead of #include <KHR/*> or #include <GLES/*><