| Index: src/code-stubs-hydrogen.cc
|
| diff --git a/src/code-stubs-hydrogen.cc b/src/code-stubs-hydrogen.cc
|
| index 456ecc029f346cdb6dfd0f56223a665c669f0b31..20fe5feabbe406f30c25439ed2f1eadab826e99b 100644
|
| --- a/src/code-stubs-hydrogen.cc
|
| +++ b/src/code-stubs-hydrogen.cc
|
| @@ -437,16 +437,19 @@ HValue* CodeStubGraphBuilder<FastCloneShallowObjectStub>::BuildCodeStub() {
|
| Zone* zone = this->zone();
|
| HValue* undefined = graph()->GetConstantUndefined();
|
|
|
| - HInstruction* boilerplate = Add<HLoadKeyed>(GetParameter(0),
|
| - GetParameter(1),
|
| - static_cast<HValue*>(NULL),
|
| - FAST_ELEMENTS);
|
| + HInstruction* allocation_site = Add<HLoadKeyed>(GetParameter(0),
|
| + GetParameter(1),
|
| + static_cast<HValue*>(NULL),
|
| + FAST_ELEMENTS);
|
|
|
| IfBuilder checker(this);
|
| - checker.IfNot<HCompareObjectEqAndBranch, HValue*>(boilerplate,
|
| + checker.IfNot<HCompareObjectEqAndBranch, HValue*>(allocation_site,
|
| undefined);
|
| checker.And();
|
|
|
| + HObjectAccess access = HObjectAccess::ForAllocationSiteTransitionInfo();
|
| + HInstruction* boilerplate = Add<HLoadNamedField>(allocation_site, access);
|
| +
|
| int size = JSObject::kHeaderSize + casted_stub()->length() * kPointerSize;
|
| HValue* boilerplate_size =
|
| AddInstruction(new(zone) HInstanceSize(boilerplate));
|
|
|