WebKit Bugzilla
Attachment 341014 Details for
Bug 185881
: Remove the UnconditionalFinalizer class
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-185881-20180522134748.patch (text/plain), 18.69 KB, created by
Keith Miller
on 2018-05-22 13:47:49 PDT
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Keith Miller
Created:
2018-05-22 13:47:49 PDT
Size:
18.69 KB
patch
obsolete
>Subversion Revision: 232076 >diff --git a/Source/JavaScriptCore/ChangeLog b/Source/JavaScriptCore/ChangeLog >index ec2a768043ef99969bec93b462adecc27f47cb83..463c28c20bb837c4e4168f92bd2b160e756f4c98 100644 >--- a/Source/JavaScriptCore/ChangeLog >+++ b/Source/JavaScriptCore/ChangeLog >@@ -1,3 +1,49 @@ >+2018-05-22 Keith Miller <keith_miller@apple.com> >+ >+ Remove the UnconditionalFinalizer class >+ https://bugs.webkit.org/show_bug.cgi?id=185881 >+ >+ Reviewed by NOBODY (OOPS!). >+ >+ The only remaining user of this API is >+ JSWebAssemblyCodeBlock. This patch changes, JSWebAssemblyCodeBlock >+ to use the newer template based API and removes the old class. >+ >+ * JavaScriptCore.xcodeproj/project.pbxproj: >+ * bytecode/CodeBlock.h: >+ * heap/Heap.cpp: >+ (JSC::Heap::finalizeUnconditionalFinalizers): >+ * heap/Heap.h: >+ * heap/SlotVisitor.cpp: >+ (JSC::SlotVisitor::addUnconditionalFinalizer): Deleted. >+ * heap/SlotVisitor.h: >+ * heap/UnconditionalFinalizer.h: Removed. >+ * wasm/js/JSWebAssemblyCodeBlock.cpp: >+ (JSC::JSWebAssemblyCodeBlock::JSWebAssemblyCodeBlock): >+ (JSC::JSWebAssemblyCodeBlock::visitChildren): >+ (JSC::JSWebAssemblyCodeBlock::finalizeUnconditionally): >+ (JSC::JSWebAssemblyCodeBlock::UnconditionalFinalizer::finalizeUnconditionally): Deleted. >+ * wasm/js/JSWebAssemblyCodeBlock.h: >+ * wasm/js/JSWebAssemblyModule.h: >+ >+ * CMakeLists.txt: >+ * JavaScriptCore.xcodeproj/project.pbxproj: >+ * bytecode/CodeBlock.h: >+ * heap/Heap.cpp: >+ (JSC::Heap::finalizeUnconditionalFinalizers): >+ * heap/Heap.h: >+ * heap/SlotVisitor.cpp: >+ (JSC::SlotVisitor::addUnconditionalFinalizer): Deleted. >+ * heap/SlotVisitor.h: >+ * heap/UnconditionalFinalizer.h: Removed. >+ * wasm/js/JSWebAssemblyCodeBlock.cpp: >+ (JSC::JSWebAssemblyCodeBlock::JSWebAssemblyCodeBlock): >+ (JSC::JSWebAssemblyCodeBlock::visitChildren): >+ (JSC::JSWebAssemblyCodeBlock::finalizeUnconditionally): >+ (JSC::JSWebAssemblyCodeBlock::UnconditionalFinalizer::finalizeUnconditionally): Deleted. >+ * wasm/js/JSWebAssemblyCodeBlock.h: >+ * wasm/js/JSWebAssemblyModule.h: >+ > 2018-05-22 Keith Miller <keith_miller@apple.com> > > Unreviewed, fix internal build. >diff --git a/Source/JavaScriptCore/CMakeLists.txt b/Source/JavaScriptCore/CMakeLists.txt >index 814918808577a45622afc2b532f195fd86831cf0..02b480da5ddcbb163bda8814eaea3be02ee18693 100644 >--- a/Source/JavaScriptCore/CMakeLists.txt >+++ b/Source/JavaScriptCore/CMakeLists.txt >@@ -557,7 +557,6 @@ set(JavaScriptCore_PRIVATE_FRAMEWORK_HEADERS > heap/SubspaceInlines.h > heap/Synchronousness.h > heap/TinyBloomFilter.h >- heap/UnconditionalFinalizer.h > heap/VisitRaceKey.h > heap/Weak.h > heap/WeakBlock.h >diff --git a/Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj b/Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj >index 74a6e6f90152c1578e57eb959408eb968a7cbb0c..76bf3707eaa5e5b703318b0408257aed20a61ef5 100644 >--- a/Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj >+++ b/Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj >@@ -348,7 +348,6 @@ > 0F5E0FD8207C72730097F0DE /* DFGAbstractInterpreterClobberState.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F5E0FD6207C72710097F0DE /* DFGAbstractInterpreterClobberState.h */; }; > 0F5E0FE72086AD480097F0DE /* IsoSubspacePerVM.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F5E0FE52086AD460097F0DE /* IsoSubspacePerVM.h */; settings = {ATTRIBUTES = (Private, ); }; }; > 0F5EF91F16878F7D003E5C25 /* JITThunks.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F5EF91C16878F78003E5C25 /* JITThunks.h */; settings = {ATTRIBUTES = (Private, ); }; }; >- 0F5F08CF146C7633000472A9 /* UnconditionalFinalizer.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F5F08CE146C762F000472A9 /* UnconditionalFinalizer.h */; settings = {ATTRIBUTES = (Private, ); }; }; > 0F60FE901FFC37020003320A /* ExecutableToCodeBlockEdge.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F60FE8E1FFC36FD0003320A /* ExecutableToCodeBlockEdge.h */; settings = {ATTRIBUTES = (Private, ); }; }; > 0F61832A1C45BF070072450B /* AirCCallingConvention.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F6183211C45BF070072450B /* AirCCallingConvention.h */; }; > 0F61832D1C45BF070072450B /* AirEmitShuffle.h in Headers */ = {isa = PBXBuildFile; fileRef = 0F6183241C45BF070072450B /* AirEmitShuffle.h */; }; >@@ -2365,7 +2364,6 @@ > 0F5E0FE62086AD470097F0DE /* IsoSubspacePerVM.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = IsoSubspacePerVM.cpp; sourceTree = "<group>"; }; > 0F5EF91B16878F78003E5C25 /* JITThunks.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = JITThunks.cpp; sourceTree = "<group>"; }; > 0F5EF91C16878F78003E5C25 /* JITThunks.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = JITThunks.h; sourceTree = "<group>"; }; >- 0F5F08CE146C762F000472A9 /* UnconditionalFinalizer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UnconditionalFinalizer.h; sourceTree = "<group>"; }; > 0F60FE8D1FFC36FC0003320A /* ExecutableToCodeBlockEdge.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = ExecutableToCodeBlockEdge.cpp; sourceTree = "<group>"; }; > 0F60FE8E1FFC36FD0003320A /* ExecutableToCodeBlockEdge.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ExecutableToCodeBlockEdge.h; sourceTree = "<group>"; }; > 0F6183201C45BF070072450B /* AirCCallingConvention.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = AirCCallingConvention.cpp; path = b3/air/AirCCallingConvention.cpp; sourceTree = "<group>"; }; >@@ -5773,7 +5771,6 @@ > 0F1FB38A1E173A6200A9BE50 /* SynchronousStopTheWorldMutatorScheduler.cpp */, > 0F1FB38B1E173A6200A9BE50 /* SynchronousStopTheWorldMutatorScheduler.h */, > 141448CC13A1783700F5BA1A /* TinyBloomFilter.h */, >- 0F5F08CE146C762F000472A9 /* UnconditionalFinalizer.h */, > 0F4D8C721FC7A973001D32AC /* VisitCounter.h */, > 0F952A9F1DF7860700E06FBD /* VisitRaceKey.cpp */, > 0F952AA01DF7860700E06FBD /* VisitRaceKey.h */, >@@ -8861,6 +8858,7 @@ > FE1BD0251E72053800134BC9 /* HeapVerifier.h in Headers */, > 0F4680D514BBD24B00BFE272 /* HostCallReturnValue.h in Headers */, > DC2143071CA32E55000A8869 /* ICStats.h in Headers */, >+ 0FB399BE20AF6B3D0017E213 /* ICStatusUtils.h in Headers */, > BC18C40F0E16F5CD00B34460 /* Identifier.h in Headers */, > 8606DDEA18DA44AB00A383D0 /* IdentifierInlines.h in Headers */, > A5FD0076189B038C00633231 /* IdentifiersFactory.h in Headers */, >@@ -8908,6 +8906,8 @@ > A50E4B6218809DD50068A46D /* InspectorRuntimeAgent.h in Headers */, > A55165D31BDF0B9E003B75C1 /* InspectorScriptProfilerAgent.h in Headers */, > 0F49E9AA20AB4D00001CA0AA /* InstanceOfAccessCase.h in Headers */, >+ 0FB399BF20AF6B3F0017E213 /* InstanceOfStatus.h in Headers */, >+ 0FB399C020AF6B430017E213 /* InstanceOfVariant.h in Headers */, > 969A07990ED1D3AE00F1F681 /* Instruction.h in Headers */, > A7A8AF3B17ADB5F3005AB174 /* Int16Array.h in Headers */, > A7A8AF3C17ADB5F3005AB174 /* Int32Array.h in Headers */, >@@ -9066,7 +9066,6 @@ > A503FA1E188E0FB000110F14 /* JSJavaScriptCallFramePrototype.h in Headers */, > 7013CA8C1B491A9400CAE613 /* JSJob.h in Headers */, > BC18C4160E16F5CD00B34460 /* JSLexicalEnvironment.h in Headers */, >- 0FB399C020AF6B430017E213 /* InstanceOfVariant.h in Headers */, > BC18C4230E16F5CD00B34460 /* JSLock.h in Headers */, > C25D709C16DE99F400FCA6BC /* JSManagedValue.h in Headers */, > 2A4BB7F318A41179008A0FCD /* JSManagedValueInternal.h in Headers */, >@@ -9191,7 +9190,6 @@ > 0F4680CD14BBB17D00BFE272 /* LowLevelInterpreter.h in Headers */, > 981ED82328234D91BAECCADE /* MachineContext.h in Headers */, > 14B723B812D7DA6F003BD5ED /* MachineStackMarker.h in Headers */, >- 0FB399BF20AF6B3F0017E213 /* InstanceOfStatus.h in Headers */, > 86C36EEA0EE1289D00B3DF59 /* MacroAssembler.h in Headers */, > 86D3B2C610156BDE002865E7 /* MacroAssemblerARM.h in Headers */, > A1A009C01831A22D00CF8711 /* MacroAssemblerARM64.h in Headers */, >@@ -9448,7 +9446,6 @@ > 705B41AE1A6E501E00716757 /* SymbolConstructor.h in Headers */, > 996B73271BDA08EF00331B84 /* SymbolConstructor.lut.h in Headers */, > 705B41B01A6E501E00716757 /* SymbolObject.h in Headers */, >- 0FB399BE20AF6B3D0017E213 /* ICStatusUtils.h in Headers */, > 705B41B21A6E501E00716757 /* SymbolPrototype.h in Headers */, > 996B73281BDA08EF00331B84 /* SymbolPrototype.lut.h in Headers */, > BC18C46B0E16F5CD00B34460 /* SymbolTable.h in Headers */, >@@ -9489,7 +9486,6 @@ > A7A8AF4217ADB5F3005AB174 /* Uint32Array.h in Headers */, > A7A8AF3F17ADB5F3005AB174 /* Uint8Array.h in Headers */, > A7A8AF4017ADB5F3005AB174 /* Uint8ClampedArray.h in Headers */, >- 0F5F08CF146C7633000472A9 /* UnconditionalFinalizer.h in Headers */, > A7B601821639FD2A00372BA3 /* UnlinkedCodeBlock.h in Headers */, > 14AD91241DCA9FA40014F9FE /* UnlinkedEvalCodeBlock.h in Headers */, > 14AD91231DCA9FA40014F9FE /* UnlinkedFunctionCodeBlock.h in Headers */, >diff --git a/Source/JavaScriptCore/bytecode/CodeBlock.h b/Source/JavaScriptCore/bytecode/CodeBlock.h >index 97b8ab943bc33baa6c7400b9184e4d28d9eb4978..fded8ea4b65cb05f1484d0996cc4d889b6bf13a2 100644 >--- a/Source/JavaScriptCore/bytecode/CodeBlock.h >+++ b/Source/JavaScriptCore/bytecode/CodeBlock.h >@@ -63,7 +63,6 @@ > #include "ProfilerJettisonReason.h" > #include "ProgramExecutable.h" > #include "PutPropertySlot.h" >-#include "UnconditionalFinalizer.h" > #include "ValueProfile.h" > #include "VirtualRegister.h" > #include "Watchpoint.h" >diff --git a/Source/JavaScriptCore/heap/Heap.cpp b/Source/JavaScriptCore/heap/Heap.cpp >index 05bd9b5f3a1bbfe09db864f9982ad0c38c6ab320..422dfa2076eced6d41a597bedf9081a807d36929 100644 >--- a/Source/JavaScriptCore/heap/Heap.cpp >+++ b/Source/JavaScriptCore/heap/Heap.cpp >@@ -591,11 +591,7 @@ void Heap::finalizeUnconditionalFinalizers() > finalizeMarkedUnconditionalFinalizers<ExecutableToCodeBlockEdge>(vm()->executableToCodeBlockEdgesWithFinalizers); > finalizeMarkedUnconditionalFinalizers<JSWeakSet>(vm()->weakSetSpace); > finalizeMarkedUnconditionalFinalizers<JSWeakMap>(vm()->weakMapSpace); >- >- while (m_unconditionalFinalizers.hasNext()) { >- UnconditionalFinalizer* finalizer = m_unconditionalFinalizers.removeNext(); >- finalizer->finalizeUnconditionally(); >- } >+ finalizeMarkedUnconditionalFinalizers<JSWebAssemblyCodeBlock>(vm()->webAssemblyCodeBlockSpace); > } > > void Heap::willStartIterating() >diff --git a/Source/JavaScriptCore/heap/Heap.h b/Source/JavaScriptCore/heap/Heap.h >index aa374cbb68c2dcd5354be4cc4d4fb2f209c9f9f8..e606294428c5fb5f6e18b29f726559e32f564fa1 100644 >--- a/Source/JavaScriptCore/heap/Heap.h >+++ b/Source/JavaScriptCore/heap/Heap.h >@@ -39,7 +39,6 @@ > #include "Options.h" > #include "StructureIDTable.h" > #include "Synchronousness.h" >-#include "UnconditionalFinalizer.h" > #include "WeakHandleOwner.h" > #include "WeakReferenceHarvester.h" > #include <wtf/AutomaticThread.h> >@@ -670,7 +669,6 @@ private: > static const size_t s_blockFragmentLength = 32; > > ListableHandler<WeakReferenceHarvester>::List m_weakReferenceHarvesters; >- ListableHandler<UnconditionalFinalizer>::List m_unconditionalFinalizers; > > ParallelHelperClient m_helperClient; > RefPtr<SharedTask<void(SlotVisitor&)>> m_bonusVisitorTask; >diff --git a/Source/JavaScriptCore/heap/SlotVisitor.cpp b/Source/JavaScriptCore/heap/SlotVisitor.cpp >index da26ddbf8d115de8ce27f3d533741d812b4f4090..5b0924a846d2ca12344fc537a27fec20590549d4 100644 >--- a/Source/JavaScriptCore/heap/SlotVisitor.cpp >+++ b/Source/JavaScriptCore/heap/SlotVisitor.cpp >@@ -758,11 +758,6 @@ void SlotVisitor::addWeakReferenceHarvester(WeakReferenceHarvester* weakReferenc > m_heap.m_weakReferenceHarvesters.addThreadSafe(weakReferenceHarvester); > } > >-void SlotVisitor::addUnconditionalFinalizer(UnconditionalFinalizer* unconditionalFinalizer) >-{ >- m_heap.m_unconditionalFinalizers.addThreadSafe(unconditionalFinalizer); >-} >- > void SlotVisitor::didRace(const VisitRaceKey& race) > { > if (Options::verboseVisitRace()) >diff --git a/Source/JavaScriptCore/heap/SlotVisitor.h b/Source/JavaScriptCore/heap/SlotVisitor.h >index 2a76d7d55f565f59bba40e600ef0560321cce6b9..29fbfacb56234209331bdbf606dfd15c276cc303 100644 >--- a/Source/JavaScriptCore/heap/SlotVisitor.h >+++ b/Source/JavaScriptCore/heap/SlotVisitor.h >@@ -44,7 +44,6 @@ class HeapSnapshotBuilder; > class MarkedBlock; > class MarkingConstraint; > class MarkingConstraintSolver; >-class UnconditionalFinalizer; > template<typename T> class Weak; > class WeakReferenceHarvester; > template<typename T, typename Traits> class WriteBarrierBase; >@@ -142,7 +141,6 @@ public: > #endif > > void addWeakReferenceHarvester(WeakReferenceHarvester*); >- void addUnconditionalFinalizer(UnconditionalFinalizer*); > > void dump(PrintStream&) const; > >diff --git a/Source/JavaScriptCore/heap/UnconditionalFinalizer.h b/Source/JavaScriptCore/heap/UnconditionalFinalizer.h >deleted file mode 100644 >index 10c0cc84e848ec12eef8d71454c33fcad2039a32..0000000000000000000000000000000000000000 >--- a/Source/JavaScriptCore/heap/UnconditionalFinalizer.h >+++ /dev/null >@@ -1,45 +0,0 @@ >-/* >- * Copyright (C) 2011 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. ``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 >- * 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 >- >-#include "ListableHandler.h" >- >-namespace JSC { >- >-// An unconditional finalizer is useful for caches that you would like to >-// destroy on each GC. This is currently used for the bytecode stream >-// associated with each CodeBlock. >- >-class UnconditionalFinalizer : public ListableHandler<UnconditionalFinalizer> { >- WTF_MAKE_FAST_ALLOCATED; >-public: >- virtual void finalizeUnconditionally() = 0; >- >-protected: >- virtual ~UnconditionalFinalizer() { } >-}; >- >-} // namespace JSC >diff --git a/Source/JavaScriptCore/wasm/js/JSWebAssemblyCodeBlock.cpp b/Source/JavaScriptCore/wasm/js/JSWebAssemblyCodeBlock.cpp >index edf94ef3dc4d09707ba0ca1151b3dbf92b1b4454..cedad5bd7eeb24066390265311e70d9f4526e930 100644 >--- a/Source/JavaScriptCore/wasm/js/JSWebAssemblyCodeBlock.cpp >+++ b/Source/JavaScriptCore/wasm/js/JSWebAssemblyCodeBlock.cpp >@@ -50,8 +50,6 @@ JSWebAssemblyCodeBlock::JSWebAssemblyCodeBlock(VM& vm, Ref<Wasm::CodeBlock>&& co > : Base(vm, vm.webAssemblyCodeBlockStructure.get()) > , m_codeBlock(WTFMove(codeBlock)) > { >- m_unconditionalFinalizer = PoisonedUniquePtr<JSWebAssemblyCodeBlockPoison, UnconditionalFinalizer>::create(*this); >- > // FIXME: We should not need to do this synchronously. > // https://bugs.webkit.org/show_bug.cgi?id=170567 > m_wasmToJSExitStubs.reserveCapacity(m_codeBlock->functionImportCount()); >@@ -92,14 +90,12 @@ void JSWebAssemblyCodeBlock::visitChildren(JSCell* cell, SlotVisitor& visitor) > ASSERT_GC_OBJECT_INHERITS(thisObject, info()); > > Base::visitChildren(thisObject, visitor); >- >- visitor.addUnconditionalFinalizer(thisObject->m_unconditionalFinalizer.get()); > } > >-void JSWebAssemblyCodeBlock::UnconditionalFinalizer::finalizeUnconditionally() >+void JSWebAssemblyCodeBlock::finalizeUnconditionally(VM& vm) > { >- for (auto iter = codeBlock.m_callLinkInfos.begin(); !!iter; ++iter) >- (*iter)->visitWeak(*codeBlock.vm()); >+ for (auto iter = m_callLinkInfos.begin(); !!iter; ++iter) >+ (*iter)->visitWeak(vm); > } > > } // namespace JSC >diff --git a/Source/JavaScriptCore/wasm/js/JSWebAssemblyCodeBlock.h b/Source/JavaScriptCore/wasm/js/JSWebAssemblyCodeBlock.h >index 2542af00a803e73f4a7ccaf037aa0266fc88cfbe..0eb4aa16a2630b50900d3dfd6fd8c814a2c1b0bf 100644 >--- a/Source/JavaScriptCore/wasm/js/JSWebAssemblyCodeBlock.h >+++ b/Source/JavaScriptCore/wasm/js/JSWebAssemblyCodeBlock.h >@@ -32,7 +32,6 @@ > #include "JSCast.h" > #include "PromiseDeferredTimer.h" > #include "Structure.h" >-#include "UnconditionalFinalizer.h" > #include "WasmCallee.h" > #include "WasmFormat.h" > #include "WasmModule.h" >@@ -82,6 +81,8 @@ public: > return m_errorMessage; > } > >+ void finalizeUnconditionally(VM&); >+ > private: > JSWebAssemblyCodeBlock(VM&, Ref<Wasm::CodeBlock>&&, const Wasm::ModuleInformation&); > DECLARE_EXPORT_INFO; >@@ -89,17 +90,8 @@ private: > static void destroy(JSCell*); > static void visitChildren(JSCell*, SlotVisitor&); > >- struct UnconditionalFinalizer : public JSC::UnconditionalFinalizer { >- UnconditionalFinalizer(JSWebAssemblyCodeBlock& codeBlock) >- : codeBlock(codeBlock) >- { } >- void finalizeUnconditionally() override; >- JSWebAssemblyCodeBlock& codeBlock; >- }; >- > PoisonedRef<JSWebAssemblyCodeBlockPoison, Wasm::CodeBlock> m_codeBlock; > Vector<MacroAssemblerCodeRef<WasmEntryPtrTag>> m_wasmToJSExitStubs; >- PoisonedUniquePtr<JSWebAssemblyCodeBlockPoison, UnconditionalFinalizer> m_unconditionalFinalizer; > Bag<CallLinkInfo> m_callLinkInfos; > String m_errorMessage; > }; >diff --git a/Source/JavaScriptCore/wasm/js/JSWebAssemblyModule.h b/Source/JavaScriptCore/wasm/js/JSWebAssemblyModule.h >index 3fff1ec5b547cadc588210b698c86bcf5807bd7a..17bed6125f4e7f319a8b7af2e1ddf864aeb2fa5a 100644 >--- a/Source/JavaScriptCore/wasm/js/JSWebAssemblyModule.h >+++ b/Source/JavaScriptCore/wasm/js/JSWebAssemblyModule.h >@@ -30,7 +30,6 @@ > #include "JSCPoison.h" > #include "JSDestructibleObject.h" > #include "JSObject.h" >-#include "UnconditionalFinalizer.h" > #include "WasmMemoryMode.h" > #include <wtf/Bag.h> > #include <wtf/Expected.h>
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
Actions:
View
|
Formatted Diff
|
Diff
Attachments on
bug 185881
:
341014
|
341016