Commit fa58f8ef authored by Jakob Gruber's avatar Jakob Gruber Committed by V8 LUCI CQ

[compiler] Fix data race in TryGetPropertyCell

Bug: v8:7790, chromium:1225521
Change-Id: I4210ca9d3eccdc4de0b5b865bac37dc32b8e6f17
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2999085
Commit-Queue: Jakob Gruber <jgruber@chromium.org>
Commit-Queue: Georg Neis <neis@chromium.org>
Auto-Submit: Jakob Gruber <jgruber@chromium.org>
Reviewed-by: 's avatarGeorg Neis <neis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#75499}
parent 0db35a93
......@@ -1527,7 +1527,7 @@ base::Optional<PropertyCell> ConcurrentLookupIterator::TryGetPropertyCell(
kRelaxedLoad);
if (!cell.has_value()) return {};
if (cell->property_details().kind() == kAccessor) {
if (cell->property_details(kAcquireLoad).kind() == kAccessor) {
Object maybe_accessor_pair = cell->value(kAcquireLoad);
if (!maybe_accessor_pair.IsAccessorPair()) return {};
......@@ -1541,11 +1541,11 @@ base::Optional<PropertyCell> ConcurrentLookupIterator::TryGetPropertyCell(
isolate, handle(*maybe_cached_property_name, local_isolate),
kRelaxedLoad);
if (!cell.has_value()) return {};
if (cell->property_details().kind() != kData) return {};
if (cell->property_details(kAcquireLoad).kind() != kData) return {};
}
DCHECK(cell.has_value());
DCHECK_EQ(cell->property_details().kind(), kData);
DCHECK_EQ(cell->property_details(kAcquireLoad).kind(), kData);
return cell;
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment