Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(782)

Unified Diff: src/objects-debug.cc

Issue 893073006: Add map-based read barrier to WeakCell Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Fix merge Created 5 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/objects.cc ('k') | src/objects-inl.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/objects-debug.cc
diff --git a/src/objects-debug.cc b/src/objects-debug.cc
index 4e7cf8f1dfb20faf28f30c3d9e861cf57fe773ba..2ac457d4495bd78ac1ce74531d098811bcab07c6 100644
--- a/src/objects-debug.cc
+++ b/src/objects-debug.cc
@@ -9,6 +9,7 @@
#include "src/heap/objects-visiting.h"
#include "src/jsregexp.h"
#include "src/macro-assembler.h"
+#include "src/objects-inl.h"
#include "src/ostreams.h"
namespace v8 {
@@ -647,7 +648,8 @@ void PropertyCell::PropertyCellVerify() {
void WeakCell::WeakCellVerify() {
CHECK(IsWeakCell());
- VerifyObjectField(kValueOffset);
+ Object* value = ValueNoReadBarrier();
+ VerifyPointer(value);
VerifyObjectField(kNextOffset);
}
@@ -1243,7 +1245,7 @@ bool CanLeak(Object* obj, Heap* heap, bool skip_weak_cell) {
if (!obj->IsHeapObject()) return false;
if (obj->IsWeakCell()) {
if (skip_weak_cell) return false;
- return CanLeak(WeakCell::cast(obj)->value(), heap, skip_weak_cell);
+ return CanLeak(WeakCell::cast(obj)->value(heap), heap, skip_weak_cell);
}
if (obj->IsCell()) {
return CanLeak(Cell::cast(obj)->value(), heap, skip_weak_cell);
« no previous file with comments | « src/objects.cc ('k') | src/objects-inl.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698