| Index: src/crankshaft/hydrogen-instructions.h
|
| diff --git a/src/crankshaft/hydrogen-instructions.h b/src/crankshaft/hydrogen-instructions.h
|
| index d4026918f3ac256598a663497d8fc645b8322604..83dc59755ba9786670e0396fc5d45f04bbc9466b 100644
|
| --- a/src/crankshaft/hydrogen-instructions.h
|
| +++ b/src/crankshaft/hydrogen-instructions.h
|
| @@ -5692,6 +5692,15 @@
|
| if (value->IsConstant() && HConstant::cast(value)->NotInNewSpace()) {
|
| return false;
|
| }
|
| + // Stores to old space allocations require no write barriers if the value is
|
| + // an old space allocation.
|
| + while (value->IsInnerAllocatedObject()) {
|
| + value = HInnerAllocatedObject::cast(value)->base_object();
|
| + }
|
| + if (value->IsAllocate() &&
|
| + !HAllocate::cast(value)->IsNewSpaceAllocation()) {
|
| + return false;
|
| + }
|
| }
|
| return true;
|
| }
|
|
|