-
ggaren@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=69466 Reviewed by Oliver Hunt. * heap/Heap.cpp: (JSC::Heap::addFinalizer): (JSC::Heap::FinalizerOwner::finalize): * heap/Heap.h: New function for adding an arbitrary finalizer for an arbitrary cell without declaring any special classes or Handles yourself. * JavaScriptCore.exp: Fix build. * runtime/Executable.cpp: (JSC::ExecutableBase::clearCode): (JSC::ExecutableBase::clearCodeVirtual): (JSC::EvalExecutable::clearCodeVirtual): (JSC::ProgramExecutable::clearCodeVirtual): (JSC::FunctionExecutable::discardCode): (JSC::FunctionExecutable::clearCodeVirtual): * runtime/Executable.h: (JSC::ExecutableBase::finishCreation): Use the new mechanism for eager finalization of executables. * runtime/JSGlobalObject.cpp: (JSC::JSGlobalObject::clearRareData): * runtime/JSGlobalObject.h: (JSC::JSGlobalObject::createRareDataIfNeeded): (JSC::JSGlobalObject::registerWeakMap): Use the new mechanism for eager finalization of weak maps. git-svn-id: http://svn.webkit.org/repository/webkit/trunk@96760 268f45cc-cd09-0410-ab3c-d52691b4dbfc
75bf76c6