| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
1 parent c97237b commit 09f5e25
3 files changed
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -11,7 +11,7 @@ | |||
| 11 | 11 | #define V8_MAJOR_VERSION 6 | |
| 12 | 12 | #define V8_MINOR_VERSION 2 | |
| 13 | 13 | #define V8_BUILD_NUMBER 414 | |
| 14 | - #define V8_PATCH_LEVEL 51 | ||
| 14 | + #define V8_PATCH_LEVEL 52 | ||
| 15 | 15 | ||
| 16 | 16 | // Use 1 for candidates and 0 otherwise. | |
| 17 | 17 | // (Boolean macro values are not supported by all preprocessors.) | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -5190,6 +5190,7 @@ Local<v8::Context> v8::Object::CreationContext() { | |||
| 5190 | 5190 | ||
| 5191 | 5191 | ||
| 5192 | 5192 | int v8::Object::GetIdentityHash() { | |
| 5193 | + i::DisallowHeapAllocation no_gc; | ||
| 5193 | 5194 | auto isolate = Utils::OpenHandle(this)->GetIsolate(); | |
| 5194 | 5195 | i::HandleScope scope(isolate); | |
| 5195 | 5196 | auto self = Utils::OpenHandle(this); | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
@@ -2301,6 +2301,7 @@ namespace { | |||
| 2301 | 2301 | // objects. This avoids a double lookup in the cases where we know we will | |
| 2302 | 2302 | // add the hash to the JSObject if it does not already exist. | |
| 2303 | 2303 | Object* GetSimpleHash(Object* object) { | |
| 2304 | + DisallowHeapAllocation no_gc; | ||
| 2304 | 2305 | // The object is either a Smi, a HeapNumber, a name, an odd-ball, a real JS | |
| 2305 | 2306 | // object, or a Harmony proxy. | |
| 2306 | 2307 | if (object->IsSmi()) { | |
@@ -2333,10 +2334,10 @@ Object* GetSimpleHash(Object* object) { | |||
| 2333 | 2334 | } // namespace | |
| 2334 | 2335 | ||
| 2335 | 2336 | Object* Object::GetHash() { | |
| 2337 | + DisallowHeapAllocation no_gc; | ||
| 2336 | 2338 | Object* hash = GetSimpleHash(this); | |
| 2337 | 2339 | if (hash->IsSmi()) return hash; | |
| 2338 | 2340 | ||
| 2339 | - DisallowHeapAllocation no_gc; | ||
| 2340 | 2341 | DCHECK(IsJSReceiver()); | |
| 2341 | 2342 | JSReceiver* receiver = JSReceiver::cast(this); | |
| 2342 | 2343 | Isolate* isolate = receiver->GetIsolate(); | |
@@ -2345,10 +2346,12 @@ Object* Object::GetHash() { | |||
| 2345 | 2346 | ||
| 2346 | 2347 | // static | |
| 2347 | 2348 | Smi* Object::GetOrCreateHash(Isolate* isolate, Object* key) { | |
| 2349 | + DisallowHeapAllocation no_gc; | ||
| 2348 | 2350 | return key->GetOrCreateHash(isolate); | |
| 2349 | 2351 | } | |
| 2350 | 2352 | ||
| 2351 | 2353 | Smi* Object::GetOrCreateHash(Isolate* isolate) { | |
| 2354 | + DisallowHeapAllocation no_gc; | ||
| 2352 | 2355 | Object* hash = GetSimpleHash(this); | |
| 2353 | 2356 | if (hash->IsSmi()) return Smi::cast(hash); | |
| 2354 | 2357 | ||
@@ -6286,6 +6289,7 @@ Object* SetHashAndUpdateProperties(HeapObject* properties, int masked_hash) { | |||
| 6286 | 6289 | } | |
| 6287 | 6290 | ||
| 6288 | 6291 | int GetIdentityHashHelper(Isolate* isolate, JSReceiver* object) { | |
| 6292 | + DisallowHeapAllocation no_gc; | ||
| 6289 | 6293 | Object* properties = object->raw_properties_or_hash(); | |
| 6290 | 6294 | if (properties->IsSmi()) { | |
| 6291 | 6295 | return Smi::ToInt(properties); | |
@@ -6312,6 +6316,7 @@ int GetIdentityHashHelper(Isolate* isolate, JSReceiver* object) { | |||
| 6312 | 6316 | } // namespace | |
| 6313 | 6317 | ||
| 6314 | 6318 | void JSReceiver::SetIdentityHash(int masked_hash) { | |
| 6319 | + DisallowHeapAllocation no_gc; | ||
| 6315 | 6320 | DCHECK_NE(PropertyArray::kNoHashSentinel, masked_hash); | |
| 6316 | 6321 | DCHECK_EQ(masked_hash & JSReceiver::kHashMask, masked_hash); | |
| 6317 | 6322 | ||
@@ -6322,6 +6327,7 @@ void JSReceiver::SetIdentityHash(int masked_hash) { | |||
| 6322 | 6327 | } | |
| 6323 | 6328 | ||
| 6324 | 6329 | void JSReceiver::SetProperties(HeapObject* properties) { | |
| 6330 | + DisallowHeapAllocation no_gc; | ||
| 6325 | 6331 | Isolate* isolate = properties->GetIsolate(); | |
| 6326 | 6332 | int hash = GetIdentityHashHelper(isolate, this); | |
| 6327 | 6333 | Object* new_properties = properties; | |
@@ -6337,6 +6343,7 @@ void JSReceiver::SetProperties(HeapObject* properties) { | |||
| 6337 | 6343 | ||
| 6338 | 6344 | template <typename ProxyType> | |
| 6339 | 6345 | Smi* GetOrCreateIdentityHashHelper(Isolate* isolate, ProxyType* proxy) { | |
| 6346 | + DisallowHeapAllocation no_gc; | ||
| 6340 | 6347 | Object* maybe_hash = proxy->hash(); | |
| 6341 | 6348 | if (maybe_hash->IsSmi()) return Smi::cast(maybe_hash); | |
| 6342 | 6349 | ||
@@ -6346,6 +6353,7 @@ Smi* GetOrCreateIdentityHashHelper(Isolate* isolate, ProxyType* proxy) { | |||
| 6346 | 6353 | } | |
| 6347 | 6354 | ||
| 6348 | 6355 | Object* JSObject::GetIdentityHash(Isolate* isolate) { | |
| 6356 | + DisallowHeapAllocation no_gc; | ||
| 6349 | 6357 | if (IsJSGlobalProxy()) { | |
| 6350 | 6358 | return JSGlobalProxy::cast(this)->hash(); | |
| 6351 | 6359 | } | |
@@ -6359,6 +6367,7 @@ Object* JSObject::GetIdentityHash(Isolate* isolate) { | |||
| 6359 | 6367 | } | |
| 6360 | 6368 | ||
| 6361 | 6369 | Smi* JSObject::GetOrCreateIdentityHash(Isolate* isolate) { | |
| 6370 | + DisallowHeapAllocation no_gc; | ||
| 6362 | 6371 | if (IsJSGlobalProxy()) { | |
| 6363 | 6372 | return GetOrCreateIdentityHashHelper(isolate, JSGlobalProxy::cast(this)); | |
| 6364 | 6373 | } | |
| Back | FazBrowse Home | New Git URL |
0 commit comments