| Index: src/heap/store-buffer.cc
|
| diff --git a/src/heap/store-buffer.cc b/src/heap/store-buffer.cc
|
| index 5fd4ce34f3aee6913c42fe3c292b1dea5f0ea8ab..eae3594a18a38b7e1b79803d3d72a9fedd55b278 100644
|
| --- a/src/heap/store-buffer.cc
|
| +++ b/src/heap/store-buffer.cc
|
| @@ -109,7 +109,9 @@ void StoreBuffer::Uniq() {
|
| for (Address* read = old_start_; read < old_top_; read++) {
|
| Address current = *read;
|
| if (current != previous) {
|
| - if (heap_->InNewSpace(*reinterpret_cast<Object**>(current))) {
|
| + Object* object = reinterpret_cast<Object*>(
|
| + base::NoBarrier_Load(reinterpret_cast<base::AtomicWord*>(current)));
|
| + if (heap_->InNewSpace(object)) {
|
| *write++ = current;
|
| }
|
| }
|
|
|