[sparkplug] Enable shorter builtin calls behind --short-builtin-calls

... on desktop x64 and arm64 if pointer compression is enabled.

Bug: v8:11527
Change-Id: Ie23b59312c6db34a5f40e23347b3c4f11173612d
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2767222
Commit-Queue: Igor Sheludko <ishell@chromium.org>
Reviewed-by: Michael Achenbach <machenbach@chromium.org>
Cr-Commit-Position: refs/heads/master@{#73498}
This commit is contained in:
Igor Sheludko 2021-03-17 22:07:38 +01:00 committed by Commit Bot
parent 28cd97b8d4
commit 5f9f09f4db
3 changed files with 20 additions and 9 deletions

View File

@ -345,10 +345,13 @@ if (v8_enable_heap_sandbox == "") {
v8_enable_heap_sandbox = false
}
if (v8_enable_short_builtin_calls == "") {
v8_enable_short_builtin_calls =
v8_current_cpu == "x64" || (!is_android && v8_current_cpu == "arm64")
}
if (v8_enable_short_builtin_calls && !v8_enable_pointer_compression) {
# Disable short calls when pointer compression is not enabled.
v8_enable_short_builtin_calls = false
}
assert(!v8_enable_short_builtin_calls || v8_enable_pointer_compression,
"Short builtin calls feature requires pointer compression")
if (v8_enable_single_generation == "") {
v8_enable_single_generation = v8_disable_write_barriers
}

View File

@ -106,9 +106,6 @@ STATIC_ASSERT(V8_DEFAULT_STACK_SIZE_KB* KB +
// and friends.
#error Short builtin calls feature requires pointer compression
#endif
#define V8_SHORT_BUILTIN_CALLS_BOOL true
#else
#define V8_SHORT_BUILTIN_CALLS_BOOL false
#endif
// Determine whether dict mode prototypes feature is enabled.

View File

@ -1535,10 +1535,21 @@ DEFINE_BOOL(adjust_os_scheduling_parameters, true,
"adjust OS specific scheduling params for the isolate")
DEFINE_BOOL(experimental_flush_embedded_blob_icache, false,
"Used in an experiment to evaluate icache flushing on certain CPUs")
DEFINE_BOOL_READONLY(
short_builtin_calls, V8_SHORT_BUILTIN_CALLS_BOOL,
"Put embedded builtins code into the code range for shorter "
"builtin calls/jumps")
// Flags for short builtin calls feature
#undef FLAG
#if V8_SHORT_BUILTIN_CALLS
#define FLAG FLAG_FULL
#else
#define FLAG FLAG_READONLY
#endif
DEFINE_BOOL(short_builtin_calls, false,
"Put embedded builtins code into the code range for shorter "
"builtin calls/jumps")
#undef FLAG
#define FLAG FLAG_FULL
// runtime.cc
DEFINE_BOOL(runtime_call_stats, false, "report runtime call counts and times")