Skip to content

Commit

Permalink
Update ANGLE to 2024-03-10 (f16eea308ae114f363d854d69f4a3020e4e404f5)
Browse files Browse the repository at this point in the history
rdar://126143832

Reviewed by Antti Koivisto

Contains upstream commits:
git log --oneline eb77635a5d3f45228513faf2752c1ab422114312..f16eea308ae114f363d854d69f4a3020e4e404f5 --pretty=%h %s
f16eea308a Vulkan: Enable QCOM foveated rendering extensions
e904e37ba3 Vulkan: Enable imageless framebuffer on Samsung drivers
11a2d27f32 Check array index against unsigned array size
26da3174dd Make 2024-03-05 changes compile with clang 15 pt.2
90ae6cbe39 Avoid assert at main prototype when monomorphizing
0f110098cc Avoid assert with multiple memory qualifiers
c55c8ad21c extension XML cleanup
6ba49977d8 CL: Update OpenCL Headers
1452c19542 Android: Add Qualcomm Mobile Reference Device support
a40eeaa9e0 Roll Chromium from 15a5ccdeffb7 to 93f3c55ed974 (614 revisions)
ecaefce00c Vulkan: Disable optimizeWithLoadOp if there is unresolve
4667201495 Vulkan: Add test for midRenderPass clear for MSRTT
aba3705ba7 Vulkan: Completely remove egl::Display from RendererVk
7e065b6f4d Fix SRV and RTV confliction
74af31adca GL: Add ClearsWithGapsNeedFlush workaround
4a5b9307be android_helper: support angle_deqp_egl_tests
49abf72f61 Roll vulkan-deps from 9cd617cb0454 to 3b14ca63bd7b (6 revisions)
dcc79a2764 Roll Chromium from 632158ced47e to 15a5ccdeffb7 (1166 revisions)
91ddf851c4 Vulkan: support QCOM foveated rendering extensions
39f29f65c4 Ensure unary math op parse to an node on error
c71de8688c Add workaround for ext dynamic state on Win/Intel
4e9fbb36f2 Metal: Remove AccessField(.., ImmutableString)
e38cf95a58 Metal: Release prov. vertex buffers on event set
51702d791d Make 2024-03-05 changes compile with clang 15
d76505b8c3 Manual roll vulkan-deps from 12f9cddb3ff7 to 9cd617cb0454 (42 revisions)
b2773c110f Vulkan: Bug fix in immutable sampler pipeline layout recreation
3c08d69612 CL: Add DEVICE_NOT_FOUND case for context creation
f044aaf821 Vulkan: Create instance/device without access to Display
47cd0529f1 Fix assert invoking #line during macro invocation
27423bffff Metal: Generate names for rewritten inputs
2ad7b23b13 Add a missing #include.
545e3f6e11 Vulkan: Decouple RendererVk from egl::BlobCache
95294b2468 Android: Add Galaxy S22 support (Xclipse)
5678ad09aa Roll Chromium from 43d81add625d to 632158ced47e (570 revisions)
0ad73958dc Deduplicate and fix ConstStrLen implementations
258b751f57 OpenCL/Vulkan: Fix processedOptions whitespace
b978974d98 Update frontend support for QCOM foveated extensions
3fa8d578ad Make appendDecimal use the last char of the buffer
39040b0b89 Vulkan: Decouple RendererVk from EGL attributes
4e6fe5e0db Vulkan: Cache ImageLoadContext in context
871a309c72 Fix layout(index=) parse assert on es 100 shaders
ec6d628863 egl: Add logic to select preferred display
799997d427 Roll Chromium from 40412b90c691 to 43d81add625d (324 revisions)
fc440afa62 Vulkan: Move DS builder class to Vk utils
f85b6970a9 OpenCL/Vulkan: Implement program get[Build]Info
0ed0de4f0b OpenCL/Vulkan: Add initial program build support
1c2d2417c9 Bugfix in CreateWithEGLConfig1010102Support test
f26c8d0874 Roll VK-GL-CTS from d023c17ac299 to 1918ab4d4806 (13 revisions)
21381f5e1c Roll Chromium from 6b34297e693d to 40412b90c691 (533 revisions)
2ee295b475 Vulkan: Add per-level image update tracker
1ceddbf697 OpenCL/Vulkan: Add createProgram routines
f7cd1c5606 Tests: Add Toca Life World trace
56a291e819 Rework external image capture
8142dde7f4 Tests: Add Pokemon Masters Ex trace
b45b350ade Add skip for Pokemon Masters Ex validation warning
69f5e9ca60 Roll vulkan-deps from f43c5512f6d7 to 12f9cddb3ff7 (6 revisions)
19e725e49c Roll Chromium from 579e74402476 to 6b34297e693d (578 revisions)
4d36224267 Vulkan: Remove call to angle::GetSystemInfo()
cdf6220c28 Reland "Vulkan: Feature addition for QCOM foveated rendering extensions"
a971e5b42e Account for zero vector axes in Mat4::Rotate(...)
434a5b0170 Fix #2 upload_results_to_perf_dashboard usage
057db6ef57 Add ANGLE experimental S22 build and test
f8dac42e95 Fix upload_results_to_perf_dashboard usage
dbbcf33eeb Roll vulkan-deps from 28960bf4a098 to f43c5512f6d7 (13 revisions)
d334a6f265 Roll Chromium from cc3c5664ec19 to 579e74402476 (619 revisions)
a627dd8976 Revert "Vulkan: Feature addition for QCOM foveated rendering extensions"
6eaaad7c60 Create ImageHelper.
75c8ef1c63 Update cached component type masks on attachment redefinitions
6f2daf0588 Context: Limit max vtx uniform vectors to 256 during capture
2fb425d284 Roll vulkan-deps from dd6c2371c85d to 28960bf4a098 (10 revisions)
b0215166ed Roll SwiftShader from 0f69b790c7a4 to bbe6452b420c (1 revision)
9100f2ec79 Roll Chromium from 16b5225bad88 to cc3c5664ec19 (580 revisions)
f0af4730d9 Vulkan: Catch misuse of AddToPNextChain
72cf9915f5 Vulkan: Feature addition for QCOM foveated rendering extensions
0afcac60ed Handle count = 0 in DrawElementsIndirect
3c517e457a Vulkan: Process ClearEmulatedChannels update first
38cc4cf099 Vulkan: Update flushStagedUpdate to use switchcase
58c20052bb Fix build error when git history not fully available
d354c4dca1 Roll VK-GL-CTS from d15e5faec700 to d023c17ac299 (1 revision)
425be99db6 Roll vulkan-deps from 602ab4120d74 to dd6c2371c85d (8 revisions)
1fe63fecab Roll SwiftShader from eb75201a4e03 to 0f69b790c7a4 (1 revision)
834ca37fa6 Roll Chromium from b54ff9b1d5ed to 16b5225bad88 (644 revisions)
acba61cb3e Fix Vulkan driver version for Win/Intel
c758dc03c4 GL: Adjust disableRenderSnorm condition
6a88437dc1 Roll VK-GL-CTS from cf5313984f57 to d15e5faec700 (1 revision)
db88630858 Roll VK-GL-CTS from c402aa4fc1f1 to cf5313984f57 (7 revisions)
bd1b918a5a Roll vulkan-deps from 004d9803b30c to 602ab4120d74 (6 revisions)
33a3395599 Roll Chromium from cc824ffe820c to b54ff9b1d5ed (616 revisions)
5a4bfd61fd Metal: Separate struct definition from function return
7f29c70360 Roll vulkan-deps from b040470c0fde to 004d9803b30c (5 revisions)
b06dbffd1c Roll Chromium from 5f0b8ba66cd4 to cc824ffe820c (635 revisions)
cd63c5d477 Fix build failures targetting iOS 17.4
8c503c1b05 Add skip for 07753 validation error in trace
bcf814fda5 Vulkan: Constrain the dependency on ContextVk in BufferHelper
f43b9f87cf Roll vulkan-deps from 5fa0abb9413b to b040470c0fde (5 revisions)
0f6386a82e Roll Chromium from 98827507560a to 5f0b8ba66cd4 (624 revisions)
f546983cc8 Add test and skip for 07753 validation error
8346addbd0 Contain X11 includes and free usage of common terms
1ee04579b4 Metal: Re-enable asm inejction into loops on MacOS 12+
21c0d31cd6 OpenCL: Only build clspv for Vk backend
b7bacdb746 GL: Generate mipmaps through draw calls on Pixel7/Pixel8.
2b1ef00ad5 Metal: Fix validation for anonymous struct arrays
19e21b1e0b OpenCL/Vulkan: Add initial support for cmdQueue
f4d5644c9f Instantiate dawn backend in angle_end2end_tests
b7d0a18bb1 Roll vulkan-deps from 13783d616289 to 5fa0abb9413b (10 revisions)
9f16b585cb Roll Chromium from 2905059a5737 to 98827507560a (299 revisions)
e17dd5a408 Roll vulkan-deps from 063ea20a64fc to 13783d616289 (25 revisions)
e3badd04cc Roll Chromium from 9d4a35b46e1e to 2905059a5737 (725 revisions)
e04b7c7392 Vulkan: Expand feature to enable sample usage for all AHBs
e08e82b6de CL: On kernel arg validation use right sizes
9d453e579e Fix ASSERT in non-global precise var decls
bde26cc4de Roll VK-GL-CTS from b9ec0d4bdf99 to c402aa4fc1f1 (13 revisions)
372876879b Android: support running angle_unittests via android_helper
a6616081f2 Add missing include
af56ca61bb OpenCL/Vulkan: Initial support for context
298abbc156 Roll Chromium from 29bec8631d2f to 9d4a35b46e1e (1220 revisions)
3ca8befb24 Vulkan: Handle multi-context apps in pipeline cache graphs
6607a2b98d Vulkan: Add support for VK_EXT_vertex_input_dynamic_state
bff0b1e43d Change enum value for webgpu to unused value.
6d4706bfb9 WGPU: Add a angle_dawn_dir build override.
aa244358af Reland "Vulkan: Get rid of X11 include in DisplayVkXcb.cpp"
6d589ff6a3 Trace perf: support custom thermal throttling for tests
ec2603d69f Fix build in absence of SSE support
b380ed1f98 Vulkan: Add EGL_ANGLE_global_fence_sync
40dfb3a8bd Fix length() translation for clip/cull distance arrays
d6ceac9159 Metal: Add support for binding slices to images
195c142d7e GLSL test for side effects in prune-able loop
e8a3493f80 Initialize DisplayWgpu
2cae27c296 Vulkan: Enable the doubleDepthBiasConstantFactor feature on NV
197beb4de8 Metal: Crash if for loop body is optimized away
dbc6bd9d4e Reland "Vulkan: Fix alignment issues with SecondaryCommandBuffer"
c673c83758 OpenCL/Vulkan: Initial support for platform/device
b8e56d5d6d Fix an assert when overwriting TexImage binding
243f8ad99f Revert "Vulkan: Fix alignment issues with SecondaryCommandBuffer"
7490ad4d79 Roll vulkan-deps from 2cedf06e4cdf to 063ea20a64fc (7 revisions)
d8340c15c7 Roll Chromium from b650d7fcd665 to 29bec8631d2f (631 revisions)
e53270c9ca Vulkan: Fix alignment issues with SecondaryCommandBuffer
e45b2fd89d Vulkan: Implement ANGLE_translated_shader_source
d9665098a3 Do not use hardcoded ".cr.so" extension for android component builds
9d344b5c82 Uniform block reference in constuctors crash
ebc151d514 Roll vulkan-deps from 4985acbd814d to 2cedf06e4cdf (12 revisions)
2cbf6613c1 Roll Chromium from 3009d13b1e1a to b650d7fcd665 (3044 revisions)
cb7d3cc206 Treat clip/cull distance built-ins as having side effects
e784b1ec82 Manual roll dawn
239e8caa44 Capture/Replay: Disallow concurrent ninja processes.
9fd5167e1f Roll vulkan-deps from 3834da2004ec to 4985acbd814d (77 revisions)
eaddd3baa5 Vulkan: use linear chroma filter for ycbcr by default
1d752a10a7 Roll Chromium from c1ca24b91ed5 to 3009d13b1e1a (567 revisions)
275e6f4fc5 D3D: Add multiplanar support to d3d11 glTexSubImage2D
e489dac03a Allow BGRA -> RGBA for glCopyTex[Sub]Image
5d9abeca4a Revert "Suppress VUID-VkGraphicsPipelineCreateInfo-dynamicRendering-06576"
56e5fa804b Mark bison deps as not shipped
58ccdab977 Roll VK-GL-CTS from b3344240e7fc to b9ec0d4bdf99 (8 revisions)
c3d06480e5 Add dawn to IGNORED_DIRECTORIES.
73fa1b08d0 Use -fno-define-target-os-macros for libpng
3ad163d091 Vulkan: Don't attach format features 2 version of AHB structure
475784f5a6 suppress VUID-VkPipelineVertexInputStateCreateInfo-pNext-pNext
c603a4f199 Don't perf warn about ETC1->ETC2 emulation as it is efficient
ef78e57015 Revert "Vulkan: disable warmUpPipelineCacheAtLink for Venus"
f431641a94 Revert "Vulkan: Get rid of X11 include in DisplayVkXcb.cpp"
ab71d75104 Fix an assert on multidim array constructors
8abbe2836b Vulkan: Get rid of X11 include in DisplayVkXcb.cpp
98d3f32722 Change python import conditions to match dawn's.
cf77126a7f Turn off ADC explicitly
e62bd70a6c Metal: Disable Metal on older Mac models with GPU family 1.
d05c9a5ee6 Frontend support for QCOM foveated extensions
11eb5eb7ac Traces: support checkout of individual traces
9d165231e1 Roll Chromium from 37f9e1b14cf7 to c1ca24b91ed5 (609 revisions)
5a0615588a Vulkan: Update dynamic buffer size policy
efd35e3dfe Roll VK-GL-CTS from 1aeae2d1d57e to b3344240e7fc (2 revisions)
39b9d94750 Suppress VUID-VkGraphicsPipelineCreateInfo-dynamicRendering-06576
f5f3304a2b Vulkan: Simplify handling of YUV filtering support
d5720c8653 Reland "Add third_party/perfetto"
c70c329e10 Vulkan: Fix texture copy vs pre-rotation
ffe758b16b Roll VK-GL-CTS from fe0d0f90469f to 1aeae2d1d57e (11 revisions)
82ba79ffea OpenCL: Update CLtypes.h to cl_types.h
0c3a6aa6dc Roll SwiftShader from d040a5bab638 to eb75201a4e03 (5 revisions)
a45a6c1d31 Roll Chromium from 861058c0b131 to 37f9e1b14cf7 (513 revisions)
f8c06f103a OpenCL: Add types to cl_mem origin and region
ecc35205ee Move uniform block dirty bits to State
ea1cea778c Roll Chromium from d3635c12e43a to 861058c0b131 (574 revisions)
1abfdc3732 Remove suppression of VVL error
6340ed68d9 Revert "Add third_party/perfetto"
157088ad5f Add EGL extension for WebGPU
a70b6f56fd Add support for WinUI3/Windows App SDK
0640f65195 USE GCE Credentials for Chrome Bot
be8d1c2467 Roll Chromium from 84709e977bd1 to d3635c12e43a (585 revisions)
0ada0b7f1f Test: Add Plague Inc. trace
b514d7733a Manual roll vulkan-deps from 97f44eb2b9df to 3834da2004ec (22 revisions)
dcffb53ec1 Revert "Clean up ANGLE on system build configuration."
9ca81c7e65 FrameCapture: Handle zero vertex count draws
98846aa8f9 Metal: Temporarily disable asm injection.
e849802953 Roll Chromium from 0fdef08dd9c7 to 84709e977bd1 (621 revisions)
ab4aed3fce Bugfix in PixelLocalStorageTest
5c2fc02b8d Vulkan: Bugfix in ImageFormat
349e75cc37 Suppress VUID-VkFramebufferAttachmentImageInfo-viewFormatCount-09536
0c4d644649 Rework uniform block <-> uniform buffer mapping
4b76bead8f Add third_party/perfetto
4a5abf6d06 Add Dawn checkout condition to .gitmodules
98e0266851 Clean up ANGLE on system build configuration.
c6d827e445 Disable the Context shared lock on Android for Chrome.
3fdf576a0c Vulkan: Workaround Nvidia driver bug with OpSelect
0ea24ef2eb Unsuppress passing tests
863d48627e Work around MSAN complaint with pool allocator - Part 2
3fe4252740 OpenCL: Fix input -> inputs for clspv_c_strings
351b85f222 Roll SwiftShader from 3bc9ccd923da to d040a5bab638 (1 revision)
9545bdbd7f Roll Chromium from 70e6bcc15839 to 0fdef08dd9c7 (58 revisions)
2f4f3dcfb8 Manual roll Chromium from 4d771baa2602 to 70e6bcc15839 (609 revisions)
9318a143b0 Add __asm__("") statements to loop bodies in MSL.
0beed7535d Work around MSAN complaint with pool allocator
6367f5415e Vulkan: supply YcbcrConversionDesc earlier
eaf15b354f Manual roll VK-GL-CTS from 03517cba39ae to fe0d0f90469f (2 revisions)
66517b0b02 Revert "Use ADC for GCE VM"
f405b99905 Make RefCountObject use atomics for the reference count
6c23a4230b Tests: skip one of dEQP texture_border_clamp tests on SwS
02aa605af8 Metal: Include only the <metal_stdlib> header
8034d09c11 Manual roll VK-GL-CTS from 0f6fd3de8110 to 03517cba39ae (14 revisions)
36013d998a Improve build for UWP/Windows 10
cbdbe3bd6e deqp: Unused test expectations do not cause failure, only log
5fb6cfa051 Roll vulkan-deps from 52f65da37e07 to 97f44eb2b9df (17 revisions)
f00263e282 Roll Chromium from 60c7e3d68ae8 to 4d771baa2602 (575 revisions)
e9bd169c05 Vulkan: Fix nullptr in Diagnostics
d0f5a66208 Bugfix in entry points for QCOM foveated extensions
d20c693a84 Android.bp: add empty lines as bpfmt wants
2dfbedee7d Use ADC for GCE VM
127dabe556 Android.bp: Move cflags repeated in each target to cc_defaults
6fcca069eb Add a note on why ANGLE is pinned to C++17
c7ed7da640 Roll vulkan-deps from a2b38a7bbea9 to 52f65da37e07 (8 revisions)
7d30cf9f69 Metal: Simplify sign function translation
52527b8fd1 Roll Chromium from 5bfb2faa963e to 60c7e3d68ae8 (652 revisions)
8e2678463d gn: Enable clspv build on angle_enable_cl
4761bd7c14 Manual roll vulkan-deps from 167fd9d49add to a2b38a7bbea9 (17 revisions)
ac71a59239 Vulkan: updates to pipeline cache graph dumping logic
2978450af1 Vulkan: add etc to bc transcoding perf test.
b007c74dcd GL: Separate dirty bits leading to glUniformBlockBinding
66de849281 GL: Fix UBO binding mapping change
886d0260cf Don't pull Dawn in chromium builds
5857e0d63b Metal: Adjust raster order groups AMD workaround condition
a76e279851 Suppress VUID-vkCmdEndDebugUtilsLabelEXT-commandBuffer-01912
2c8784c9ff Roll Chromium from 2e1050880b38 to 5bfb2faa963e (609 revisions)
600a1a80da Metal: Clamp vector element index references
1100cc5c72 Rename ShaderVariableBuffer
81a43bd703 Tests: skip TexelFetchLodOutOfBounds on SwS
3f56817745 Add third_party/dawn to .gitignore
4cda949b4b Trace tests: extend warmup to at least 1.5s
755372c87a Tests: skip UniformUsageCombinations test on SwS
f794c9c2bb Tests for out-of-bounds LOD in texelFetch
43ecc0312a Roll SwiftShader from 5ab5177fc72d to 3bc9ccd923da (1 revision)
9519348b86 Roll Chromium from 6d5cc7186844 to 2e1050880b38 (298 revisions)
341906d568 Vulkan: Never delay device and queue selection
2431d4dfc9 Metal: Skip array index clamp for constant values
6975fbdfba Manual roll Chromium from 32cda1ad29f0 to 6d5cc7186844 (1322 revisions)
2ba5bb12ab android_helper: fix corner-case byte/string mismatch
c6fbf93dec Vulkan: Fix input attachments leaking into uniform list
317108d6ac Vulkan: Enable recordable bit for RGBA8 and RGB10_A2
f43db42ccf Enable LogGles32Capabilities test for vulkan backend
16a5e8f133 Revert "Prefer linear filtering for YUV for Pixel6+"
3217caa1b9 Roll SwiftShader from 328e794f0c8b to 5ab5177fc72d (1 revision)
e27af543b6 Roll vulkan-deps from c00c99b8e979 to 167fd9d49add (6 revisions)
151c157198 Vulkan: Clean up RGB8-to-RGBA8 ubyte function
fc742305e0 Metal: Simplify geometry functions translation
8a47d6b14f Roll VK-GL-CTS from 04d7f781e691 to 0f6fd3de8110 (15 revisions)
175514c64e Translator: Bundle metadata flags coming out of the translator
07e41ef0e0 Roll vulkan-deps from 9b8079729ca3 to c00c99b8e979 (2 revisions)
0da6522524 Prefer linear filtering for YUV for Pixel6+
291490e291 Manual roll Chromium from 84fab30ecd66 to 32cda1ad29f0 (2747 revisions)
dd936c2314 Android: Build angle libs with a shared copy of libz
f2c00e8c98 Adding Dawn stub backend to ANGLE
fad2adb209 Vulkan: Fix importing external object and using as storage image
f1150231f1 Track WebGL buffer type in gl::Buffer state.
40b6739712 Roll vulkan-deps from 5803e963cb95 to 9b8079729ca3 (7 revisions)
87fb3bf312 Roll SwiftShader from f4819d2276b7 to 328e794f0c8b (1 revision)
d093c3d3c2 Add entry points for QCOM foveated extensions
42d75c7e99 Metal: Fix raster order group AMD workaround
ed2a8ef865 Vulkan: Defer QFOT when acquiring texture with GL_NONE layout
05cd0b4c20 Tests: Add Asphalt 9 2024 trace
b00481fc58 Roll vulkan-deps from 41ee13a742db to 5803e963cb95 (7 revisions)
2e167e0922 Adding Dawn
3a33cbb029 Test for making context current before surface creation
91c981c503 Robust shader compile after shader binary is rejected
eedf3e9e9e Metal: Limit raster order groups workaround to affected GPUs
efeb6570af Suppress ParallelLinkProgramBenchmark.Run/gl_* on Linux
7bc0fa21d2 Roll vulkan-deps from b8c02f610c1d to 41ee13a742db (14 revisions)
572323ccbb Fix program link after backend rejects program binary
e9aa41f567 Trace/Replay: Add multi-context call grouping
3461be1ae8 Version check usages of getPackageInfo() and of()
7d9c1d5fb0 Add a test to check eglInitialize works in multithread
aa309a65e3 Roll VK-GL-CTS from 75a6a8315e20 to 04d7f781e691 (13 revisions)
250b2f681d Add imports for use_resource_processor: true
a06f5f892e Android: Apply rules to global settings on boot
99ca7f240b Android: Add ANGLE to rules so it is non-empty
28290eae4b Metal: Do not try to create buffers exceeding device limits
126d7b10bf Roll vulkan-deps from 124ff11a5e15 to b8c02f610c1d (6 revisions)

Canonical link: https://commits.webkit.org/272448.908@safari-7618-branch
  • Loading branch information
kkinnunen-apple committed Apr 12, 2024
1 parent e75016c commit 9a9141f
Show file tree
Hide file tree
Showing 568 changed files with 160,100 additions and 9,315 deletions.
2 changes: 2 additions & 0 deletions Source/ThirdParty/ANGLE/.gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@
/third_party/clspv/src
/third_party/colorama/src
/third_party/cpu_features/src
/third_party/dawn
/third_party/depot_tools
/third_party/EGL-Registry/src
/third_party/flatbuffers/src
Expand Down Expand Up @@ -74,6 +75,7 @@
/third_party/OpenCL-Docs/src
/third_party/OpenCL-ICD-Loader/src
/third_party/OpenGL-Registry/src
/third_party/perfetto
/third_party/proguard/lib
/third_party/protobuf
/third_party/Python-Markdown
Expand Down
8 changes: 8 additions & 0 deletions Source/ThirdParty/ANGLE/.gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,10 @@
path = third_party/cpu_features/src
url = https://chromium.googlesource.com/external/github.com/google/cpu_features
gclient-condition = checkout_android and not build_with_chromium
[submodule "third_party/dawn"]
path = third_party/dawn
url = https://dawn.googlesource.com/dawn
gclient-condition = not build_with_chromium
[submodule "third_party/depot_tools"]
path = third_party/depot_tools
url = https://chromium.googlesource.com/chromium/tools/depot_tools
Expand Down Expand Up @@ -149,6 +153,10 @@
path = third_party/OpenGL-Registry/src
url = https://chromium.googlesource.com/external/github.com/KhronosGroup/OpenGL-Registry
gclient-condition = not build_with_chromium
[submodule "third_party/perfetto"]
path = third_party/perfetto
url = https://android.googlesource.com/platform/external/perfetto
gclient-condition = not build_with_chromium and checkout_angle_restricted_traces
[submodule "third_party/protobuf"]
path = third_party/protobuf
url = https://chromium.googlesource.com/chromium/src/third_party/protobuf
Expand Down
4 changes: 3 additions & 1 deletion Source/ThirdParty/ANGLE/.gn
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ script_executable = "python3"
# matching these patterns (see "gn help label_pattern" for format) will have
# their includes checked for proper dependencies when you run either
# "gn check" or "gn gen --check".
check_targets = [ "*" ]
# check_targets = [ "*" ]

# These are the list of GN files that run exec_script. This allowlist exists
# to force additional review for new uses of exec_script, which is strongly
Expand Down Expand Up @@ -54,3 +54,5 @@ default_args = {
android32_ndk_api_level = 29
android64_ndk_api_level = 29
}

no_check_targets = [ "third_party/dawn/*" ]
6 changes: 3 additions & 3 deletions Source/ThirdParty/ANGLE/ANGLE.plist
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,13 @@
<key>OpenSourceProject</key>
<string>ANGLE</string>
<key>OpenSourceVersion</key>
<string>eb77635a5d3f45228513faf2752c1ab422114312</string>
<string>f16eea308ae114f363d854d69f4a3020e4e404f5</string>
<key>OpenSourceWebsiteURL</key>
<string>http://code.google.com/p/angleproject/</string>
<key>OpenSourceSCM</key>
<string>git clone https://chromium.googlesource.com/angle/angle &amp;&amp; cd angle &amp;&amp; git checkout eb77635a5d3f45228513faf2752c1ab422114312</string>
<string>git clone https://chromium.googlesource.com/angle/angle &amp;&amp; cd angle &amp;&amp; git checkout f16eea308ae114f363d854d69f4a3020e4e404f5</string>
<key>OpenSourceImportDate</key>
<string>2024-01-12</string>
<string>2024-03-10</string>
<key>OpenSourceLicense</key>
<string>BSD</string>
<key>OpenSourceLicenseFile</key>
Expand Down
8 changes: 8 additions & 0 deletions Source/ThirdParty/ANGLE/ANGLE.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -372,6 +372,8 @@
3AD0D2242988C96D0080D728 /* renderermtl_utils.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 3AD0D2222988C96D0080D728 /* renderermtl_utils.cpp */; };
3AD0D2252988C96D0080D728 /* renderermtl_utils.h in Headers */ = {isa = PBXBuildFile; fileRef = 3AD0D2232988C96D0080D728 /* renderermtl_utils.h */; };
6E27925927EA43F500B1BA86 /* BaseTypes.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 6E27925827EA43F500B1BA86 /* BaseTypes.cpp */; };
7B12E55C2BC7F18D00A7DFD5 /* SeparateStructFromFunctionDeclarations.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 7B12E55A2BC7F18C00A7DFD5 /* SeparateStructFromFunctionDeclarations.cpp */; };
7B12E55D2BC7F18D00A7DFD5 /* SeparateStructFromFunctionDeclarations.h in Headers */ = {isa = PBXBuildFile; fileRef = 7B12E55B2BC7F18D00A7DFD5 /* SeparateStructFromFunctionDeclarations.h */; };
7B19599326C3C22000C09322 /* android_util.h in Headers */ = {isa = PBXBuildFile; fileRef = A303079F230625C6002DA972 /* android_util.h */; };
7B19599426C3C22000C09322 /* android_util.cpp in Sources */ = {isa = PBXBuildFile; fileRef = A303079E230625C6002DA972 /* android_util.cpp */; };
7B19599526C3C64E00C09322 /* xxhash.c in Sources */ = {isa = PBXBuildFile; fileRef = 5CCD594E2284ECD10018F2D8 /* xxhash.c */; };
Expand Down Expand Up @@ -1445,6 +1447,8 @@
7B037F9329E98CF100D23E74 /* SourcesCGL.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SourcesCGL.cpp; path = WebKit/SourcesCGL.cpp; sourceTree = "<group>"; };
7B037F9429E98CF200D23E74 /* SourcesPlatform.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = SourcesPlatform.cpp; path = WebKit/SourcesPlatform.cpp; sourceTree = "<group>"; };
7B037F9529E98CF200D23E74 /* SourcesPlatform-mm.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; name = "SourcesPlatform-mm.mm"; path = "WebKit/SourcesPlatform-mm.mm"; sourceTree = "<group>"; };
7B12E55A2BC7F18C00A7DFD5 /* SeparateStructFromFunctionDeclarations.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SeparateStructFromFunctionDeclarations.cpp; sourceTree = "<group>"; };
7B12E55B2BC7F18D00A7DFD5 /* SeparateStructFromFunctionDeclarations.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SeparateStructFromFunctionDeclarations.h; sourceTree = "<group>"; };
7B24C80928D9A20D00E2DDB1 /* ImmutableString_ESSL_autogen.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ImmutableString_ESSL_autogen.cpp; sourceTree = "<group>"; };
7B24C80B28D9A25000E2DDB1 /* SymbolTable.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SymbolTable.cpp; sourceTree = "<group>"; };
7B24C80C28D9A25000E2DDB1 /* SymbolTable_ESSL_autogen.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = SymbolTable_ESSL_autogen.cpp; sourceTree = "<group>"; };
Expand Down Expand Up @@ -2654,6 +2658,8 @@
5C55D62B22826B9700B5BA2C /* RewriteTexelFetchOffset.h */,
5C55D60322826B9000B5BA2C /* SeparateDeclarations.cpp */,
5C55D61422826B9100B5BA2C /* SeparateDeclarations.h */,
7B12E55A2BC7F18C00A7DFD5 /* SeparateStructFromFunctionDeclarations.cpp */,
7B12E55B2BC7F18D00A7DFD5 /* SeparateStructFromFunctionDeclarations.h */,
FF194FD427432CC2006A97A3 /* SeparateStructFromUniformDeclarations.cpp */,
FF194FD627432CC2006A97A3 /* SeparateStructFromUniformDeclarations.h */,
5C55D61722826B9200B5BA2C /* SimplifyLoopConditions.cpp */,
Expand Down Expand Up @@ -3606,6 +3612,7 @@
7B359DAB2A7CEDAA0016DC59 /* SeparateCompoundExpressions.h in Headers */,
7B359DAD2A7CEDAA0016DC59 /* SeparateCompoundStructDeclarations.h in Headers */,
31CDFF8E2491849800486F27 /* SeparateDeclarations.h in Headers */,
7B12E55D2BC7F18D00A7DFD5 /* SeparateStructFromFunctionDeclarations.h in Headers */,
FF194FE427432CC3006A97A3 /* SeparateStructFromUniformDeclarations.h in Headers */,
31CD0031249184F400486F27 /* serial_utils.h in Headers */,
31CDFFD0249184A700486F27 /* Severity.h in Headers */,
Expand Down Expand Up @@ -4107,6 +4114,7 @@
7B359DA92A7CEDAA0016DC59 /* SeparateCompoundExpressions.cpp in Sources */,
7B359DA62A7CEDAA0016DC59 /* SeparateCompoundStructDeclarations.cpp in Sources */,
DF83E28A2639FD33000825EF /* SeparateDeclarations.cpp in Sources */,
7B12E55C2BC7F18D00A7DFD5 /* SeparateStructFromFunctionDeclarations.cpp in Sources */,
FF194FE227432CC3006A97A3 /* SeparateStructFromUniformDeclarations.cpp in Sources */,
3A2C67032923766600FEDF46 /* serialize_mock.cpp in Sources */,
3A0EBF9C2980B49D002C72BC /* sha1.cc in Sources */,
Expand Down
60 changes: 35 additions & 25 deletions Source/ThirdParty/ANGLE/BUILD.gn
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,10 @@ if (angle_enable_vulkan) {
if (angle_use_wayland) {
import("//build_overrides/wayland.gni")
}
if (angle_enable_wgpu) {
import("//build_overrides/dawn.gni")
import("//build_overrides/tint.gni")
}
if (angle_has_build) {
import("//build/config/linux/pkg_config.gni")
import("//build/config/sanitizers/sanitizers.gni")
Expand Down Expand Up @@ -65,9 +69,8 @@ declare_args() {
angle_glesv2_extension = ""

# Enable share context lock. If it is false, the client need to use gl calls in a threadsafe way.
# Chrome DrDC needs thread safe ANGLE on Android
angle_enable_share_context_lock =
is_android || !build_with_chromium || build_angle_deqp_tests
!build_with_chromium || build_angle_deqp_tests

if (is_android) {
# Use Android TLS slot to store current context.
Expand Down Expand Up @@ -109,6 +112,10 @@ if (angle_build_all) {
if (angle_enable_cl) {
deps += [ "$angle_root/src/libOpenCL:angle_cl" ]
}
if (angle_enable_cl && angle_enable_vulkan) {
# OpenCL through Vulkan in ANGLE requires clspv for online compiler
deps += [ "$angle_clspv_dir:clspv" ]
}
if (angle_build_mesa) {
deps += [ "$angle_root/third_party/mesa" ]
}
Expand Down Expand Up @@ -156,6 +163,9 @@ config("internal_config") {
if (angle_is_winuwp) {
defines += [ "ANGLE_IS_WINUWP" ]
}
if (angle_is_winappsdk) {
defines += [ "ANGLE_IS_WINAPPSDK" ]
}
} else if (is_linux || is_chromeos) {
defines += [ "ANGLE_IS_LINUX" ]
}
Expand Down Expand Up @@ -205,6 +215,12 @@ config("internal_config") {
defines += [ "ANGLE_ENABLE_TRACE_EVENTS=1" ]
}

# Enables pipeline cache graph dump functionality.
# The dump path must have appropriate permissions for this to work.
if (angle_dump_pipeline_cache_graph) {
defines += [ "ANGLE_DUMP_PIPELINE_CACHE_GRAPH=1" ]
}

# Checks that unwind backtrace support for Android is enabled only for debug mode.
assert(is_debug || !angle_enable_unwind_backtrace_support)

Expand Down Expand Up @@ -366,7 +382,7 @@ config("includes_config") {
}

config("angle_uwp_env") {
if (angle_is_winuwp) {
if (angle_is_winuwp && !angle_is_winappsdk) {
defines = [ "WINAPI_FAMILY=WINAPI_FAMILY_PC_APP" ]
}
}
Expand Down Expand Up @@ -934,6 +950,10 @@ config("angle_backend_config") {
configs += [ "src/libANGLE/renderer/null:angle_null_backend_config" ]
}

if (angle_enable_wgpu) {
configs += [ "src/libANGLE/renderer/wgpu:angle_wgpu_backend_config" ]
}

if (angle_enable_metal) {
configs += [ "src/libANGLE/renderer/metal:angle_metal_backend_config" ]
}
Expand Down Expand Up @@ -1084,6 +1104,10 @@ angle_source_set("libANGLE_no_vulkan") {
public_deps += [ "src/libANGLE/renderer/null:angle_null_backend" ]
}

if (angle_enable_wgpu) {
public_deps += [ "src/libANGLE/renderer/wgpu:angle_wgpu_backend" ]
}

if (angle_is_winuwp) {
public_deps += [ "src/libANGLE/renderer/d3d:angle_enable_winuwp" ]
}
Expand Down Expand Up @@ -1322,7 +1346,7 @@ config("shared_library_public_config") {
}
}

if (angle_is_winuwp) {
if (angle_is_winuwp && !angle_is_winappsdk) {
ldflags = [
"/APPCONTAINER",

Expand All @@ -1333,23 +1357,17 @@ config("shared_library_public_config") {
}
}

if (is_android && is_component_build) {
_cr_suffix = ".cr"
} else {
_cr_suffix = ""
}

if (angle_expose_wgl_entry_points) {
_angle_glesv2_library_name = "opengl32${angle_libs_suffix}${_cr_suffix}"
_angle_glesv2_library_name = "opengl32${angle_libs_suffix}"
} else {
_angle_glesv2_library_name = "libGLESv2${angle_libs_suffix}${_cr_suffix}"
_angle_glesv2_library_name = "libGLESv2${angle_libs_suffix}"
}
_angle_glesv2_vulkan_secondaries_library_name =
"libGLESv2_vulkan_secondaries${angle_libs_suffix}${_cr_suffix}"
"libGLESv2_vulkan_secondaries${angle_libs_suffix}"

config("library_name_config") {
_egllib = "libEGL${angle_libs_suffix}${_cr_suffix}"
_vk2egllib = "libEGL_vulkan_secondaries${angle_libs_suffix}${_cr_suffix}"
_egllib = "libEGL${angle_libs_suffix}"
_vk2egllib = "libEGL_vulkan_secondaries${angle_libs_suffix}"
defines = [
"ANGLE_EGL_LIBRARY_NAME=\"${_egllib}\"",
"ANGLE_GLESV2_LIBRARY_NAME=\"${_angle_glesv2_library_name}\"",
Expand Down Expand Up @@ -1712,19 +1730,11 @@ if (is_android && symbol_level != 0) {
action_foreach("compressed_symbols") {
sources = []
foreach(_library, angle_libraries) {
if (is_component_build) {
sources += [ "$root_out_dir/${_library}${angle_libs_suffix}.cr.so" ]
} else {
sources += [ "$root_out_dir/${_library}${angle_libs_suffix}.so" ]
}
sources += [ "$root_out_dir/$_library$angle_libs_suffix$shlib_extension" ]
}
if (angle_enable_vulkan_validation_layers) {
foreach(_layer, vulkan_validation_layers) {
if (is_component_build) {
sources += [ "$root_out_dir/lib${_layer}.cr.so" ]
} else {
sources += [ "$root_out_dir/lib${_layer}.so" ]
}
sources += [ "$root_out_dir/lib$_layer$shlib_extension" ]
}
}

Expand Down
1 change: 1 addition & 0 deletions Source/ThirdParty/ANGLE/CONTRIBUTORS
Original file line number Diff line number Diff line change
Expand Up @@ -176,6 +176,7 @@ Samsung Electronics, Inc.
Hyunchang Kim
Hyunseok Ko
Jaedon Lee
Jaewoo Kim
Jeff Vigil
Jonah Taylor
Kevin Jung
Expand Down
2 changes: 2 additions & 0 deletions Source/ThirdParty/ANGLE/Compiler.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -188,6 +188,8 @@ set(angle_translator_sources
"src/compiler/translator/tree_ops/RewriteTexelFetchOffset.h"
"src/compiler/translator/tree_ops/SeparateDeclarations.cpp"
"src/compiler/translator/tree_ops/SeparateDeclarations.h"
"src/compiler/translator/tree_ops/SeparateStructFromFunctionDeclarations.cpp"
"src/compiler/translator/tree_ops/SeparateStructFromFunctionDeclarations.h"
"src/compiler/translator/tree_ops/SeparateStructFromUniformDeclarations.cpp"
"src/compiler/translator/tree_ops/SeparateStructFromUniformDeclarations.h"
"src/compiler/translator/tree_ops/SimplifyLoopConditions.cpp"
Expand Down
Loading

0 comments on commit 9a9141f

Please sign in to comment.