Commit c63cbbdd authored by Jakob Gruber's avatar Jakob Gruber Committed by Commit Bot

Remove --lazy-handler-deserialization flag

Handlers were recently moved to the builtins table, and we never added
full support for this flag. It doesn't add much value and lazy
deserialization is scheduled for mid-term removal anyways, so let's
just delete it.

--lazy-deserialization now controls both builtin- and
handler-deserialization behavior.

Bug: v8:6624
Change-Id: Iffb7286a00157966abf99158ba629ce4765536d6
Reviewed-on: https://chromium-review.googlesource.com/1238235
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: 's avatarDan Elphick <delphick@chromium.org>
Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#56117}
parent d968ffa2
......@@ -1099,10 +1099,6 @@ DEFINE_BOOL(print_embedded_builtin_candidates, false,
"Prints builtins that are not yet embedded but could be.")
DEFINE_BOOL(lazy_deserialization, true,
"Deserialize code lazily from the snapshot.")
DEFINE_BOOL(lazy_handler_deserialization, true,
"Deserialize bytecode handlers lazily from the snapshot.")
DEFINE_IMPLICATION(lazy_handler_deserialization, lazy_deserialization)
DEFINE_IMPLICATION(future, lazy_handler_deserialization)
DEFINE_BOOL(trace_lazy_deserialization, false, "Trace lazy deserialization.")
DEFINE_BOOL(profile_deserialization, false,
"Print the time it takes to deserialize the snapshot.")
......
......@@ -82,7 +82,7 @@ Code* Interpreter::GetAndMaybeDeserializeBytecodeHandler(
// Already deserialized? Then just return the handler.
if (!Builtins::IsLazyDeserializer(code)) return code;
DCHECK(FLAG_lazy_handler_deserialization);
DCHECK(FLAG_lazy_deserialization);
DCHECK(Bytecodes::BytecodeHasHandler(bytecode, operand_scale));
code = Snapshot::DeserializeBuiltin(isolate_, builtin_index);
......
......@@ -23,7 +23,6 @@ namespace internal {
RUNTIME_FUNCTION(Runtime_InterpreterDeserializeLazy) {
HandleScope scope(isolate);
DCHECK(FLAG_lazy_handler_deserialization);
DCHECK(FLAG_lazy_deserialization);
DCHECK_EQ(2, args.length());
CONVERT_SMI_ARG_CHECKED(bytecode_int, 0);
......
......@@ -27,8 +27,11 @@ void BuiltinSerializer::SerializeBuiltinsAndHandlers() {
// Serialize builtins.
for (int i = 0; i < Builtins::builtin_count; i++) {
Code* code = isolate()->builtins()->builtin(i);
DCHECK_IMPLIES(Builtins::IsLazyDeserializer(code),
Builtins::IsLazyDeserializer(i));
SetBuiltinOffset(i, sink_.Position());
SerializeBuiltin(isolate()->builtins()->builtin(i));
SerializeBuiltin(code);
}
// Pad with kNop since GetInt() might read too far.
......
......@@ -46,16 +46,13 @@ class JSCallReducerTest : public TypedGraphTest {
static void SetUpTestCase() {
old_flag_lazy_ = i::FLAG_lazy_deserialization;
old_flag_lazy_handler_ = i::FLAG_lazy_handler_deserialization;
i::FLAG_lazy_deserialization = false;
i::FLAG_lazy_handler_deserialization = false;
TypedGraphTest::SetUpTestCase();
}
static void TearDownTestCase() {
TypedGraphTest::TearDownTestCase();
i::FLAG_lazy_deserialization = old_flag_lazy_;
i::FLAG_lazy_handler_deserialization = old_flag_lazy_handler_;
}
Node* GlobalFunction(const char* name) {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment