WebKit Bugzilla
Attachment 362660 Details for
Bug 194316
: [JSC] Use Fast Malloc as much as possible
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
Remember
[x]
|
Forgot Password
Login:
[x]
[patch]
Patch
bug-194316-20190221160636.patch (text/plain), 9.33 KB, created by
Yusuke Suzuki
on 2019-02-21 16:06:37 PST
(
hide
)
Description:
Patch
Filename:
MIME Type:
Creator:
Yusuke Suzuki
Created:
2019-02-21 16:06:37 PST
Size:
9.33 KB
patch
obsolete
>Subversion Revision: 241900 >diff --git a/Source/JavaScriptCore/ChangeLog b/Source/JavaScriptCore/ChangeLog >index fcab6e3d3eb73d070e9a55c0a1b2e25be80c420d..c068b843e90fc0753834d145cbefe12e820585b2 100644 >--- a/Source/JavaScriptCore/ChangeLog >+++ b/Source/JavaScriptCore/ChangeLog >@@ -1,3 +1,24 @@ >+2019-02-21 Yusuke Suzuki <ysuzuki@apple.com> >+ >+ [JSC] Use Fast Malloc as much as possible >+ https://bugs.webkit.org/show_bug.cgi?id=194316 >+ >+ Reviewed by Mark Lam. >+ >+ We should use Fast Malloc as much as possible to offer the whole memory view to bmalloc. >+ >+ * inspector/scripts/codegen/cpp_generator_templates.py: >+ * inspector/scripts/tests/all/expected/definitions-with-mac-platform.json-result: >+ * inspector/scripts/tests/generic/expected/enum-values.json-result: >+ * inspector/scripts/tests/generic/expected/events-with-optional-parameters.json-result: >+ * inspector/scripts/tests/generic/expected/generate-domains-with-feature-guards.json-result: >+ * inspector/scripts/tests/mac/expected/definitions-with-mac-platform.json-result: >+ * jit/ExecutableAllocator.h: >+ * jsc.cpp: >+ * runtime/JSRunLoopTimer.h: >+ * tools/VMInspector.h: >+ * wasm/WasmThunks.h: >+ > 2019-02-20 Yusuke Suzuki <ysuzuki@apple.com> > > [JSC] Remove WatchpointSet creation for SymbolTable entries if VM::canUseJIT() returns false >diff --git a/Source/JavaScriptCore/inspector/scripts/codegen/cpp_generator_templates.py b/Source/JavaScriptCore/inspector/scripts/codegen/cpp_generator_templates.py >index fe4fb2c67d7ca88f957d27c98e653362c7492fe6..a9543829622689a657d4e116dcf201f5eeb7437d 100755 >--- a/Source/JavaScriptCore/inspector/scripts/codegen/cpp_generator_templates.py >+++ b/Source/JavaScriptCore/inspector/scripts/codegen/cpp_generator_templates.py >@@ -196,6 +196,7 @@ class AlternateBackendDispatcher { > > FrontendDispatcherDomainDispatcherDeclaration = ( > """${classAndExportMacro} ${domainName}FrontendDispatcher { >+ WTF_MAKE_FAST_ALLOCATED; > public: > ${domainName}FrontendDispatcher(FrontendRouter& frontendRouter) : m_frontendRouter(frontendRouter) { } > ${eventDeclarations} >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/all/expected/definitions-with-mac-platform.json-result b/Source/JavaScriptCore/inspector/scripts/tests/all/expected/definitions-with-mac-platform.json-result >index 1234ca92e4d9fbbd477f7368bfa8cede94eb84f3..163be7c362e749741864759ef9568f6d80d4171c 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/all/expected/definitions-with-mac-platform.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/all/expected/definitions-with-mac-platform.json-result >@@ -306,6 +306,7 @@ namespace Inspector { > class FrontendRouter; > > class NetworkFrontendDispatcher { >+ WTF_MAKE_FAST_ALLOCATED; > public: > NetworkFrontendDispatcher(FrontendRouter& frontendRouter) : m_frontendRouter(frontendRouter) { } > void resourceLoaded(); >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/enum-values.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/enum-values.json-result >index ff6e9e02b7703d1878a36fb9b834f53b6412c373..4d94ad94ad851f585f48e9115e3beccf97b7ad5f 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/enum-values.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/enum-values.json-result >@@ -325,6 +325,7 @@ namespace Inspector { > class FrontendRouter; > > class EventDomainFrontendDispatcher { >+ WTF_MAKE_FAST_ALLOCATED; > public: > EventDomainFrontendDispatcher(FrontendRouter& frontendRouter) : m_frontendRouter(frontendRouter) { } > // Named after parameter 'parameter' while generating command/event eventWithEnumParameter. >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/events-with-optional-parameters.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/events-with-optional-parameters.json-result >index 8f743f57abb2aaa7907021fd0db7185ecd72bbff..d8e7d548ce52b877d02b7a57927b9ead96261048 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/events-with-optional-parameters.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/events-with-optional-parameters.json-result >@@ -232,6 +232,7 @@ namespace Inspector { > class FrontendRouter; > > class DatabaseFrontendDispatcher { >+ WTF_MAKE_FAST_ALLOCATED; > public: > DatabaseFrontendDispatcher(FrontendRouter& frontendRouter) : m_frontendRouter(frontendRouter) { } > void didExecuteOptionalParameters(RefPtr<JSON::ArrayOf<String>> columnNames, const String* notes, const double* timestamp, RefPtr<JSON::Object> values, RefPtr<JSON::Value> payload, RefPtr<Inspector::Protocol::Database::Error> sqlError, const String* screenColor, RefPtr<Inspector::Protocol::Database::ColorList> alternateColors, const String* printColor); >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/generate-domains-with-feature-guards.json-result b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/generate-domains-with-feature-guards.json-result >index b5f9e6a183c37a030c2b67af7f7b060e7b262137..431ab2158546f7c1b2ae3892b47839ab9cc4d0d9 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/generate-domains-with-feature-guards.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/generic/expected/generate-domains-with-feature-guards.json-result >@@ -322,6 +322,7 @@ class FrontendRouter; > > #if PLATFORM(WEB_EVENTS) > class Network3FrontendDispatcher { >+ WTF_MAKE_FAST_ALLOCATED; > public: > Network3FrontendDispatcher(FrontendRouter& frontendRouter) : m_frontendRouter(frontendRouter) { } > void resourceLoaded(); >diff --git a/Source/JavaScriptCore/inspector/scripts/tests/mac/expected/definitions-with-mac-platform.json-result b/Source/JavaScriptCore/inspector/scripts/tests/mac/expected/definitions-with-mac-platform.json-result >index 1234ca92e4d9fbbd477f7368bfa8cede94eb84f3..163be7c362e749741864759ef9568f6d80d4171c 100644 >--- a/Source/JavaScriptCore/inspector/scripts/tests/mac/expected/definitions-with-mac-platform.json-result >+++ b/Source/JavaScriptCore/inspector/scripts/tests/mac/expected/definitions-with-mac-platform.json-result >@@ -306,6 +306,7 @@ namespace Inspector { > class FrontendRouter; > > class NetworkFrontendDispatcher { >+ WTF_MAKE_FAST_ALLOCATED; > public: > NetworkFrontendDispatcher(FrontendRouter& frontendRouter) : m_frontendRouter(frontendRouter) { } > void resourceLoaded(); >diff --git a/Source/JavaScriptCore/jit/ExecutableAllocator.h b/Source/JavaScriptCore/jit/ExecutableAllocator.h >index 13ed346cd90552d7200c84f20641ec5a207f9a14..bb98f520e2b46aabb1d4212b6a2ac080895ad16d 100644 >--- a/Source/JavaScriptCore/jit/ExecutableAllocator.h >+++ b/Source/JavaScriptCore/jit/ExecutableAllocator.h >@@ -123,6 +123,8 @@ static inline void* performJITMemcpy(void *dst, const void *src, size_t n) > } > > class ExecutableAllocator { >+ WTF_MAKE_FAST_ALLOCATED; >+ WTF_MAKE_NONCOPYABLE(ExecutableAllocator); > enum ProtectionSetting { Writable, Executable }; > > public: >diff --git a/Source/JavaScriptCore/jsc.cpp b/Source/JavaScriptCore/jsc.cpp >index 75751426e412f5239450a13e3d9cf865fd35b279..8ec1d29ba003cd20a0dea4d5d1b8c13535f46590 100644 >--- a/Source/JavaScriptCore/jsc.cpp >+++ b/Source/JavaScriptCore/jsc.cpp >@@ -255,6 +255,8 @@ class Worker : public BasicRawSentinelNode<Worker> { > }; > > class Workers { >+ WTF_MAKE_FAST_ALLOCATED; >+ WTF_MAKE_NONCOPYABLE(Workers); > public: > Workers(); > ~Workers(); >diff --git a/Source/JavaScriptCore/runtime/JSRunLoopTimer.h b/Source/JavaScriptCore/runtime/JSRunLoopTimer.h >index b9a2f43a8798aaa316c5d5f5ea3625fc00b174d8..3626ab6b6cd63eb95112dff9068c9d3f405d93b7 100644 >--- a/Source/JavaScriptCore/runtime/JSRunLoopTimer.h >+++ b/Source/JavaScriptCore/runtime/JSRunLoopTimer.h >@@ -48,11 +48,14 @@ class JSRunLoopTimer : public ThreadSafeRefCounted<JSRunLoopTimer> { > using TimerNotificationCallback = RefPtr<WTF::SharedTask<TimerNotificationType>>; > > class Manager { >+ WTF_MAKE_FAST_ALLOCATED; >+ WTF_MAKE_NONCOPYABLE(Manager); > #if USE(CF) > static void timerDidFireCallback(CFRunLoopTimerRef, void*); > #else > void timerDidFireCallback(); > #endif >+ Manager() = default; > > void timerDidFire(); > >diff --git a/Source/JavaScriptCore/tools/VMInspector.h b/Source/JavaScriptCore/tools/VMInspector.h >index 3f3f33b7eb3c953e68d6288d2756f667e9809b50..3a3b7ee3f4e47dd4800df6f4baa510ccc31e17af 100644 >--- a/Source/JavaScriptCore/tools/VMInspector.h >+++ b/Source/JavaScriptCore/tools/VMInspector.h >@@ -34,6 +34,9 @@ > namespace JSC { > > class VMInspector { >+ WTF_MAKE_FAST_ALLOCATED; >+ WTF_MAKE_NONCOPYABLE(VMInspector); >+ VMInspector() = default; > public: > enum class Error { > None, >diff --git a/Source/JavaScriptCore/wasm/WasmThunks.h b/Source/JavaScriptCore/wasm/WasmThunks.h >index cc05b6db7041e304c9af7f991315f79591b619f0..f92fa5dbae270f0a38039ae6c9398fb453790744 100644 >--- a/Source/JavaScriptCore/wasm/WasmThunks.h >+++ b/Source/JavaScriptCore/wasm/WasmThunks.h >@@ -39,6 +39,8 @@ MacroAssemblerCodeRef<JITThunkPtrTag> triggerOMGTierUpThunkGenerator(const Abstr > typedef MacroAssemblerCodeRef<JITThunkPtrTag> (*ThunkGenerator)(const AbstractLocker&); > > class Thunks { >+ WTF_MAKE_FAST_ALLOCATED; >+ WTF_MAKE_NONCOPYABLE(Thunks); > public: > static void initialize(); > static Thunks& singleton();
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 194316
:
361244
| 362660