Skip to content

Commit db83e72

Browse files
tebbiV8 LUCI CQ
authored andcommitted
[turbofan] do not optimize any stores for field type None
Fixed: chromium:1378239 Change-Id: If9d05ed391175a7a3923ab2108231759e649bb44 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3981277 Auto-Submit: Tobias Tebbi <[email protected]> Reviewed-by: Igor Sheludko <[email protected]> Commit-Queue: Tobias Tebbi <[email protected]> Commit-Queue: Igor Sheludko <[email protected]> Cr-Commit-Position: refs/heads/main@{#83925}
1 parent 1e029c0 commit db83e72

1 file changed

Lines changed: 9 additions & 3 deletions

File tree

src/compiler/access-info.cc

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -456,9 +456,15 @@ PropertyAccessInfo AccessInfoFactory::ComputeDataFieldAccessInfo(
456456
map, descriptor, details_representation));
457457
} else if (details_representation.IsHeapObject()) {
458458
if (descriptors_field_type->IsNone()) {
459-
// Store is not safe if the field type was cleared.
460-
if (access_mode == AccessMode::kStore) {
461-
return Invalid();
459+
switch (access_mode) {
460+
case AccessMode::kStore:
461+
case AccessMode::kStoreInLiteral:
462+
case AccessMode::kDefine:
463+
// Store is not safe if the field type was cleared.
464+
return Invalid();
465+
case AccessMode::kLoad:
466+
case AccessMode::kHas:
467+
break;
462468
}
463469

464470
// The field type was cleared by the GC, so we don't know anything

0 commit comments

Comments
 (0)