commit dd6a6461150a5bf61f7071da1de220b7c5415de0
Author: Christoph Moench-Tegeder <cmt@FreeBSD.org>

    ANGLEShader components for FreeBSD
    
    including backfill to make debug build run

diff --git third_party/angle/angle_common_gn/moz.build third_party/angle/angle_common_gn/moz.build
index 7bd7d32284ae..ef4216a1e60c 100644
--- third_party/angle/angle_common_gn/moz.build
+++ third_party/angle/angle_common_gn/moz.build
@@ -136,6 +136,27 @@ if CONFIG["OS_TARGET"] == "Linux":
         "/third_party/angle/src/common/system_utils_posix.cpp"
     ]
 
+if CONFIG["OS_TARGET"] == "FreeBSD":
+
+    DEFINES["ANGLE_USE_VULKAN_DISPLAY"] = True
+    DEFINES["ANGLE_VULKAN_DISPLAY_MODE_HEADLESS"] = True
+    DEFINES["USE_GLIB"] = "1"
+    DEFINES["USE_OZONE"] = "1"
+    DEFINES["_FILE_OFFSET_BITS"] = "64"
+    DEFINES["_LARGEFILE64_SOURCE"] = True
+    DEFINES["_LARGEFILE_SOURCE"] = True
+    DEFINES["__STDC_CONSTANT_MACROS"] = True
+    DEFINES["__STDC_FORMAT_MACROS"] = True
+
+    OS_LIBS += [
+        "dl"
+    ]
+
+    UNIFIED_SOURCES += [
+        "/third_party/angle/src/common/system_utils_freebsd.cpp",
+        "/third_party/angle/src/common/system_utils_posix.cpp"
+    ]
+
 if CONFIG["OS_TARGET"] == "OpenBSD":
 
     DEFINES["EGL_NO_X11"] = True
diff --git third_party/angle/angle_program_version_id_gn/ANGLEShaderProgramVersion.h-22c710649c380411.rsp.in third_party/angle/angle_program_version_id_gn/ANGLEShaderProgramVersion.h-22c710649c380411.rsp.in
new file mode 100644
index 000000000000..65e792afa2f5
--- /dev/null
+++ third_party/angle/angle_program_version_id_gn/ANGLEShaderProgramVersion.h-22c710649c380411.rsp.in
@@ -0,0 +1,855 @@
+/third_party/angle/src/common/BinaryStream.h
+/third_party/angle/src/common/CircularBuffer.h
+/third_party/angle/src/common/Color.h
+/third_party/angle/src/common/Color.inc
+/third_party/angle/src/common/CompiledShaderState.h
+/third_party/angle/src/common/FastVector.h
+/third_party/angle/src/common/FixedQueue.h
+/third_party/angle/src/common/FixedVector.h
+/third_party/angle/src/common/MemoryBuffer.h
+/third_party/angle/src/common/Optional.h
+/third_party/angle/src/common/PackedEGLEnums_autogen.h
+/third_party/angle/src/common/PackedEnums.h
+/third_party/angle/src/common/PackedGLEnums_autogen.h
+/third_party/angle/src/common/PackedCLEnums_autogen.h
+/third_party/angle/src/common/PoolAlloc.h
+/third_party/angle/src/common/SimpleMutex.h
+/third_party/angle/src/common/SynchronizedValue.h
+/third_party/angle/src/common/WorkerThread.h
+/third_party/angle/src/common/aligned_memory.h
+/third_party/angle/src/common/android_util.h
+/third_party/angle/src/common/angleutils.h
+/third_party/angle/src/common/apple_platform_utils.h
+/third_party/angle/src/common/backtrace_utils.h
+/third_party/angle/src/common/base/anglebase/base_export.h
+/third_party/angle/src/common/base/anglebase/containers/mru_cache.h
+/third_party/angle/src/common/base/anglebase/logging.h
+/third_party/angle/src/common/base/anglebase/macros.h
+/third_party/angle/src/common/base/anglebase/no_destructor.h
+/third_party/angle/src/common/base/anglebase/numerics/checked_math.h
+/third_party/angle/src/common/base/anglebase/numerics/checked_math_impl.h
+/third_party/angle/src/common/base/anglebase/numerics/clamped_math.h
+/third_party/angle/src/common/base/anglebase/numerics/clamped_math_impl.h
+/third_party/angle/src/common/base/anglebase/numerics/math_constants.h
+/third_party/angle/src/common/base/anglebase/numerics/ranges.h
+/third_party/angle/src/common/base/anglebase/numerics/safe_conversions.h
+/third_party/angle/src/common/base/anglebase/numerics/safe_conversions_arm_impl.h
+/third_party/angle/src/common/base/anglebase/numerics/safe_conversions_impl.h
+/third_party/angle/src/common/base/anglebase/numerics/safe_math.h
+/third_party/angle/src/common/base/anglebase/numerics/safe_math_arm_impl.h
+/third_party/angle/src/common/base/anglebase/numerics/safe_math_clang_gcc_impl.h
+/third_party/angle/src/common/base/anglebase/numerics/safe_math_shared_impl.h
+/third_party/angle/src/common/base/anglebase/sha1.h
+/third_party/angle/src/common/base/anglebase/sys_byteorder.h
+/third_party/angle/src/common/bitset_utils.h
+/third_party/angle/src/common/debug.h
+/third_party/angle/src/common/entry_points_enum_autogen.h
+/third_party/angle/src/common/event_tracer.h
+/third_party/angle/src/common/hash_containers.h
+/third_party/angle/src/common/hash_utils.h
+/third_party/angle/src/common/log_utils.h
+/third_party/angle/src/common/mathutil.h
+/third_party/angle/src/common/matrix_utils.h
+/third_party/angle/src/common/platform.h
+/third_party/angle/src/common/platform_helpers.h
+/third_party/angle/src/common/span.h
+/third_party/angle/src/common/span_util.h
+/third_party/angle/src/common/string_utils.h
+/third_party/angle/src/common/system_utils.h
+/third_party/angle/src/common/tls.h
+/third_party/angle/src/common/uniform_type_info_autogen.h
+/third_party/angle/src/common/unsafe_buffers.h
+/third_party/angle/src/common/utilities.h
+/third_party/angle/src/common/vector_utils.h
+/third_party/angle/src/libANGLE/CLBitField.h
+/third_party/angle/src/common/Float16ToFloat32.cpp
+/third_party/angle/src/common/MemoryBuffer.cpp
+/third_party/angle/src/common/PackedEGLEnums_autogen.cpp
+/third_party/angle/src/common/PackedEnums.cpp
+/third_party/angle/src/common/PackedGLEnums_autogen.cpp
+/third_party/angle/src/common/PoolAlloc.cpp
+/third_party/angle/src/common/SimpleMutex.cpp
+/third_party/angle/src/common/WorkerThread.cpp
+/third_party/angle/src/common/aligned_memory.cpp
+/third_party/angle/src/common/android_util.cpp
+/third_party/angle/src/common/angleutils.cpp
+/third_party/angle/src/common/base/anglebase/sha1.cc
+/third_party/angle/src/common/debug.cpp
+/third_party/angle/src/common/entry_points_enum_autogen.cpp
+/third_party/angle/src/common/event_tracer.cpp
+/third_party/angle/src/common/mathutil.cpp
+/third_party/angle/src/common/matrix_utils.cpp
+/third_party/angle/src/common/platform_helpers.cpp
+/third_party/angle/src/common/string_utils.cpp
+/third_party/angle/src/common/system_utils.cpp
+/third_party/angle/src/common/tls.cpp
+/third_party/angle/src/common/uniform_type_info_autogen.cpp
+/third_party/angle/src/common/utilities.cpp
+/third_party/angle/src/common/backtrace_utils_noop.cpp
+/third_party/angle/src/common/system_utils_posix.cpp
+/third_party/angle/src/libANGLE/AttributeMap.h
+/third_party/angle/src/libANGLE/BlobCache.h
+/third_party/angle/src/libANGLE/Buffer.h
+/third_party/angle/src/libANGLE/Caps.h
+/third_party/angle/src/libANGLE/CLBitField.h
+/third_party/angle/src/libANGLE/CLRefPointer.h
+/third_party/angle/src/libANGLE/Compiler.h
+/third_party/angle/src/libANGLE/Config.h
+/third_party/angle/src/libANGLE/Constants.h
+/third_party/angle/src/libANGLE/Context.h
+/third_party/angle/src/libANGLE/Context.inl.h
+/third_party/angle/src/libANGLE/Context_gles_1_0_autogen.h
+/third_party/angle/src/libANGLE/Context_gles_2_0_autogen.h
+/third_party/angle/src/libANGLE/Context_gles_3_0_autogen.h
+/third_party/angle/src/libANGLE/Context_gles_3_1_autogen.h
+/third_party/angle/src/libANGLE/Context_gles_3_2_autogen.h
+/third_party/angle/src/libANGLE/Context_gles_ext_autogen.h
+/third_party/angle/src/libANGLE/Debug.h
+/third_party/angle/src/libANGLE/Device.h
+/third_party/angle/src/libANGLE/Display.h
+/third_party/angle/src/libANGLE/EGLSync.h
+/third_party/angle/src/libANGLE/Error.h
+/third_party/angle/src/libANGLE/Error.inc
+/third_party/angle/src/libANGLE/ErrorStrings.h
+/third_party/angle/src/libANGLE/Fence.h
+/third_party/angle/src/libANGLE/Framebuffer.h
+/third_party/angle/src/libANGLE/FramebufferAttachment.h
+/third_party/angle/src/libANGLE/GLES1Renderer.h
+/third_party/angle/src/libANGLE/GLES1Shaders.inc
+/third_party/angle/src/libANGLE/GLES1State.h
+/third_party/angle/src/libANGLE/GlobalMutex.h
+/third_party/angle/src/libANGLE/HandleAllocator.h
+/third_party/angle/src/libANGLE/Image.h
+/third_party/angle/src/libANGLE/ImageIndex.h
+/third_party/angle/src/libANGLE/IndexRangeCache.h
+/third_party/angle/src/libANGLE/InfoLog.h
+/third_party/angle/src/libANGLE/LoggingAnnotator.h
+/third_party/angle/src/libANGLE/MemoryObject.h
+/third_party/angle/src/libANGLE/MemoryProgramCache.h
+/third_party/angle/src/libANGLE/MemoryShaderCache.h
+/third_party/angle/src/libANGLE/Observer.h
+/third_party/angle/src/libANGLE/PixelLocalStorage.h
+/third_party/angle/src/libANGLE/Program.h
+/third_party/angle/src/libANGLE/ProgramExecutable.h
+/third_party/angle/src/libANGLE/ProgramLinkedResources.h
+/third_party/angle/src/libANGLE/ProgramPipeline.h
+/third_party/angle/src/libANGLE/Query.h
+/third_party/angle/src/libANGLE/RefCountObject.h
+/third_party/angle/src/libANGLE/Renderbuffer.h
+/third_party/angle/src/libANGLE/ResourceManager.h
+/third_party/angle/src/libANGLE/ResourceMap.h
+/third_party/angle/src/libANGLE/Sampler.h
+/third_party/angle/src/libANGLE/Semaphore.h
+/third_party/angle/src/libANGLE/Shader.h
+/third_party/angle/src/libANGLE/ShareGroup.h
+/third_party/angle/src/libANGLE/ContextMutex.h
+/third_party/angle/src/libANGLE/SizedMRUCache.h
+/third_party/angle/src/libANGLE/State.h
+/third_party/angle/src/libANGLE/Stream.h
+/third_party/angle/src/libANGLE/Surface.h
+/third_party/angle/src/libANGLE/Texture.h
+/third_party/angle/src/libANGLE/Thread.h
+/third_party/angle/src/libANGLE/TransformFeedback.h
+/third_party/angle/src/libANGLE/Uniform.h
+/third_party/angle/src/libANGLE/VaryingPacking.h
+/third_party/angle/src/libANGLE/Version.h
+/third_party/angle/src/libANGLE/VertexArray.h
+/third_party/angle/src/libANGLE/VertexAttribute.h
+/third_party/angle/src/libANGLE/VertexAttribute.inc
+/third_party/angle/src/libANGLE/angletypes.h
+/third_party/angle/src/libANGLE/angletypes.inc
+/third_party/angle/src/libANGLE/cl_types.h
+/third_party/angle/src/libANGLE/context_private_call.inl.h
+/third_party/angle/src/libANGLE/context_private_call_autogen.h
+/third_party/angle/src/libANGLE/entry_points_utils.h
+/third_party/angle/src/libANGLE/features.h
+/third_party/angle/src/libANGLE/formatutils.h
+/third_party/angle/src/libANGLE/gles_extensions_autogen.h
+/third_party/angle/src/libANGLE/histogram_macros.h
+/third_party/angle/src/libANGLE/queryconversions.h
+/third_party/angle/src/libANGLE/queryutils.h
+/third_party/angle/src/libANGLE/trace.h
+/third_party/angle/src/libANGLE/renderer/BufferImpl.h
+/third_party/angle/src/libANGLE/renderer/CompilerImpl.h
+/third_party/angle/src/libANGLE/renderer/ContextImpl.h
+/third_party/angle/src/libANGLE/renderer/driver_utils.h
+/third_party/angle/src/libANGLE/renderer/DeviceImpl.h
+/third_party/angle/src/libANGLE/renderer/DisplayImpl.h
+/third_party/angle/src/libANGLE/renderer/EGLImplFactory.h
+/third_party/angle/src/libANGLE/renderer/EGLReusableSync.h
+/third_party/angle/src/libANGLE/renderer/EGLSyncImpl.h
+/third_party/angle/src/libANGLE/renderer/FenceNVImpl.h
+/third_party/angle/src/libANGLE/renderer/FormatID_autogen.h
+/third_party/angle/src/libANGLE/renderer/Format.h
+/third_party/angle/src/libANGLE/renderer/FramebufferAttachmentObjectImpl.h
+/third_party/angle/src/libANGLE/renderer/FramebufferImpl.h
+/third_party/angle/src/libANGLE/renderer/GLImplFactory.h
+/third_party/angle/src/libANGLE/renderer/gl/functionsgl_enums.h
+/third_party/angle/src/libANGLE/renderer/ImageImpl.h
+/third_party/angle/src/libANGLE/renderer/MemoryObjectImpl.h
+/third_party/angle/src/libANGLE/renderer/ProgramImpl.h
+/third_party/angle/src/libANGLE/renderer/ProgramExecutableImpl.h
+/third_party/angle/src/libANGLE/renderer/ProgramPipelineImpl.h
+/third_party/angle/src/libANGLE/renderer/QueryImpl.h
+/third_party/angle/src/libANGLE/renderer/RenderbufferImpl.h
+/third_party/angle/src/libANGLE/renderer/RenderTargetCache.h
+/third_party/angle/src/libANGLE/renderer/SamplerImpl.h
+/third_party/angle/src/libANGLE/renderer/SemaphoreImpl.h
+/third_party/angle/src/libANGLE/renderer/ShaderImpl.h
+/third_party/angle/src/libANGLE/renderer/ShareGroupImpl.h
+/third_party/angle/src/libANGLE/renderer/StreamProducerImpl.h
+/third_party/angle/src/libANGLE/renderer/SurfaceImpl.h
+/third_party/angle/src/libANGLE/renderer/SyncImpl.h
+/third_party/angle/src/libANGLE/renderer/TextureImpl.h
+/third_party/angle/src/libANGLE/renderer/TransformFeedbackImpl.h
+/third_party/angle/src/libANGLE/renderer/VertexArrayImpl.h
+/third_party/angle/src/libANGLE/renderer/vulkan/DisplayVk_api.h
+/third_party/angle/src/libANGLE/renderer/copyvertex.h
+/third_party/angle/src/libANGLE/renderer/copyvertex.inc.h
+/third_party/angle/src/libANGLE/renderer/load_functions_table.h
+/third_party/angle/src/libANGLE/renderer/renderer_utils.h
+/third_party/angle/src/libANGLE/renderer/serial_utils.h
+/third_party/angle/src/libANGLE/validationEGL.h
+/third_party/angle/src/libANGLE/validationEGL_autogen.h
+/third_party/angle/src/libANGLE/validationES.h
+/third_party/angle/src/libANGLE/validationES1.h
+/third_party/angle/src/libANGLE/validationES1_autogen.h
+/third_party/angle/src/libANGLE/validationES2.h
+/third_party/angle/src/libANGLE/validationES2_autogen.h
+/third_party/angle/src/libANGLE/validationES3.h
+/third_party/angle/src/libANGLE/validationES31.h
+/third_party/angle/src/libANGLE/validationES31_autogen.h
+/third_party/angle/src/libANGLE/validationES32.h
+/third_party/angle/src/libANGLE/validationES32_autogen.h
+/third_party/angle/src/libANGLE/validationES3_autogen.h
+/third_party/angle/src/libANGLE/validationESEXT.h
+/third_party/angle/src/libANGLE/validationESEXT_autogen.h
+/third_party/angle/src/common/base/anglebase/trace_event/trace_event.h
+/third_party/angle/src/libANGLE/CLPlatform.h
+/third_party/angle/src/libANGLE/renderer/CLPlatformImpl.h
+/third_party/angle/src/libANGLE/CLObject.h
+/third_party/angle/src/libANGLE/renderer/CLContextImpl.h
+/third_party/angle/src/libANGLE/renderer/CLDeviceImpl.h
+/third_party/angle/src/libANGLE/renderer/CLExtensions.h
+/third_party/angle/src/libANGLE/renderer/CLCommandQueueImpl.h
+/third_party/angle/src/libANGLE/renderer/CLEventImpl.h
+/third_party/angle/src/libANGLE/renderer/CLMemoryImpl.h
+/third_party/angle/src/libANGLE/renderer/CLProgramImpl.h
+/third_party/angle/src/libANGLE/renderer/CLSamplerImpl.h
+/third_party/angle/src/libANGLE/renderer/CLKernelImpl.h
+/third_party/angle/src/libANGLE/AttributeMap.cpp
+/third_party/angle/src/libANGLE/BlobCache.cpp
+/third_party/angle/src/libANGLE/Buffer.cpp
+/third_party/angle/src/libANGLE/Caps.cpp
+/third_party/angle/src/libANGLE/Compiler.cpp
+/third_party/angle/src/libANGLE/Config.cpp
+/third_party/angle/src/libANGLE/Context.cpp
+/third_party/angle/src/libANGLE/ContextMutex.cpp
+/third_party/angle/src/libANGLE/Context_gles_1_0.cpp
+/third_party/angle/src/libANGLE/Debug.cpp
+/third_party/angle/src/libANGLE/Device.cpp
+/third_party/angle/src/libANGLE/Display.cpp
+/third_party/angle/src/libANGLE/EGLSync.cpp
+/third_party/angle/src/libANGLE/Error.cpp
+/third_party/angle/src/libANGLE/Fence.cpp
+/third_party/angle/src/libANGLE/Framebuffer.cpp
+/third_party/angle/src/libANGLE/FramebufferAttachment.cpp
+/third_party/angle/src/libANGLE/GLES1Renderer.cpp
+/third_party/angle/src/libANGLE/GLES1State.cpp
+/third_party/angle/src/libANGLE/GlobalMutex.cpp
+/third_party/angle/src/libANGLE/HandleAllocator.cpp
+/third_party/angle/src/libANGLE/Image.cpp
+/third_party/angle/src/libANGLE/ImageIndex.cpp
+/third_party/angle/src/libANGLE/IndexRangeCache.cpp
+/third_party/angle/src/libANGLE/LoggingAnnotator.cpp
+/third_party/angle/src/libANGLE/MemoryObject.cpp
+/third_party/angle/src/libANGLE/MemoryProgramCache.cpp
+/third_party/angle/src/libANGLE/MemoryShaderCache.cpp
+/third_party/angle/src/libANGLE/Observer.cpp
+/third_party/angle/src/libANGLE/PixelLocalStorage.cpp
+/third_party/angle/src/libANGLE/Platform.cpp
+/third_party/angle/src/libANGLE/Program.cpp
+/third_party/angle/src/libANGLE/ProgramExecutable.cpp
+/third_party/angle/src/libANGLE/ProgramLinkedResources.cpp
+/third_party/angle/src/libANGLE/ProgramPipeline.cpp
+/third_party/angle/src/libANGLE/Query.cpp
+/third_party/angle/src/libANGLE/Renderbuffer.cpp
+/third_party/angle/src/libANGLE/ResourceManager.cpp
+/third_party/angle/src/libANGLE/Sampler.cpp
+/third_party/angle/src/libANGLE/Semaphore.cpp
+/third_party/angle/src/libANGLE/Shader.cpp
+/third_party/angle/src/libANGLE/ShareGroup.cpp
+/third_party/angle/src/libANGLE/State.cpp
+/third_party/angle/src/libANGLE/Stream.cpp
+/third_party/angle/src/libANGLE/Surface.cpp
+/third_party/angle/src/libANGLE/Texture.cpp
+/third_party/angle/src/libANGLE/Thread.cpp
+/third_party/angle/src/libANGLE/TransformFeedback.cpp
+/third_party/angle/src/libANGLE/Uniform.cpp
+/third_party/angle/src/libANGLE/VaryingPacking.cpp
+/third_party/angle/src/libANGLE/VertexArray.cpp
+/third_party/angle/src/libANGLE/VertexAttribute.cpp
+/third_party/angle/src/libANGLE/angletypes.cpp
+/third_party/angle/src/libANGLE/es3_copy_conversion_table_autogen.cpp
+/third_party/angle/src/libANGLE/format_map_autogen.cpp
+/third_party/angle/src/libANGLE/formatutils.cpp
+/third_party/angle/src/libANGLE/gles_extensions_autogen.cpp
+/third_party/angle/src/libANGLE/queryconversions.cpp
+/third_party/angle/src/libANGLE/queryutils.cpp
+/third_party/angle/src/libANGLE/renderer/BufferImpl.cpp
+/third_party/angle/src/libANGLE/renderer/ContextImpl.cpp
+/third_party/angle/src/libANGLE/renderer/DeviceImpl.cpp
+/third_party/angle/src/libANGLE/renderer/DisplayImpl.cpp
+/third_party/angle/src/libANGLE/renderer/EGLReusableSync.cpp
+/third_party/angle/src/libANGLE/renderer/EGLSyncImpl.cpp
+/third_party/angle/src/libANGLE/renderer/Format_table_autogen.cpp
+/third_party/angle/src/libANGLE/renderer/FramebufferImpl.cpp
+/third_party/angle/src/libANGLE/renderer/ImageImpl.cpp
+/third_party/angle/src/libANGLE/renderer/ProgramImpl.cpp
+/third_party/angle/src/libANGLE/renderer/ProgramPipelineImpl.cpp
+/third_party/angle/src/libANGLE/renderer/QueryImpl.cpp
+/third_party/angle/src/libANGLE/renderer/RenderbufferImpl.cpp
+/third_party/angle/src/libANGLE/renderer/ShaderImpl.cpp
+/third_party/angle/src/libANGLE/renderer/SurfaceImpl.cpp
+/third_party/angle/src/libANGLE/renderer/TextureImpl.cpp
+/third_party/angle/src/libANGLE/renderer/TransformFeedbackImpl.cpp
+/third_party/angle/src/libANGLE/renderer/VertexArrayImpl.cpp
+/third_party/angle/src/libANGLE/renderer/driver_utils.cpp
+/third_party/angle/src/libANGLE/renderer/load_functions_table_autogen.cpp
+/third_party/angle/src/libANGLE/renderer/renderer_utils.cpp
+/third_party/angle/src/libANGLE/validationEGL.cpp
+/third_party/angle/src/libANGLE/validationES.cpp
+/third_party/angle/src/libANGLE/validationES1.cpp
+/third_party/angle/src/libANGLE/validationES2.cpp
+/third_party/angle/src/libANGLE/validationES3.cpp
+/third_party/angle/src/libANGLE/validationES31.cpp
+/third_party/angle/src/libANGLE/validationES32.cpp
+/third_party/angle/src/libANGLE/validationESEXT.cpp
+/third_party/angle/src/common/frame_capture_binary_data.h
+/third_party/angle/src/common/frame_capture_utils.h
+/third_party/angle/src/common/frame_capture_utils_autogen.h
+/third_party/angle/src/common/gl_enum_utils.h
+/third_party/angle/src/common/gl_enum_utils_autogen.h
+/third_party/angle/src/libANGLE/capture/FrameCapture.h
+/third_party/angle/src/libANGLE/capture/capture_cl_autogen.h
+/third_party/angle/src/libANGLE/capture/capture_egl_autogen.h
+/third_party/angle/src/libANGLE/capture/capture_gles_1_0_autogen.h
+/third_party/angle/src/libANGLE/capture/capture_gles_2_0_autogen.h
+/third_party/angle/src/libANGLE/capture/capture_gles_3_0_autogen.h
+/third_party/angle/src/libANGLE/capture/capture_gles_3_1_autogen.h
+/third_party/angle/src/libANGLE/capture/capture_gles_3_2_autogen.h
+/third_party/angle/src/libANGLE/capture/capture_gles_ext_autogen.h
+/third_party/angle/src/libANGLE/capture/serialize.h
+/third_party/angle/include/angle_gl.h
+/third_party/angle/include/export.h
+/third_party/angle/include/EGL/egl.h
+/third_party/angle/include/EGL/eglext.h
+/third_party/angle/include/EGL/eglext_angle.h
+/third_party/angle/include/EGL/eglplatform.h
+/third_party/angle/include/GLES/gl.h
+/third_party/angle/include/GLES/glplatform.h
+/third_party/angle/include/GLES/glext.h
+/third_party/angle/include/GLES2/gl2.h
+/third_party/angle/include/GLES2/gl2ext.h
+/third_party/angle/include/GLES2/gl2ext_angle.h
+/third_party/angle/include/GLES2/gl2platform.h
+/third_party/angle/include/GLES3/gl3.h
+/third_party/angle/include/GLES3/gl3platform.h
+/third_party/angle/include/GLES3/gl31.h
+/third_party/angle/include/GLES3/gl32.h
+/third_party/angle/include/GLX/glxext.h
+/third_party/angle/include/KHR/khrplatform.h
+/third_party/angle/include/WGL/wgl.h
+/third_party/angle/include/platform/Feature.h
+/third_party/angle/include/platform/autogen/FeaturesD3D_autogen.h
+/third_party/angle/include/platform/autogen/FeaturesGL_autogen.h
+/third_party/angle/include/platform/autogen/FeaturesMtl_autogen.h
+/third_party/angle/include/platform/autogen/FeaturesVk_autogen.h
+/third_party/angle/include/platform/autogen/FeaturesWgpu_autogen.h
+/third_party/angle/include/platform/autogen/FrontendFeatures_autogen.h
+/third_party/angle/include/platform/PlatformMethods.h
+/third_party/angle/include/vulkan/vulkan_fuchsia_ext.h
+/third_party/angle/include/GLSLANG/ShaderLang.h
+/third_party/angle/include/GLSLANG/ShaderVars.h
+/third_party/angle/src/compiler/translator/blocklayout.h
+/third_party/angle/src/compiler/translator/hlsl/blocklayoutHLSL.h
+/third_party/angle/include/EGL/egl.h
+/third_party/angle/include/EGL/eglext.h
+/third_party/angle/include/EGL/eglplatform.h
+/third_party/angle/include/GLES2/gl2.h
+/third_party/angle/include/GLES2/gl2ext.h
+/third_party/angle/include/GLES2/gl2platform.h
+/third_party/angle/include/GLES3/gl3.h
+/third_party/angle/include/GLES3/gl31.h
+/third_party/angle/include/GLES3/gl32.h
+/third_party/angle/include/GLES3/gl3platform.h
+/third_party/angle/include/KHR/khrplatform.h
+/third_party/angle/include/angle_gl.h
+/third_party/angle/src/compiler/translator/AsNode.h
+/third_party/angle/src/compiler/translator/BaseTypes.cpp
+/third_party/angle/src/compiler/translator/BaseTypes.h
+/third_party/angle/src/compiler/translator/BuiltInFunctionEmulator.cpp
+/third_party/angle/src/compiler/translator/BuiltInFunctionEmulator.h
+/third_party/angle/src/compiler/translator/CallDAG.cpp
+/third_party/angle/src/compiler/translator/CallDAG.h
+/third_party/angle/src/compiler/translator/CodeGen.cpp
+/third_party/angle/src/compiler/translator/CollectVariables.cpp
+/third_party/angle/src/compiler/translator/CollectVariables.h
+/third_party/angle/src/compiler/translator/Common.h
+/third_party/angle/src/compiler/translator/Compiler.cpp
+/third_party/angle/src/compiler/translator/Compiler.h
+/third_party/angle/src/compiler/translator/ConstantUnion.cpp
+/third_party/angle/src/compiler/translator/ConstantUnion.h
+/third_party/angle/src/compiler/translator/Declarator.cpp
+/third_party/angle/src/compiler/translator/Declarator.h
+/third_party/angle/src/compiler/translator/Diagnostics.cpp
+/third_party/angle/src/compiler/translator/Diagnostics.h
+/third_party/angle/src/compiler/translator/DirectiveHandler.cpp
+/third_party/angle/src/compiler/translator/DirectiveHandler.h
+/third_party/angle/src/compiler/translator/ExtensionBehavior.cpp
+/third_party/angle/src/compiler/translator/ExtensionBehavior.h
+/third_party/angle/src/compiler/translator/FlagStd140Structs.cpp
+/third_party/angle/src/compiler/translator/FlagStd140Structs.h
+/third_party/angle/src/compiler/translator/FunctionLookup.cpp
+/third_party/angle/src/compiler/translator/FunctionLookup.h
+/third_party/angle/src/compiler/translator/HashNames.cpp
+/third_party/angle/src/compiler/translator/HashNames.h
+/third_party/angle/src/compiler/translator/ImmutableString.h
+/third_party/angle/src/compiler/translator/ImmutableStringBuilder.cpp
+/third_party/angle/src/compiler/translator/ImmutableStringBuilder.h
+/third_party/angle/src/compiler/translator/InfoSink.cpp
+/third_party/angle/src/compiler/translator/InfoSink.h
+/third_party/angle/src/compiler/translator/Initialize.cpp
+/third_party/angle/src/compiler/translator/Initialize.h
+/third_party/angle/src/compiler/translator/InitializeGlobals.h
+/third_party/angle/src/compiler/translator/IntermNode.cpp
+/third_party/angle/src/compiler/translator/IntermNode.h
+/third_party/angle/src/compiler/translator/IntermRebuild.cpp
+/third_party/angle/src/compiler/translator/IntermRebuild.h
+/third_party/angle/src/compiler/translator/IsASTDepthBelowLimit.cpp
+/third_party/angle/src/compiler/translator/IsASTDepthBelowLimit.h
+/third_party/angle/src/compiler/translator/Name.cpp
+/third_party/angle/src/compiler/translator/Name.h
+/third_party/angle/src/compiler/translator/NodeType.h
+/third_party/angle/src/compiler/translator/Operator.cpp
+/third_party/angle/src/compiler/translator/Operator_autogen.h
+/third_party/angle/src/compiler/translator/OutputTree.cpp
+/third_party/angle/src/compiler/translator/OutputTree.h
+/third_party/angle/src/compiler/translator/ParseContext.cpp
+/third_party/angle/src/compiler/translator/ParseContext.h
+/third_party/angle/src/compiler/translator/PoolAlloc.cpp
+/third_party/angle/src/compiler/translator/PoolAlloc.h
+/third_party/angle/src/compiler/translator/Pragma.h
+/third_party/angle/src/compiler/translator/QualifierTypes.cpp
+/third_party/angle/src/compiler/translator/QualifierTypes.h
+/third_party/angle/src/compiler/translator/Severity.h
+/third_party/angle/src/compiler/translator/ShaderLang.cpp
+/third_party/angle/src/compiler/translator/ShaderVars.cpp
+/third_party/angle/src/compiler/translator/SizeClipCullDistance.cpp
+/third_party/angle/src/compiler/translator/SizeClipCullDistance.h
+/third_party/angle/src/compiler/translator/StaticType.h
+/third_party/angle/src/compiler/translator/Symbol.cpp
+/third_party/angle/src/compiler/translator/Symbol.h
+/third_party/angle/src/compiler/translator/SymbolTable.cpp
+/third_party/angle/src/compiler/translator/SymbolTable.h
+/third_party/angle/src/compiler/translator/SymbolTable_autogen.h
+/third_party/angle/src/compiler/translator/SymbolUniqueId.cpp
+/third_party/angle/src/compiler/translator/SymbolUniqueId.h
+/third_party/angle/src/compiler/translator/Types.cpp
+/third_party/angle/src/compiler/translator/Types.h
+/third_party/angle/src/compiler/translator/ValidateAST.cpp
+/third_party/angle/src/compiler/translator/ValidateAST.h
+/third_party/angle/src/compiler/translator/ValidateGlobalInitializer.cpp
+/third_party/angle/src/compiler/translator/ValidateGlobalInitializer.h
+/third_party/angle/src/compiler/translator/ValidateVaryingLocations.cpp
+/third_party/angle/src/compiler/translator/ValidateVaryingLocations.h
+/third_party/angle/src/compiler/translator/VariablePacker.cpp
+/third_party/angle/src/compiler/translator/VariablePacker.h
+/third_party/angle/src/compiler/translator/blocklayout.cpp
+/third_party/angle/src/compiler/translator/glsl/TranslatorESSL.h
+/third_party/angle/src/compiler/translator/glsl/TranslatorGLSL.h
+/third_party/angle/src/compiler/translator/glsl/VersionGLSL.h
+/third_party/angle/src/compiler/translator/glslang.h
+/third_party/angle/src/compiler/translator/glslang_lex_autogen.cpp
+/third_party/angle/src/compiler/translator/glslang_tab_autogen.cpp
+/third_party/angle/src/compiler/translator/glslang_tab_autogen.h
+/third_party/angle/src/compiler/translator/hlsl/TranslatorHLSL.h
+/third_party/angle/src/compiler/translator/ir/src/builder.h
+/third_party/angle/src/compiler/translator/ir/src/compile.h
+/third_party/angle/src/compiler/translator/ir/src/output/ir_to_legacy.h
+/third_party/angle/src/compiler/translator/ir/src/output/legacy.h
+/third_party/angle/src/compiler/translator/ir/src/pool_alloc.h
+/third_party/angle/src/compiler/translator/length_limits.h
+/third_party/angle/src/compiler/translator/msl/DriverUniformMetal.h
+/third_party/angle/src/compiler/translator/msl/TranslatorMSL.h
+/third_party/angle/src/compiler/translator/null/TranslatorNULL.h
+/third_party/angle/src/compiler/translator/spirv/TranslatorSPIRV.h
+/third_party/angle/src/compiler/translator/tree_ops/AddDefaultReturnStatements.cpp
+/third_party/angle/src/compiler/translator/tree_ops/AddDefaultReturnStatements.h
+/third_party/angle/src/compiler/translator/tree_ops/ClampFragDepth.cpp
+/third_party/angle/src/compiler/translator/tree_ops/ClampFragDepth.h
+/third_party/angle/src/compiler/translator/tree_ops/ClampIndirectIndices.cpp
+/third_party/angle/src/compiler/translator/tree_ops/ClampIndirectIndices.h
+/third_party/angle/src/compiler/translator/tree_ops/ClampPointSize.cpp
+/third_party/angle/src/compiler/translator/tree_ops/ClampPointSize.h
+/third_party/angle/src/compiler/translator/tree_ops/DeclareAndInitBuiltinsForInstancedMultiview.cpp
+/third_party/angle/src/compiler/translator/tree_ops/DeclareAndInitBuiltinsForInstancedMultiview.h
+/third_party/angle/src/compiler/translator/tree_ops/DeclarePerVertexBlocks.cpp
+/third_party/angle/src/compiler/translator/tree_ops/DeclarePerVertexBlocks.h
+/third_party/angle/src/compiler/translator/tree_ops/DeferGlobalInitializers.cpp
+/third_party/angle/src/compiler/translator/tree_ops/DeferGlobalInitializers.h
+/third_party/angle/src/compiler/translator/tree_ops/EmulateGLFragColorBroadcast.cpp
+/third_party/angle/src/compiler/translator/tree_ops/EmulateGLFragColorBroadcast.h
+/third_party/angle/src/compiler/translator/tree_ops/EmulateMultiDrawShaderBuiltins.cpp
+/third_party/angle/src/compiler/translator/tree_ops/EmulateMultiDrawShaderBuiltins.h
+/third_party/angle/src/compiler/translator/tree_ops/FoldExpressions.cpp
+/third_party/angle/src/compiler/translator/tree_ops/FoldExpressions.h
+/third_party/angle/src/compiler/translator/tree_ops/GatherDefaultUniforms.cpp
+/third_party/angle/src/compiler/translator/tree_ops/GatherDefaultUniforms.h
+/third_party/angle/src/compiler/translator/tree_ops/InitializeVariables.cpp
+/third_party/angle/src/compiler/translator/tree_ops/InitializeVariables.h
+/third_party/angle/src/compiler/translator/tree_ops/MonomorphizeUnsupportedFunctions.cpp
+/third_party/angle/src/compiler/translator/tree_ops/MonomorphizeUnsupportedFunctions.h
+/third_party/angle/src/compiler/translator/tree_ops/PreTransformTextureCubeGradDerivatives.cpp
+/third_party/angle/src/compiler/translator/tree_ops/PreTransformTextureCubeGradDerivatives.h
+/third_party/angle/src/compiler/translator/tree_ops/PruneEmptyCases.cpp
+/third_party/angle/src/compiler/translator/tree_ops/PruneEmptyCases.h
+/third_party/angle/src/compiler/translator/tree_ops/PruneNoOps.cpp
+/third_party/angle/src/compiler/translator/tree_ops/PruneNoOps.h
+/third_party/angle/src/compiler/translator/tree_ops/RecordConstantPrecision.cpp
+/third_party/angle/src/compiler/translator/tree_ops/RecordConstantPrecision.h
+/third_party/angle/src/compiler/translator/tree_ops/ReduceInterfaceBlocks.cpp
+/third_party/angle/src/compiler/translator/tree_ops/ReduceInterfaceBlocks.h
+/third_party/angle/src/compiler/translator/tree_ops/RemoveArrayLengthMethod.cpp
+/third_party/angle/src/compiler/translator/tree_ops/RemoveArrayLengthMethod.h
+/third_party/angle/src/compiler/translator/tree_ops/RemoveAtomicCounterBuiltins.cpp
+/third_party/angle/src/compiler/translator/tree_ops/RemoveAtomicCounterBuiltins.h
+/third_party/angle/src/compiler/translator/tree_ops/RemoveDynamicIndexing.cpp
+/third_party/angle/src/compiler/translator/tree_ops/RemoveDynamicIndexing.h
+/third_party/angle/src/compiler/translator/tree_ops/RemoveInactiveInterfaceVariables.cpp
+/third_party/angle/src/compiler/translator/tree_ops/RemoveInactiveInterfaceVariables.h
+/third_party/angle/src/compiler/translator/tree_ops/RemoveInvariantDeclaration.cpp
+/third_party/angle/src/compiler/translator/tree_ops/RemoveInvariantDeclaration.h
+/third_party/angle/src/compiler/translator/tree_ops/RemoveUnreferencedVariables.cpp
+/third_party/angle/src/compiler/translator/tree_ops/RemoveUnreferencedVariables.h
+/third_party/angle/src/compiler/translator/tree_ops/RemoveUnusedFramebufferFetch.cpp
+/third_party/angle/src/compiler/translator/tree_ops/RemoveUnusedFramebufferFetch.h
+/third_party/angle/src/compiler/translator/tree_ops/RewriteArrayOfArrayOfOpaqueUniforms.cpp
+/third_party/angle/src/compiler/translator/tree_ops/RewriteArrayOfArrayOfOpaqueUniforms.h
+/third_party/angle/src/compiler/translator/tree_ops/RewriteAtomicCounters.cpp
+/third_party/angle/src/compiler/translator/tree_ops/RewriteAtomicCounters.h
+/third_party/angle/src/compiler/translator/tree_ops/RewriteDfdy.cpp
+/third_party/angle/src/compiler/translator/tree_ops/RewriteDfdy.h
+/third_party/angle/src/compiler/translator/tree_ops/RewritePixelLocalStorage.cpp
+/third_party/angle/src/compiler/translator/tree_ops/RewritePixelLocalStorage.h
+/third_party/angle/src/compiler/translator/tree_ops/RewriteStructSamplers.cpp
+/third_party/angle/src/compiler/translator/tree_ops/RewriteStructSamplers.h
+/third_party/angle/src/compiler/translator/tree_ops/RewriteTexelFetchOffset.cpp
+/third_party/angle/src/compiler/translator/tree_ops/RewriteTexelFetchOffset.h
+/third_party/angle/src/compiler/translator/tree_ops/ScalarizeVecAndMatConstructorArgs.cpp
+/third_party/angle/src/compiler/translator/tree_ops/ScalarizeVecAndMatConstructorArgs.h
+/third_party/angle/src/compiler/translator/tree_ops/SeparateDeclarations.cpp
+/third_party/angle/src/compiler/translator/tree_ops/SeparateDeclarations.h
+/third_party/angle/src/compiler/translator/tree_ops/SeparateStructFromUniformDeclarations.cpp
+/third_party/angle/src/compiler/translator/tree_ops/SeparateStructFromUniformDeclarations.h
+/third_party/angle/src/compiler/translator/tree_ops/SimplifyLoopConditions.cpp
+/third_party/angle/src/compiler/translator/tree_ops/SimplifyLoopConditions.h
+/third_party/angle/src/compiler/translator/tree_ops/SplitSequenceOperator.cpp
+/third_party/angle/src/compiler/translator/tree_ops/SplitSequenceOperator.h
+/third_party/angle/src/compiler/translator/tree_ops/glsl/ExpandFragmentOutputsToVec4.h
+/third_party/angle/src/compiler/translator/tree_ops/glsl/RewriteRepeatedAssignToSwizzled.h
+/third_party/angle/src/compiler/translator/tree_ops/glsl/UseInterfaceBlockFields.h
+/third_party/angle/src/compiler/translator/tree_ops/glsl/WrapStructConstructors.h
+/third_party/angle/src/compiler/translator/tree_ops/glsl/apple/AddAndTrueToLoopCondition.h
+/third_party/angle/src/compiler/translator/tree_ops/glsl/apple/RewriteRowMajorMatrices.h
+/third_party/angle/src/compiler/translator/tree_ops/glsl/apple/UnfoldShortCircuitAST.h
+/third_party/angle/src/compiler/translator/tree_ops/msl/EnsureLoopForwardProgress.h
+/third_party/angle/src/compiler/translator/tree_util/BuiltIn.h
+/third_party/angle/src/compiler/translator/tree_util/BuiltIn_autogen.h
+/third_party/angle/src/compiler/translator/tree_util/DriverUniform.cpp
+/third_party/angle/src/compiler/translator/tree_util/DriverUniform.h
+/third_party/angle/src/compiler/translator/tree_util/FindFunction.cpp
+/third_party/angle/src/compiler/translator/tree_util/FindFunction.h
+/third_party/angle/src/compiler/translator/tree_util/FindMain.cpp
+/third_party/angle/src/compiler/translator/tree_util/FindMain.h
+/third_party/angle/src/compiler/translator/tree_util/FindPreciseNodes.cpp
+/third_party/angle/src/compiler/translator/tree_util/FindPreciseNodes.h
+/third_party/angle/src/compiler/translator/tree_util/FindSymbolNode.cpp
+/third_party/angle/src/compiler/translator/tree_util/FindSymbolNode.h
+/third_party/angle/src/compiler/translator/tree_util/IntermNodePatternMatcher.cpp
+/third_party/angle/src/compiler/translator/tree_util/IntermNodePatternMatcher.h
+/third_party/angle/src/compiler/translator/tree_util/IntermNode_util.cpp
+/third_party/angle/src/compiler/translator/tree_util/IntermNode_util.h
+/third_party/angle/src/compiler/translator/tree_util/IntermTraverse.cpp
+/third_party/angle/src/compiler/translator/tree_util/IntermTraverse.h
+/third_party/angle/src/compiler/translator/tree_util/NodeSearch.h
+/third_party/angle/src/compiler/translator/tree_util/ReplaceArrayOfMatrixVarying.cpp
+/third_party/angle/src/compiler/translator/tree_util/ReplaceArrayOfMatrixVarying.h
+/third_party/angle/src/compiler/translator/tree_util/ReplaceClipCullDistanceVariable.cpp
+/third_party/angle/src/compiler/translator/tree_util/ReplaceClipCullDistanceVariable.h
+/third_party/angle/src/compiler/translator/tree_util/ReplaceShadowingVariables.cpp
+/third_party/angle/src/compiler/translator/tree_util/ReplaceShadowingVariables.h
+/third_party/angle/src/compiler/translator/tree_util/ReplaceVariable.cpp
+/third_party/angle/src/compiler/translator/tree_util/ReplaceVariable.h
+/third_party/angle/src/compiler/translator/tree_util/RewriteSampleMaskVariable.cpp
+/third_party/angle/src/compiler/translator/tree_util/RewriteSampleMaskVariable.h
+/third_party/angle/src/compiler/translator/tree_util/RunAtTheBeginningOfShader.cpp
+/third_party/angle/src/compiler/translator/tree_util/RunAtTheBeginningOfShader.h
+/third_party/angle/src/compiler/translator/tree_util/RunAtTheEndOfShader.cpp
+/third_party/angle/src/compiler/translator/tree_util/RunAtTheEndOfShader.h
+/third_party/angle/src/compiler/translator/tree_util/Visit.h
+/third_party/angle/src/compiler/translator/util.cpp
+/third_party/angle/src/compiler/translator/util.h
+/third_party/angle/src/compiler/translator/wgsl/TranslatorWGSL.h
+/third_party/angle/src/compiler/translator/glsl/OutputGLSLBase.cpp
+/third_party/angle/src/compiler/translator/glsl/OutputGLSLBase.h
+/third_party/angle/src/compiler/translator/glsl/OutputGLSL.cpp
+/third_party/angle/src/compiler/translator/glsl/OutputGLSL.h
+/third_party/angle/src/compiler/translator/glsl/OutputESSL.cpp
+/third_party/angle/src/compiler/translator/glsl/OutputESSL.h
+/third_party/angle/src/compiler/translator/glsl/TranslatorESSL.cpp
+/third_party/angle/src/compiler/translator/glsl/BuiltInFunctionEmulatorGLSL.cpp
+/third_party/angle/src/compiler/translator/glsl/BuiltInFunctionEmulatorGLSL.h
+/third_party/angle/src/compiler/translator/glsl/ExtensionGLSL.cpp
+/third_party/angle/src/compiler/translator/glsl/ExtensionGLSL.h
+/third_party/angle/src/compiler/translator/glsl/TranslatorGLSL.cpp
+/third_party/angle/src/compiler/translator/glsl/VersionGLSL.cpp
+/third_party/angle/src/compiler/translator/tree_ops/glsl/ExpandFragmentOutputsToVec4.cpp
+/third_party/angle/src/compiler/translator/tree_ops/glsl/RewriteRepeatedAssignToSwizzled.cpp
+/third_party/angle/src/compiler/translator/tree_ops/glsl/UseInterfaceBlockFields.cpp
+/third_party/angle/src/compiler/translator/tree_ops/glsl/WrapStructConstructors.cpp
+/third_party/angle/src/compiler/translator/tree_ops/glsl/apple/AddAndTrueToLoopCondition.cpp
+/third_party/angle/src/compiler/translator/tree_ops/glsl/apple/RewriteRowMajorMatrices.cpp
+/third_party/angle/src/compiler/translator/tree_ops/glsl/apple/UnfoldShortCircuitAST.cpp
+/third_party/angle/src/compiler/translator/hlsl/ASTMetadataHLSL.cpp
+/third_party/angle/src/compiler/translator/hlsl/ASTMetadataHLSL.h
+/third_party/angle/src/compiler/translator/hlsl/BuiltInFunctionEmulatorHLSL.cpp
+/third_party/angle/src/compiler/translator/hlsl/BuiltInFunctionEmulatorHLSL.h
+/third_party/angle/src/compiler/translator/hlsl/ImageFunctionHLSL.cpp
+/third_party/angle/src/compiler/translator/hlsl/ImageFunctionHLSL.h
+/third_party/angle/src/compiler/translator/hlsl/OutputHLSL.cpp
+/third_party/angle/src/compiler/translator/hlsl/OutputHLSL.h
+/third_party/angle/src/compiler/translator/hlsl/ResourcesHLSL.cpp
+/third_party/angle/src/compiler/translator/hlsl/ResourcesHLSL.h
+/third_party/angle/src/compiler/translator/hlsl/StructureHLSL.cpp
+/third_party/angle/src/compiler/translator/hlsl/StructureHLSL.h
+/third_party/angle/src/compiler/translator/hlsl/TextureFunctionHLSL.cpp
+/third_party/angle/src/compiler/translator/hlsl/TextureFunctionHLSL.h
+/third_party/angle/src/compiler/translator/hlsl/TranslatorHLSL.cpp
+/third_party/angle/src/compiler/translator/hlsl/UtilsHLSL.cpp
+/third_party/angle/src/compiler/translator/hlsl/UtilsHLSL.h
+/third_party/angle/src/compiler/translator/hlsl/blocklayoutHLSL.cpp
+/third_party/angle/src/compiler/translator/hlsl/emulated_builtin_functions_hlsl_autogen.cpp
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/ArrayReturnValueToOutParameter.cpp
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/ArrayReturnValueToOutParameter.h
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/BreakVariableAliasingInInnerLoops.cpp
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/BreakVariableAliasingInInnerLoops.h
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/ExpandIntegerPowExpressions.cpp
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/ExpandIntegerPowExpressions.h
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/RecordUniformBlocksWithLargeArrayMember.cpp
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/RecordUniformBlocksWithLargeArrayMember.h
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/RemoveSwitchFallThrough.cpp
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/RemoveSwitchFallThrough.h
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/RewriteElseBlocks.cpp
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/RewriteElseBlocks.h
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/RewriteUnaryMinusOperatorInt.cpp
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/RewriteUnaryMinusOperatorInt.h
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/SeparateArrayConstructorStatements.cpp
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/SeparateArrayConstructorStatements.h
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/SeparateArrayInitialization.cpp
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/SeparateArrayInitialization.h
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/SeparateExpressionsReturningArrays.cpp
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/SeparateExpressionsReturningArrays.h
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/UnfoldShortCircuitToIf.cpp
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/UnfoldShortCircuitToIf.h
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/WrapSwitchStatementsInBlocks.cpp
+/third_party/angle/src/compiler/translator/tree_ops/hlsl/WrapSwitchStatementsInBlocks.h
+/third_party/angle/src/compiler/translator/spirv/BuildSPIRV.cpp
+/third_party/angle/src/compiler/translator/spirv/BuildSPIRV.h
+/third_party/angle/src/compiler/translator/spirv/BuiltinsWorkaround.cpp
+/third_party/angle/src/compiler/translator/spirv/BuiltinsWorkaround.h
+/third_party/angle/src/compiler/translator/spirv/OutputSPIRV.cpp
+/third_party/angle/src/compiler/translator/spirv/OutputSPIRV.h
+/third_party/angle/src/compiler/translator/spirv/TranslatorSPIRV.cpp
+/third_party/angle/src/compiler/translator/tree_ops/spirv/ClampGLLayer.cpp
+/third_party/angle/src/compiler/translator/tree_ops/spirv/ClampGLLayer.h
+/third_party/angle/src/compiler/translator/tree_ops/spirv/EmulateAdvancedBlendEquations.cpp
+/third_party/angle/src/compiler/translator/tree_ops/spirv/EmulateAdvancedBlendEquations.h
+/third_party/angle/src/compiler/translator/tree_ops/spirv/EmulateFragColorData.cpp
+/third_party/angle/src/compiler/translator/tree_ops/spirv/EmulateFragColorData.h
+/third_party/angle/src/compiler/translator/tree_ops/spirv/EmulateFramebufferFetch.cpp
+/third_party/angle/src/compiler/translator/tree_ops/spirv/EmulateFramebufferFetch.h
+/third_party/angle/src/compiler/translator/tree_ops/spirv/EmulateYUVBuiltIns.cpp
+/third_party/angle/src/compiler/translator/tree_ops/spirv/EmulateYUVBuiltIns.h
+/third_party/angle/src/compiler/translator/tree_ops/spirv/FlagSamplersWithTexelFetch.cpp
+/third_party/angle/src/compiler/translator/tree_ops/spirv/FlagSamplersWithTexelFetch.h
+/third_party/angle/src/compiler/translator/tree_ops/spirv/ReswizzleYUVOps.cpp
+/third_party/angle/src/compiler/translator/tree_ops/spirv/ReswizzleYUVOps.h
+/third_party/angle/src/compiler/translator/tree_ops/spirv/RewriteInterpolateAtOffset.cpp
+/third_party/angle/src/compiler/translator/tree_ops/spirv/RewriteInterpolateAtOffset.h
+/third_party/angle/src/compiler/translator/tree_ops/spirv/RewriteR32fImages.cpp
+/third_party/angle/src/compiler/translator/tree_ops/spirv/RewriteR32fImages.h
+/third_party/angle/src/compiler/translator/tree_ops/spirv/RewriteSamplerExternalTexelFetch.cpp
+/third_party/angle/src/compiler/translator/tree_ops/spirv/RewriteSamplerExternalTexelFetch.h
+/third_party/angle/src/compiler/translator/ImmutableString_autogen.cpp
+/third_party/angle/src/compiler/translator/SymbolTable_autogen.cpp
+/third_party/angle/src/compiler/translator/msl/AstHelpers.cpp
+/third_party/angle/src/compiler/translator/msl/AstHelpers.h
+/third_party/angle/src/compiler/translator/msl/ConstantNames.cpp
+/third_party/angle/src/compiler/translator/msl/DebugSink.h
+/third_party/angle/src/compiler/translator/msl/DiscoverDependentFunctions.cpp
+/third_party/angle/src/compiler/translator/msl/DiscoverDependentFunctions.h
+/third_party/angle/src/compiler/translator/msl/DiscoverEnclosingFunctionTraverser.cpp
+/third_party/angle/src/compiler/translator/msl/DiscoverEnclosingFunctionTraverser.h
+/third_party/angle/src/compiler/translator/msl/DriverUniformMetal.cpp
+/third_party/angle/src/compiler/translator/msl/EmitMetal.cpp
+/third_party/angle/src/compiler/translator/msl/EmitMetal.h
+/third_party/angle/src/compiler/translator/msl/IdGen.cpp
+/third_party/angle/src/compiler/translator/msl/IdGen.h
+/third_party/angle/src/compiler/translator/msl/Layout.cpp
+/third_party/angle/src/compiler/translator/msl/Layout.h
+/third_party/angle/src/compiler/translator/msl/MapFunctionsToDefinitions.cpp
+/third_party/angle/src/compiler/translator/msl/MapFunctionsToDefinitions.h
+/third_party/angle/src/compiler/translator/msl/MapSymbols.cpp
+/third_party/angle/src/compiler/translator/msl/MapSymbols.h
+/third_party/angle/src/compiler/translator/msl/ModifyStruct.cpp
+/third_party/angle/src/compiler/translator/msl/ModifyStruct.h
+/third_party/angle/src/compiler/translator/msl/Pipeline.cpp
+/third_party/angle/src/compiler/translator/msl/Pipeline.h
+/third_party/angle/src/compiler/translator/msl/ProgramPrelude.cpp
+/third_party/angle/src/compiler/translator/msl/ProgramPrelude.h
+/third_party/angle/src/compiler/translator/msl/Reference.h
+/third_party/angle/src/compiler/translator/msl/RewritePipelines.cpp
+/third_party/angle/src/compiler/translator/msl/RewritePipelines.h
+/third_party/angle/src/compiler/translator/msl/SkippingTraverser.h
+/third_party/angle/src/compiler/translator/msl/SymbolEnv.cpp
+/third_party/angle/src/compiler/translator/msl/SymbolEnv.h
+/third_party/angle/src/compiler/translator/msl/ToposortStructs.cpp
+/third_party/angle/src/compiler/translator/msl/ToposortStructs.h
+/third_party/angle/src/compiler/translator/msl/TranslatorMSL.cpp
+/third_party/angle/src/compiler/translator/msl/UtilsMSL.cpp
+/third_party/angle/src/compiler/translator/msl/UtilsMSL.h
+/third_party/angle/src/compiler/translator/tree_ops/msl/AddExplicitTypeCasts.cpp
+/third_party/angle/src/compiler/translator/tree_ops/msl/AddExplicitTypeCasts.h
+/third_party/angle/src/compiler/translator/tree_ops/msl/ConvertUnsupportedConstructorsToFunctionCalls.cpp
+/third_party/angle/src/compiler/translator/tree_ops/msl/ConvertUnsupportedConstructorsToFunctionCalls.h
+/third_party/angle/src/compiler/translator/tree_ops/msl/EnsureLoopForwardProgress.cpp
+/third_party/angle/src/compiler/translator/tree_ops/msl/FixTypeConstructors.cpp
+/third_party/angle/src/compiler/translator/tree_ops/msl/FixTypeConstructors.h
+/third_party/angle/src/compiler/translator/tree_ops/msl/GuardFragDepthWrite.cpp
+/third_party/angle/src/compiler/translator/tree_ops/msl/GuardFragDepthWrite.h
+/third_party/angle/src/compiler/translator/tree_ops/msl/HoistConstants.cpp
+/third_party/angle/src/compiler/translator/tree_ops/msl/HoistConstants.h
+/third_party/angle/src/compiler/translator/tree_ops/msl/IntroduceVertexIndexID.cpp
+/third_party/angle/src/compiler/translator/tree_ops/msl/IntroduceVertexIndexID.h
+/third_party/angle/src/compiler/translator/tree_ops/msl/RescopeGlobalVariables.cpp
+/third_party/angle/src/compiler/translator/tree_ops/msl/RescopeGlobalVariables.h
+/third_party/angle/src/compiler/translator/tree_ops/msl/RewriteCaseDeclarations.cpp
+/third_party/angle/src/compiler/translator/tree_ops/msl/RewriteCaseDeclarations.h
+/third_party/angle/src/compiler/translator/tree_ops/msl/RewriteInterpolants.cpp
+/third_party/angle/src/compiler/translator/tree_ops/msl/RewriteInterpolants.h
+/third_party/angle/src/compiler/translator/tree_ops/msl/RewriteOutArgs.cpp
+/third_party/angle/src/compiler/translator/tree_ops/msl/RewriteOutArgs.h
+/third_party/angle/src/compiler/translator/tree_ops/msl/RewriteUnaddressableReferences.cpp
+/third_party/angle/src/compiler/translator/tree_ops/msl/RewriteUnaddressableReferences.h
+/third_party/angle/src/compiler/translator/tree_ops/msl/SeparateCompoundExpressions.cpp
+/third_party/angle/src/compiler/translator/tree_ops/msl/SeparateCompoundExpressions.h
+/third_party/angle/src/compiler/translator/tree_ops/msl/TransposeRowMajorMatrices.cpp
+/third_party/angle/src/compiler/translator/tree_ops/msl/TransposeRowMajorMatrices.h
+/third_party/angle/src/compiler/translator/tree_ops/msl/WrapMain.cpp
+/third_party/angle/src/compiler/translator/tree_ops/msl/WrapMain.h
+/third_party/angle/src/compiler/translator/tree_ops/wgsl/EmulateMutableFunctionParams.cpp
+/third_party/angle/src/compiler/translator/tree_ops/wgsl/EmulateMutableFunctionParams.h
+/third_party/angle/src/compiler/translator/tree_ops/wgsl/PullExpressionsIntoFunctions.cpp
+/third_party/angle/src/compiler/translator/tree_ops/wgsl/PullExpressionsIntoFunctions.h
+/third_party/angle/src/compiler/translator/tree_ops/wgsl/RewriteMixedTypeMathExprs.cpp
+/third_party/angle/src/compiler/translator/tree_ops/wgsl/RewriteMixedTypeMathExprs.h
+/third_party/angle/src/compiler/translator/tree_ops/wgsl/RewriteMultielementSwizzleAssignment.cpp
+/third_party/angle/src/compiler/translator/tree_ops/wgsl/RewriteMultielementSwizzleAssignment.h
+/third_party/angle/src/compiler/translator/wgsl/OutputUniformBlocks.cpp
+/third_party/angle/src/compiler/translator/wgsl/OutputUniformBlocks.h
+/third_party/angle/src/compiler/translator/wgsl/RewritePipelineVariables.cpp
+/third_party/angle/src/compiler/translator/wgsl/RewritePipelineVariables.h
+/third_party/angle/src/compiler/translator/wgsl/TranslatorWGSL.cpp
+/third_party/angle/src/compiler/translator/wgsl/Utils.cpp
+/third_party/angle/src/compiler/translator/wgsl/Utils.h
+/third_party/angle/src/compiler/translator/wgsl/WGSLProgramPrelude.cpp
+/third_party/angle/src/compiler/translator/wgsl/WGSLProgramPrelude.h
+/third_party/angle/src/compiler/preprocessor/DiagnosticsBase.cpp
+/third_party/angle/src/compiler/preprocessor/DiagnosticsBase.h
+/third_party/angle/src/compiler/preprocessor/DirectiveHandlerBase.cpp
+/third_party/angle/src/compiler/preprocessor/DirectiveHandlerBase.h
+/third_party/angle/src/compiler/preprocessor/DirectiveParser.cpp
+/third_party/angle/src/compiler/preprocessor/DirectiveParser.h
+/third_party/angle/src/compiler/preprocessor/ExpressionParser.h
+/third_party/angle/src/compiler/preprocessor/Input.cpp
+/third_party/angle/src/compiler/preprocessor/Input.h
+/third_party/angle/src/compiler/preprocessor/Lexer.cpp
+/third_party/angle/src/compiler/preprocessor/Lexer.h
+/third_party/angle/src/compiler/preprocessor/Macro.cpp
+/third_party/angle/src/compiler/preprocessor/Macro.h
+/third_party/angle/src/compiler/preprocessor/MacroExpander.cpp
+/third_party/angle/src/compiler/preprocessor/MacroExpander.h
+/third_party/angle/src/compiler/preprocessor/Preprocessor.cpp
+/third_party/angle/src/compiler/preprocessor/Preprocessor.h
+/third_party/angle/src/compiler/preprocessor/SourceLocation.h
+/third_party/angle/src/compiler/preprocessor/Token.cpp
+/third_party/angle/src/compiler/preprocessor/Token.h
+/third_party/angle/src/compiler/preprocessor/Tokenizer.h
+/third_party/angle/src/compiler/preprocessor/numeric_lex.h
+/third_party/angle/src/compiler/preprocessor/preprocessor_lex_autogen.cpp
+/third_party/angle/src/compiler/preprocessor/preprocessor_tab_autogen.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/BufferD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/BufferD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/CompilerD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/CompilerD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/ContextD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/DisplayD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/DisplayD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/DynamicHLSL.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/DynamicHLSL.h
+/third_party/angle/src/libANGLE/renderer/d3d/DynamicImage2DHLSL.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/DynamicImage2DHLSL.h
+/third_party/angle/src/libANGLE/renderer/d3d/EGLImageD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/EGLImageD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/FramebufferD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/FramebufferD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/HLSLCompiler.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/HLSLCompiler.h
+/third_party/angle/src/libANGLE/renderer/d3d/ImageD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/ImageD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/IndexBuffer.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/IndexBuffer.h
+/third_party/angle/src/libANGLE/renderer/d3d/IndexDataManager.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/IndexDataManager.h
+/third_party/angle/src/libANGLE/renderer/d3d/NativeWindowD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/NativeWindowD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/ProgramD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/ProgramD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/ProgramExecutableD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/ProgramExecutableD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/RenderTargetD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/RenderTargetD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/RenderbufferD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/RenderbufferD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/RendererD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/RendererD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/SamplerD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/ShaderD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/ShaderD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/ShaderExecutableD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/ShaderExecutableD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/SurfaceD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/SurfaceD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/SwapChainD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/SwapChainD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/TextureD3D.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/TextureD3D.h
+/third_party/angle/src/libANGLE/renderer/d3d/TextureStorage.h
+/third_party/angle/src/libANGLE/renderer/d3d/VertexBuffer.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/VertexBuffer.h
+/third_party/angle/src/libANGLE/renderer/d3d/VertexDataManager.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/VertexDataManager.h
+/third_party/angle/src/libANGLE/renderer/d3d/driver_utils_d3d.cpp
+/third_party/angle/src/libANGLE/renderer/d3d/driver_utils_d3d.h
+/third_party/angle/src/libANGLE/renderer/d3d/formatutilsD3D.h
diff --git third_party/angle/angle_program_version_id_gn/moz.build third_party/angle/angle_program_version_id_gn/moz.build
index bbd602444b05..33fd648848ec 100644
--- third_party/angle/angle_program_version_id_gn/moz.build
+++ third_party/angle/angle_program_version_id_gn/moz.build
@@ -51,6 +51,15 @@ if CONFIG["OS_TARGET"] == "Linux":
         script="/python/mozbuild/mozbuild/action/write_path_list.py",
     )
 
+if CONFIG["OS_TARGET"] == "FreeBSD":
+
+    GeneratedFile(
+        "/third_party/angle/gen/ANGLEShaderProgramVersion.h.rsp",
+        entry_point="write_paths",
+        inputs=['ANGLEShaderProgramVersion.h-22c710649c380411.rsp.in'],
+        script="/python/mozbuild/mozbuild/action/write_path_list.py",
+    )
+
 if CONFIG["OS_TARGET"] == "OpenBSD":
 
     GeneratedFile(
diff --git third_party/angle/src/common/system_utils_freebsd.cpp third_party/angle/src/common/system_utils_freebsd.cpp
new file mode 100644
index 000000000000..1b90b203cc7a
--- /dev/null
+++ third_party/angle/src/common/system_utils_freebsd.cpp
@@ -0,0 +1,46 @@
+//
+// Copyright 2015 The ANGLE Project Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style license that can be
+// found in the LICENSE file.
+//
+
+// system_utils_freebsd.cpp: Implementation of OS-specific functions for Linux
+
+#include "common/debug.h"
+#include "common/unsafe_buffers.h"
+#include "system_utils.h"
+
+#include <string.h>
+#include <sys/stat.h>
+#include <sys/time.h>
+#include <sys/types.h>
+#include <sys/sysctl.h>
+#include <unistd.h>
+
+#include <array>
+
+namespace angle
+{
+
+std::string GetExecutablePath()
+{
+    int mib[4] = {CTL_KERN, KERN_PROC, KERN_PROC_PATHNAME, -1};
+    char path[PATH_MAX + 1];
+    size_t path_len = sizeof(path);
+    if (sysctl(mib, 4, path, &path_len, nullptr, 0) < 0)
+    {
+        return "";
+    }
+    return path;
+}
+
+const char *GetSharedLibraryExtension()
+{
+    return "so";
+}
+
+void SetCurrentThreadName(const char *name)
+{
+    pthread_setname_np(pthread_self(), name);
+}
+}  // namespace angle
