File tree Expand file tree Collapse file tree 2 files changed +8
-7
lines changed Expand file tree Collapse file tree 2 files changed +8
-7
lines changed Original file line number Diff line number Diff line change 11
11
#define V8_MAJOR_VERSION 12
12
12
#define V8_MINOR_VERSION 4
13
13
#define V8_BUILD_NUMBER 254
14
- #define V8_PATCH_LEVEL 18
14
+ #define V8_PATCH_LEVEL 19
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 @@ -2377,15 +2377,16 @@ Handle<Object> KeyedStoreIC::StoreElementHandler(
2377
2377
isolate ()),
2378
2378
IsStoreInArrayLiteralIC ());
2379
2379
2380
- if (IsJSProxyMap (*receiver_map)) {
2380
+ if (! IsJSObjectMap (*receiver_map)) {
2381
2381
// DefineKeyedOwnIC, which is used to define computed fields in instances,
2382
- // should be handled by the slow stub.
2383
- if (IsDefineKeyedOwnIC ()) {
2384
- TRACE_HANDLER_STATS (isolate (), KeyedStoreIC_SlowStub);
2385
- return StoreHandler::StoreSlow (isolate (), store_mode);
2382
+ // should handled by the slow stub below instead of the proxy stub.
2383
+ if (IsJSProxyMap (*receiver_map) && !IsDefineKeyedOwnIC ()) {
2384
+ return StoreHandler::StoreProxy (isolate ());
2386
2385
}
2387
2386
2388
- return StoreHandler::StoreProxy (isolate ());
2387
+ // Wasm objects or other kind of special objects go through the slow stub.
2388
+ TRACE_HANDLER_STATS (isolate (), KeyedStoreIC_SlowStub);
2389
+ return StoreHandler::StoreSlow (isolate (), store_mode);
2389
2390
}
2390
2391
2391
2392
// TODO(ishell): move to StoreHandler::StoreElement().
You can’t perform that action at this time.
0 commit comments