Lines Matching defs:isolate

10 #include "src/execution/isolate-utils.h"
35 explicit SharedStringAccessGuardIfNeeded(Isolate* isolate) {}
45 // Slow version which gets the isolate from the String.
47 Isolate* isolate = GetIsolateIfNeeded(str);
48 if (isolate != nullptr)
49 mutex_guard.emplace(isolate->internalized_string_access());
82 Isolate* isolate;
83 if (!GetIsolateFromHeapObject(str, &isolate)) {
84 // If we can't get the isolate from the String, it must be read-only.
88 return isolate;
374 bool IsMatch(IsolateT* isolate, String s) {
375 return s.IsEqualTo<String::EqualityType::kNoLengthCheck>(chars_, isolate);
379 void PrepareForInsertion(IsolateT* isolate) {
381 internalized_string_ = isolate->factory()->NewOneByteInternalizedString(
384 internalized_string_ = isolate->factory()->NewTwoByteInternalizedString(
415 SeqSubStringKey(Isolate* isolate, Handle<SeqString> string, int from, int len,
424 string->GetChars(no_gc) + from, len, HashSeed(isolate));
436 bool IsMatch(Isolate* isolate, String string) {
442 isolate);
445 void PrepareForInsertion(Isolate* isolate) {
448 isolate->factory()->AllocateRawOneByteInternalizedString(
456 isolate->factory()->AllocateRawTwoByteInternalizedString(
488 bool String::Equals(Isolate* isolate, Handle<String> one, Handle<String> two) {
493 return SlowEquals(isolate, one, two);
497 bool String::IsEqualTo(base::Vector<const Char> str, Isolate* isolate) const {
499 return IsEqualToImpl<kEqType>(str, isolate,
512 LocalIsolate* isolate) const {
513 SharedStringAccessGuardIfNeeded access_guard(isolate);
514 return IsEqualToImpl<kEqType>(str, isolate, access_guard);
645 Handle<String> String::Flatten(Isolate* isolate, Handle<String> string,
648 PtrComprCageBase cage_base(isolate);
658 if (!cons.IsFlat(isolate)) {
660 return SlowFlatten(isolate, handle(cons, isolate), allocation);
671 return handle(s, isolate);
675 Handle<String> String::Flatten(LocalIsolate* isolate, Handle<String> string,
718 Isolate* isolate;
723 DCHECK_IMPLIES(GetIsolateFromHeapObject(*this, &isolate) && !InSharedHeap(),
724 ThreadId::Current() == isolate->thread_id());
786 Handle<String> String::Share(Isolate* isolate, Handle<String> string) {
790 isolate->factory()->ComputeSharingStrategyForString(string, &new_map)) {
792 return SlowShare(isolate, string);
810 uint16_t String::Get(int index, Isolate* isolate) const {
811 SharedStringAccessGuardIfNeeded scope(isolate);
812 return GetImpl(index, isolate, scope);
1106 void ExternalString::AllocateExternalPointerEntries(Isolate* isolate) {
1107 InitExternalPointerField(kResourceOffset, isolate,
1110 InitExternalPointerField(kResourceDataOffset, isolate,
1115 Isolate* isolate = GetIsolateForSandbox(*this);
1116 return ReadExternalPointerField(kResourceOffset, isolate,
1120 void ExternalString::set_address_as_resource(Isolate* isolate, Address value) {
1121 WriteExternalPointerField(kResourceOffset, isolate, value,
1124 ExternalOneByteString::cast(*this).update_data_cache(isolate);
1126 ExternalTwoByteString::cast(*this).update_data_cache(isolate);
1143 void ExternalString::DisposeResource(Isolate* isolate) {
1144 Address value = ReadExternalPointerField(kResourceOffset, isolate,
1152 WriteExternalPointerField(kResourceOffset, isolate, kNullAddress,
1167 void ExternalOneByteString::update_data_cache(Isolate* isolate) {
1170 if (resource(isolate)->IsCacheable())
1171 mutable_resource(isolate)->UpdateDataCache();
1174 kResourceDataOffset, isolate,
1175 reinterpret_cast<Address>(resource(isolate)->data()),
1181 Isolate* isolate, const ExternalOneByteString::Resource* resource) {
1182 set_resource(isolate, resource);
1185 isolate->heap()->UpdateExternalString(*this, 0, new_payload);
1190 Isolate* isolate, const ExternalOneByteString::Resource* resource) {
1191 WriteExternalPointerField(kResourceOffset, isolate,
1194 if (resource != nullptr) update_data_cache(isolate);
1211 Isolate* isolate;
1212 DCHECK_IMPLIES(GetIsolateFromHeapObject(*this, &isolate),
1213 ThreadId::Current() == isolate->thread_id());
1239 void ExternalTwoByteString::update_data_cache(Isolate* isolate) {
1242 if (resource(isolate)->IsCacheable())
1243 mutable_resource(isolate)->UpdateDataCache();
1246 kResourceDataOffset, isolate,
1247 reinterpret_cast<Address>(resource(isolate)->data()),
1253 Isolate* isolate, const ExternalTwoByteString::Resource* resource) {
1254 set_resource(isolate, resource);
1257 isolate->heap()->UpdateExternalString(*this, 0, new_payload);
1262 Isolate* isolate, const ExternalTwoByteString::Resource* resource) {
1263 WriteExternalPointerField(kResourceOffset, isolate,
1266 if (resource != nullptr) update_data_cache(isolate);
1283 Isolate* isolate;
1284 DCHECK_IMPLIES(GetIsolateFromHeapObject(*this, &isolate),
1285 ThreadId::Current() == isolate->thread_id());