WebKit Bugzilla
Attachment 359241 Details for
Bug 193479
: [WHLSL] Add the function stage checker
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-193479-20190115190103.patch (text/plain), 25.29 KB, created by
Myles C. Maxfield
on 2019-01-15 19:01:04 PST
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Myles C. Maxfield
Created:
2019-01-15 19:01:04 PST
Size:
25.29 KB
patch
obsolete
>Subversion Revision: 240019 >diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog >index e00d3145c707897b692f580be3269ab6d189ed48..2c80d6c0c8776f8a81dfa6d3e62226e8dc4d999d 100644 >--- a/Source/WebCore/ChangeLog >+++ b/Source/WebCore/ChangeLog >@@ -1,3 +1,33 @@ >+2019-01-15 Myles C. Maxfield <mmaxfield@apple.com> >+ >+ [WHLSL] Add the function stage checker >+ https://bugs.webkit.org/show_bug.cgi?id=193479 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ This is a translation of https://github.com/gpuweb/WHLSL/blob/master/Source/CheckNativeFuncStages.mjs into C++. >+ >+ No new tests because it isn't hooked up yet. Not enough of the compiler exists to have any meaningful sort >+ of test. When enough of the compiler is present, I'll port the reference implementation's test suite. >+ >+ * Modules/webgpu/WHLSL/AST/WHLSLCallExpression.h: >+ (WebCore::WHLSL::AST::CallExpression::function): >+ * Modules/webgpu/WHLSL/WHLSLFunctionStageChecker.cpp: Added. >+ (WebCore::WHLSL::FunctionStageChecker::FunctionStageChecker): >+ (WebCore::WHLSL::checkFunctionStages): >+ * Modules/webgpu/WHLSL/WHLSLFunctionStageChecker.h: Added. >+ * Modules/webgpu/WHLSL/WHLSLIntrinsics.cpp: >+ (WebCore::WHLSL::Intrinsics::add): >+ * Modules/webgpu/WHLSL/WHLSLIntrinsics.h: >+ (WebCore::WHLSL::Intrinsics::ddx const): >+ (WebCore::WHLSL::Intrinsics::ddy const): >+ (WebCore::WHLSL::Intrinsics::allMemoryBarrier const): >+ (WebCore::WHLSL::Intrinsics::deviceMemoryBarrier const): >+ (WebCore::WHLSL::Intrinsics::groupMemoryBarrier const): >+ (WebCore::WHLSL::Intrinsics::WTF_ARRAY_LENGTH): >+ * Sources.txt: >+ * WebCore.xcodeproj/project.pbxproj: >+ > 2019-01-15 Myles C. Maxfield <mmaxfield@apple.com> > > [WHLSL] Implement the loop checker >diff --git a/Source/WebCore/Modules/webgpu/WHLSL/AST/WHLSLCallExpression.h b/Source/WebCore/Modules/webgpu/WHLSL/AST/WHLSLCallExpression.h >index 0446ada825a44c38c925dc3a6718e85bcc9f5fa8..74b9e0976a0facccf21f9ea99fe44244f14d48e6 100644 >--- a/Source/WebCore/Modules/webgpu/WHLSL/AST/WHLSLCallExpression.h >+++ b/Source/WebCore/Modules/webgpu/WHLSL/AST/WHLSLCallExpression.h >@@ -81,6 +81,8 @@ public: > m_function = &functionDeclaration; > } > >+ FunctionDeclaration* function() { return m_function; } >+ > private: > String m_name; > Vector<UniqueRef<Expression>> m_arguments; >diff --git a/Source/WebCore/Modules/webgpu/WHLSL/WHLSLFunctionStageChecker.cpp b/Source/WebCore/Modules/webgpu/WHLSL/WHLSLFunctionStageChecker.cpp >new file mode 100644 >index 0000000000000000000000000000000000000000..fa9287c80195d833b6f51eaadb4d60de0f771cf1 >--- /dev/null >+++ b/Source/WebCore/Modules/webgpu/WHLSL/WHLSLFunctionStageChecker.cpp >@@ -0,0 +1,86 @@ >+/* >+ * Copyright (C) 2019 Apple Inc. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+#include "config.h" >+#include "WHLSLFunctionStageChecker.h" >+ >+#if ENABLE(WEBGPU) >+ >+#include "WHLSLCallExpression.h" >+#include "WHLSLEntryPointType.h" >+#include "WHLSLIntrinsics.h" >+#include "WHLSLProgram.h" >+#include "WHLSLVisitor.h" >+ >+namespace WebCore { >+ >+namespace WHLSL { >+ >+class FunctionStageChecker : public Visitor { >+public: >+ FunctionStageChecker(AST::EntryPointType entryPointType, const Intrinsics& intrinsics) >+ : m_entryPointType(entryPointType) >+ , m_intrinsics(intrinsics) >+ { >+ } >+ >+public: >+ void visit(AST::CallExpression& callExpression) override >+ { >+ ASSERT(callExpression.function()); >+ if ((callExpression.function() == &m_intrinsics.ddx() || callExpression.function() == &m_intrinsics.ddy()) && m_entryPointType != AST::EntryPointType::Fragment) { >+ setError(); >+ return; >+ } >+ if ((callExpression.function() == &m_intrinsics.allMemoryBarrier() || callExpression.function() == &m_intrinsics.deviceMemoryBarrier() || callExpression.function() == &m_intrinsics.groupMemoryBarrier()) >+ && m_entryPointType != AST::EntryPointType::Compute) { >+ setError(); >+ return; >+ } >+ Visitor::visit(callExpression); >+ } >+ >+ AST::EntryPointType m_entryPointType; >+ const Intrinsics& m_intrinsics; >+}; >+ >+bool checkFunctionStages(Program& program) >+{ >+ for (auto& functionDefinition : program.functionDefinitions()) { >+ if (!functionDefinition->entryPointType()) >+ continue; >+ FunctionStageChecker functionStageChecker(*functionDefinition->entryPointType(), program.intrinsics()); >+ functionStageChecker.Visitor::visit(functionDefinition); >+ if (functionStageChecker.error()) >+ return false; >+ } >+ return true; >+} >+ >+} >+ >+} >+ >+#endif >diff --git a/Source/WebCore/Modules/webgpu/WHLSL/WHLSLFunctionStageChecker.h b/Source/WebCore/Modules/webgpu/WHLSL/WHLSLFunctionStageChecker.h >new file mode 100644 >index 0000000000000000000000000000000000000000..21956bb576057056b37b037e75e680b31272e52f >--- /dev/null >+++ b/Source/WebCore/Modules/webgpu/WHLSL/WHLSLFunctionStageChecker.h >@@ -0,0 +1,42 @@ >+/* >+ * Copyright (C) 2019 Apple Inc. All rights reserved. >+ * >+ * Redistribution and use in source and binary forms, with or without >+ * modification, are permitted provided that the following conditions >+ * are met: >+ * 1. Redistributions of source code must retain the above copyright >+ * notice, this list of conditions and the following disclaimer. >+ * 2. Redistributions in binary form must reproduce the above copyright >+ * notice, this list of conditions and the following disclaimer in the >+ * documentation and/or other materials provided with the distribution. >+ * >+ * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS'' >+ * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, >+ * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR >+ * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS >+ * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR >+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF >+ * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS >+ * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN >+ * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) >+ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF >+ * THE POSSIBILITY OF SUCH DAMAGE. >+ */ >+ >+#pragma once >+ >+#if ENABLE(WEBGPU) >+ >+namespace WebCore { >+ >+namespace WHLSL { >+ >+class Program; >+ >+bool checkFunctionStages(Program&); >+ >+} >+ >+} >+ >+#endif >diff --git a/Source/WebCore/Modules/webgpu/WHLSL/WHLSLIntrinsics.cpp b/Source/WebCore/Modules/webgpu/WHLSL/WHLSLIntrinsics.cpp >index 47687850b47f5ee4e2649f49ff68060fd6920691..c223fbc0e467506a722bbc717c063945fe3d4a0b 100644 >--- a/Source/WebCore/Modules/webgpu/WHLSL/WHLSLIntrinsics.cpp >+++ b/Source/WebCore/Modules/webgpu/WHLSL/WHLSLIntrinsics.cpp >@@ -46,9 +46,18 @@ Intrinsics::Intrinsics() > { > } > >-void Intrinsics::add(AST::NativeFunctionDeclaration&) >+void Intrinsics::add(AST::NativeFunctionDeclaration& nativeFunctionDeclaration) > { >- // FIXME: Populate this. >+ if (nativeFunctionDeclaration.name() == "ddx") >+ m_ddx = &nativeFunctionDeclaration; >+ else if (nativeFunctionDeclaration.name() == "ddy") >+ m_ddy = &nativeFunctionDeclaration; >+ else if (nativeFunctionDeclaration.name() == "AllMemoryBarrierWithGroupSync") >+ m_allMemoryBarrier = &nativeFunctionDeclaration; >+ else if (nativeFunctionDeclaration.name() == "DeviceMemoryBarrierWithGroupSync") >+ m_deviceMemoryBarrier = &nativeFunctionDeclaration; >+ else if (nativeFunctionDeclaration.name() == "GroupMemoryBarrierWithGroupSync") >+ m_groupMemoryBarrier = &nativeFunctionDeclaration; > } > > bool Intrinsics::addPrimitive(AST::NativeTypeDeclaration& nativeTypeDeclaration) >diff --git a/Source/WebCore/Modules/webgpu/WHLSL/WHLSLIntrinsics.h b/Source/WebCore/Modules/webgpu/WHLSL/WHLSLIntrinsics.h >index eb2c04556b00f3890abff19fb636361a38901140..6e8eb55e9d2f3ba5d5c9850190011f33ba105a60 100644 >--- a/Source/WebCore/Modules/webgpu/WHLSL/WHLSLIntrinsics.h >+++ b/Source/WebCore/Modules/webgpu/WHLSL/WHLSLIntrinsics.h >@@ -94,6 +94,36 @@ public: > return *m_vectorFloat[2]; > } > >+ AST::NativeFunctionDeclaration& ddx() const >+ { >+ ASSERT(m_ddx); >+ return *m_ddx; >+ } >+ >+ AST::NativeFunctionDeclaration& ddy() const >+ { >+ ASSERT(m_ddy); >+ return *m_ddy; >+ } >+ >+ AST::NativeFunctionDeclaration& allMemoryBarrier() const >+ { >+ ASSERT(m_allMemoryBarrier); >+ return *m_allMemoryBarrier; >+ } >+ >+ AST::NativeFunctionDeclaration& deviceMemoryBarrier() const >+ { >+ ASSERT(m_deviceMemoryBarrier); >+ return *m_deviceMemoryBarrier; >+ } >+ >+ AST::NativeFunctionDeclaration& groupMemoryBarrier() const >+ { >+ ASSERT(m_groupMemoryBarrier); >+ return *m_groupMemoryBarrier; >+ } >+ > private: > bool addPrimitive(AST::NativeTypeDeclaration&); > bool addVector(AST::NativeTypeDeclaration&); >@@ -104,46 +134,52 @@ private: > > HashSet<const AST::NativeTypeDeclaration*> m_textureSet; > >- AST::NativeTypeDeclaration* m_voidType; >- AST::NativeTypeDeclaration* m_boolType; >- AST::NativeTypeDeclaration* m_ucharType; >- AST::NativeTypeDeclaration* m_ushortType; >- AST::NativeTypeDeclaration* m_uintType; >- AST::NativeTypeDeclaration* m_charType; >- AST::NativeTypeDeclaration* m_shortType; >- AST::NativeTypeDeclaration* m_intType; >- AST::NativeTypeDeclaration* m_halfType; >- AST::NativeTypeDeclaration* m_floatType; >- AST::NativeTypeDeclaration* m_atomicIntType; >- AST::NativeTypeDeclaration* m_atomicUintType; >- AST::NativeTypeDeclaration* m_samplerType; >- >- AST::NativeTypeDeclaration* m_vectorBool[3]; >- AST::NativeTypeDeclaration* m_vectorUchar[3]; >- AST::NativeTypeDeclaration* m_vectorUshort[3]; >- AST::NativeTypeDeclaration* m_vectorUint[3]; >- AST::NativeTypeDeclaration* m_vectorChar[3]; >- AST::NativeTypeDeclaration* m_vectorShort[3]; >- AST::NativeTypeDeclaration* m_vectorInt[3]; >- AST::NativeTypeDeclaration* m_vectorHalf[3]; >- AST::NativeTypeDeclaration* m_vectorFloat[3]; >- >- AST::NativeTypeDeclaration* m_matrixHalf[3][3]; >- AST::NativeTypeDeclaration* m_matrixFloat[3][3]; >+ AST::NativeTypeDeclaration* m_voidType { nullptr }; >+ AST::NativeTypeDeclaration* m_boolType { nullptr }; >+ AST::NativeTypeDeclaration* m_ucharType { nullptr }; >+ AST::NativeTypeDeclaration* m_ushortType { nullptr }; >+ AST::NativeTypeDeclaration* m_uintType { nullptr }; >+ AST::NativeTypeDeclaration* m_charType { nullptr }; >+ AST::NativeTypeDeclaration* m_shortType { nullptr }; >+ AST::NativeTypeDeclaration* m_intType { nullptr }; >+ AST::NativeTypeDeclaration* m_halfType { nullptr }; >+ AST::NativeTypeDeclaration* m_floatType { nullptr }; >+ AST::NativeTypeDeclaration* m_atomicIntType { nullptr }; >+ AST::NativeTypeDeclaration* m_atomicUintType { nullptr }; >+ AST::NativeTypeDeclaration* m_samplerType { nullptr }; >+ >+ AST::NativeTypeDeclaration* m_vectorBool[3] { 0 }; >+ AST::NativeTypeDeclaration* m_vectorUchar[3] { 0 }; >+ AST::NativeTypeDeclaration* m_vectorUshort[3] { 0 }; >+ AST::NativeTypeDeclaration* m_vectorUint[3] { 0 }; >+ AST::NativeTypeDeclaration* m_vectorChar[3] { 0 }; >+ AST::NativeTypeDeclaration* m_vectorShort[3] { 0 }; >+ AST::NativeTypeDeclaration* m_vectorInt[3] { 0 }; >+ AST::NativeTypeDeclaration* m_vectorHalf[3] { 0 }; >+ AST::NativeTypeDeclaration* m_vectorFloat[3] { 0 }; >+ >+ AST::NativeTypeDeclaration* m_matrixHalf[3][3] {{ 0 }}; >+ AST::NativeTypeDeclaration* m_matrixFloat[3][3] {{ 0 }}; > > static constexpr const char* m_textureTypeNames[] = { "Texture1D", "RWTexture1D", "Texture1DArray", "RWTexture1DArray", "Texture2D", "RWTexture2D", "Texture2DArray", "RWTexture2DArray", "Texture3D", "RWTexture3D", "TextureCube" }; > > static constexpr const char* m_textureInnerTypeNames[] = { "uchar", "ushort", "uint", "char", "short", "int", "half", "float" }; > >- AST::NativeTypeDeclaration* m_fullTextures[WTF_ARRAY_LENGTH(m_textureTypeNames)][WTF_ARRAY_LENGTH(m_textureInnerTypeNames)][4]; >+ AST::NativeTypeDeclaration* m_fullTextures[WTF_ARRAY_LENGTH(m_textureTypeNames)][WTF_ARRAY_LENGTH(m_textureInnerTypeNames)][4] {{{ 0 }}}; > > static constexpr const char* m_depthTextureInnerTypes[] = { "half", "float" }; > >- AST::NativeTypeDeclaration* m_textureDepth2D[WTF_ARRAY_LENGTH(m_depthTextureInnerTypes)]; >- AST::NativeTypeDeclaration* m_rwTextureDepth2D[WTF_ARRAY_LENGTH(m_depthTextureInnerTypes)]; >- AST::NativeTypeDeclaration* m_textureDepth2DArray[WTF_ARRAY_LENGTH(m_depthTextureInnerTypes)]; >- AST::NativeTypeDeclaration* m_rwTextureDepth2DArray[WTF_ARRAY_LENGTH(m_depthTextureInnerTypes)]; >- AST::NativeTypeDeclaration* m_textureDepthCube[WTF_ARRAY_LENGTH(m_depthTextureInnerTypes)]; >+ AST::NativeTypeDeclaration* m_textureDepth2D[WTF_ARRAY_LENGTH(m_depthTextureInnerTypes)] { 0 }; >+ AST::NativeTypeDeclaration* m_rwTextureDepth2D[WTF_ARRAY_LENGTH(m_depthTextureInnerTypes)] { 0 }; >+ AST::NativeTypeDeclaration* m_textureDepth2DArray[WTF_ARRAY_LENGTH(m_depthTextureInnerTypes)] { 0 }; >+ AST::NativeTypeDeclaration* m_rwTextureDepth2DArray[WTF_ARRAY_LENGTH(m_depthTextureInnerTypes)] { 0 }; >+ AST::NativeTypeDeclaration* m_textureDepthCube[WTF_ARRAY_LENGTH(m_depthTextureInnerTypes)] { 0 }; >+ >+ AST::NativeFunctionDeclaration* m_ddx { nullptr }; >+ AST::NativeFunctionDeclaration* m_ddy { nullptr }; >+ AST::NativeFunctionDeclaration* m_allMemoryBarrier { nullptr }; >+ AST::NativeFunctionDeclaration* m_deviceMemoryBarrier { nullptr }; >+ AST::NativeFunctionDeclaration* m_groupMemoryBarrier { nullptr }; > }; > > } >diff --git a/Source/WebCore/Sources.txt b/Source/WebCore/Sources.txt >index 446a806a878a51ab987bb7d1c37328cd8ee97c14..b36512369d03fd56565b56c4c1dd238490102aac 100644 >--- a/Source/WebCore/Sources.txt >+++ b/Source/WebCore/Sources.txt >@@ -323,6 +323,7 @@ Modules/webgpu/WHLSL/WHLSLNameResolver.cpp > Modules/webgpu/WHLSL/WHLSLResolveOverloadImpl.cpp > Modules/webgpu/WHLSL/WHLSLVisitor.cpp > Modules/webgpu/WHLSL/WHLSLLoopChecker.cpp >+Modules/webgpu/WHLSL/WHLSLFunctionStageChecker.cpp > Modules/webgpu/WHLSL/AST/WHLSLTypeArgument.cpp > Modules/webgpu/WHLSL/AST/WHLSLBuiltInSemantic.cpp > Modules/webgpu/WHLSL/AST/WHLSLResourceSemantic.cpp >diff --git a/Source/WebCore/WebCore.xcodeproj/project.pbxproj b/Source/WebCore/WebCore.xcodeproj/project.pbxproj >index b96fa2dec41e49e314142d0b64522ba3c7924c6a..0fb4d8d820e335f12356a645dc7638a4a184fbf1 100644 >--- a/Source/WebCore/WebCore.xcodeproj/project.pbxproj >+++ b/Source/WebCore/WebCore.xcodeproj/project.pbxproj >@@ -2585,9 +2585,9 @@ > 91278D5E21DEDAD600B57184 /* PageAuditAgent.h in Headers */ = {isa = PBXBuildFile; fileRef = 91278D5C21DEDAD500B57184 /* PageAuditAgent.h */; }; > 91278D6221DEDAF000B57184 /* WorkerAuditAgent.h in Headers */ = {isa = PBXBuildFile; fileRef = 91278D6021DEDAF000B57184 /* WorkerAuditAgent.h */; }; > 9175CE5C21E281ED00DF2C27 /* InspectorAuditDOMObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 9175CE5821E281EC00DF2C27 /* InspectorAuditDOMObject.h */; }; >- 9175CE5C21E281ED00DF2C28 /* JSInspectorAuditDOMObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 9175CE5821E281EC00DF2C28 /* InspectorAuditDOMObject.h */; }; >+ 9175CE5C21E281ED00DF2C28 /* InspectorAuditDOMObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 9175CE5821E281EC00DF2C28 /* InspectorAuditDOMObject.h */; }; > 9175CE5E21E281ED00DF2C27 /* InspectorAuditAccessibilityObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 9175CE5A21E281ED00DF2C27 /* InspectorAuditAccessibilityObject.h */; }; >- 9175CE5E21E281ED00DF2C28 /* JSInspectorAuditAccessibilityObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 9175CE5A21E281ED00DF2C28 /* InspectorAuditAccessibilityObject.h */; }; >+ 9175CE5E21E281ED00DF2C28 /* InspectorAuditAccessibilityObject.h in Headers */ = {isa = PBXBuildFile; fileRef = 9175CE5A21E281ED00DF2C28 /* InspectorAuditAccessibilityObject.h */; }; > 91B8F0B521953D65000C2B00 /* CertificateInfoBase.h in Headers */ = {isa = PBXBuildFile; fileRef = 91B8F0B321953D65000C2B00 /* CertificateInfoBase.h */; settings = {ATTRIBUTES = (Private, ); }; }; > 91B952241F58A58F00931DC2 /* RecordingSwizzleTypes.h in Headers */ = {isa = PBXBuildFile; fileRef = 91B952221F58A58000931DC2 /* RecordingSwizzleTypes.h */; }; > 91C9F2F91AE3BEB00095B61C /* AXTextStateChangeIntent.h in Headers */ = {isa = PBXBuildFile; fileRef = 91C9F2F81AE3BE240095B61C /* AXTextStateChangeIntent.h */; settings = {ATTRIBUTES = (Private, ); }; }; >@@ -6429,6 +6429,8 @@ > 1C904DF90BA9D2C80081E9D0 /* Version.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Version.xcconfig; sourceTree = "<group>"; }; > 1C9AE5CF21EDA27E0069D5F2 /* WHLSLLoopChecker.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = WHLSLLoopChecker.cpp; sourceTree = "<group>"; }; > 1C9AE5D021EDA27E0069D5F2 /* WHLSLLoopChecker.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WHLSLLoopChecker.h; sourceTree = "<group>"; }; >+ 1CA0C2E421EED12A00A11860 /* WHLSLFunctionStageChecker.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = WHLSLFunctionStageChecker.cpp; sourceTree = "<group>"; }; >+ 1CA0C2E521EED12A00A11860 /* WHLSLFunctionStageChecker.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = WHLSLFunctionStageChecker.h; sourceTree = "<group>"; }; > 1CA19E030DC255950065A994 /* EventLoopMac.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = EventLoopMac.mm; sourceTree = "<group>"; }; > 1CA19E150DC255CA0065A994 /* EventLoop.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = EventLoop.h; sourceTree = "<group>"; }; > 1CAF347E0A6C405200ABE06E /* WebScriptObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebScriptObject.h; sourceTree = "<group>"; }; >@@ -10394,13 +10396,13 @@ > 91278D5F21DEDAEF00B57184 /* WorkerAuditAgent.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WorkerAuditAgent.cpp; sourceTree = "<group>"; }; > 91278D6021DEDAF000B57184 /* WorkerAuditAgent.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WorkerAuditAgent.h; sourceTree = "<group>"; }; > 9175CE5721E281EB00DF2C27 /* InspectorAuditDOMObject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorAuditDOMObject.cpp; sourceTree = "<group>"; }; >- 9175CE5721E281EB00DF2C28 /* JSInspectorAuditDOMObject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorAuditDOMObject.cpp; sourceTree = "<group>"; }; >+ 9175CE5721E281EB00DF2C28 /* InspectorAuditDOMObject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorAuditDOMObject.cpp; sourceTree = "<group>"; }; > 9175CE5821E281EC00DF2C27 /* InspectorAuditDOMObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorAuditDOMObject.h; sourceTree = "<group>"; }; >- 9175CE5821E281EC00DF2C28 /* JSInspectorAuditDOMObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorAuditDOMObject.h; sourceTree = "<group>"; }; >+ 9175CE5821E281EC00DF2C28 /* InspectorAuditDOMObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorAuditDOMObject.h; sourceTree = "<group>"; }; > 9175CE5921E281EC00DF2C27 /* InspectorAuditAccessibilityObject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorAuditAccessibilityObject.cpp; sourceTree = "<group>"; }; >- 9175CE5921E281EC00DF2C28 /* JSInspectorAuditAccessibilityObject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorAuditAccessibilityObject.cpp; sourceTree = "<group>"; }; >+ 9175CE5921E281EC00DF2C28 /* InspectorAuditAccessibilityObject.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = InspectorAuditAccessibilityObject.cpp; sourceTree = "<group>"; }; > 9175CE5A21E281ED00DF2C27 /* InspectorAuditAccessibilityObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorAuditAccessibilityObject.h; sourceTree = "<group>"; }; >- 9175CE5A21E281ED00DF2C28 /* JSInspectorAuditAccessibilityObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorAuditAccessibilityObject.h; sourceTree = "<group>"; }; >+ 9175CE5A21E281ED00DF2C28 /* InspectorAuditAccessibilityObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = InspectorAuditAccessibilityObject.h; sourceTree = "<group>"; }; > 91B8F0B321953D65000C2B00 /* CertificateInfoBase.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CertificateInfoBase.h; sourceTree = "<group>"; }; > 91B952221F58A58000931DC2 /* RecordingSwizzleTypes.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RecordingSwizzleTypes.h; sourceTree = "<group>"; }; > 91C9F2F81AE3BE240095B61C /* AXTextStateChangeIntent.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AXTextStateChangeIntent.h; sourceTree = "<group>"; }; >@@ -16937,12 +16939,12 @@ > isa = PBXGroup; > children = ( > A584FE2518637DAB00843B10 /* CommandLineAPIModuleSource.h */, >+ 9175CE5921E281EC00DF2C28 /* InspectorAuditAccessibilityObject.cpp */, >+ 9175CE5A21E281ED00DF2C28 /* InspectorAuditAccessibilityObject.h */, >+ 9175CE5721E281EB00DF2C28 /* InspectorAuditDOMObject.cpp */, >+ 9175CE5821E281EC00DF2C28 /* InspectorAuditDOMObject.h */, > A584FE391864E2D800843B10 /* JSCommandLineAPIHost.cpp */, > A584FE3A1864E2D800843B10 /* JSCommandLineAPIHost.h */, >- 9175CE5921E281EC00DF2C28 /* JSInspectorAuditAccessibilityObject.cpp */, >- 9175CE5A21E281ED00DF2C28 /* JSInspectorAuditAccessibilityObject.h */, >- 9175CE5721E281EB00DF2C28 /* JSInspectorAuditDOMObject.cpp */, >- 9175CE5821E281EC00DF2C28 /* JSInspectorAuditDOMObject.h */, > 7A0E771C10C00DB100A0276E /* JSInspectorFrontendHost.cpp */, > 7A0E771D10C00DB100A0276E /* JSInspectorFrontendHost.h */, > ); >@@ -25454,6 +25456,8 @@ > C234A9AE21E92C1A003C984D /* WHLSLCheckDuplicateFunctions.h */, > 1C840B9B21EC400900D0500D /* WHLSLChecker.cpp */, > 1C840B9721EC400700D0500D /* WHLSLChecker.h */, >+ 1CA0C2E421EED12A00A11860 /* WHLSLFunctionStageChecker.cpp */, >+ 1CA0C2E521EED12A00A11860 /* WHLSLFunctionStageChecker.h */, > 1C840B9921EC400800D0500D /* WHLSLGatherEntryPointItems.cpp */, > 1C840B9A21EC400900D0500D /* WHLSLGatherEntryPointItems.h */, > C234A99A21E90F56003C984D /* WHLSLInferTypes.cpp */, >@@ -29552,7 +29556,9 @@ > 93309DF2099E64920056E581 /* InsertTextCommand.h in Headers */, > A5B81CA71FAA44620037D1E6 /* InspectorApplicationCacheAgent.h in Headers */, > 9175CE5E21E281ED00DF2C27 /* InspectorAuditAccessibilityObject.h in Headers */, >+ 9175CE5E21E281ED00DF2C28 /* InspectorAuditAccessibilityObject.h in Headers */, > 9175CE5C21E281ED00DF2C27 /* InspectorAuditDOMObject.h in Headers */, >+ 9175CE5C21E281ED00DF2C28 /* InspectorAuditDOMObject.h in Headers */, > 6A22E8701F10418600F546C3 /* InspectorCanvas.h in Headers */, > A5B81CA81FAA44620037D1E6 /* InspectorCanvasAgent.h in Headers */, > 1C81B95C0E97330800266E07 /* InspectorClient.h in Headers */, >@@ -29985,8 +29991,6 @@ > A77979290D6B9E64003851B9 /* JSImageData.h in Headers */, > 7C193C011F5E11050088F3E6 /* JSImageSmoothingQuality.h in Headers */, > A86629D309DA2B48009633A6 /* JSInputEvent.h in Headers */, >- 9175CE5E21E281ED00DF2C28 /* JSInspectorAuditAccessibilityObject.h in Headers */, >- 9175CE5C21E281ED00DF2C28 /* JSInspectorAuditDOMObject.h in Headers */, > 7A0E771F10C00DB100A0276E /* JSInspectorFrontendHost.h in Headers */, > 0F4710E61DB700C7002DCEC3 /* JSIntersectionObserver.h in Headers */, > 0F8B45761DC41DBA00443C3F /* JSIntersectionObserverCallback.h in Headers */,
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Flags:
dino
:
review+
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 193479
: 359241