From 16e5dca30d79bfd636b8d5df6d09076fc428daef Mon Sep 17 00:00:00 2001 From: Santiago Aboy Solanes Date: Mon, 11 Jan 2021 14:43:11 +0000 Subject: [PATCH] [compiler] Mark String as kNeverSerialized Bug: v8:7790 Change-Id: I2deb462c3467f7239d55b0f295feed1de5ca1c2f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2616198 Commit-Queue: Santiago Aboy Solanes Reviewed-by: Georg Neis Cr-Commit-Position: refs/heads/master@{#72010} --- src/compiler/heap-refs.h | 3 +-- src/compiler/js-heap-broker.cc | 4 +++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/src/compiler/heap-refs.h b/src/compiler/heap-refs.h index c03ae3a109..0379689ccd 100644 --- a/src/compiler/heap-refs.h +++ b/src/compiler/heap-refs.h @@ -64,6 +64,7 @@ enum class OddballType : uint8_t { /* Subtypes of String */ \ V(InternalizedString) \ /* Subtypes of Name */ \ + V(String) \ V(Symbol) \ /* Subtypes of HeapObject */ \ V(AccessorInfo) \ @@ -93,8 +94,6 @@ enum class OddballType : uint8_t { V(BytecodeArray) \ V(FixedArray) \ V(FixedDoubleArray) \ - /* Subtypes of Name */ \ - V(String) \ /* Subtypes of JSReceiver */ \ V(JSObject) \ /* Subtypes of HeapObject */ \ diff --git a/src/compiler/js-heap-broker.cc b/src/compiler/js-heap-broker.cc index 9ed0875b77..6696595784 100644 --- a/src/compiler/js-heap-broker.cc +++ b/src/compiler/js-heap-broker.cc @@ -812,7 +812,9 @@ StringData::StringData(JSHeapBroker* broker, ObjectData** storage, to_number_(TryStringToDouble(broker->local_isolate(), object)), is_external_string_(object->IsExternalString()), is_seq_string_(object->IsSeqString()), - chars_as_strings_(broker->zone()) {} + chars_as_strings_(broker->zone()) { + DCHECK(!FLAG_turbo_direct_heap_access); +} class InternalizedStringData : public StringData { public: