| Index: src/code-stubs.h
|
| diff --git a/src/code-stubs.h b/src/code-stubs.h
|
| index b2dc0afe30c70323829fa97c7f795fb9ec54ce2a..5d9dde412fc0f2626b7f9a8582a61ea9e63ff572 100644
|
| --- a/src/code-stubs.h
|
| +++ b/src/code-stubs.h
|
| @@ -70,6 +70,7 @@
|
| V(FastArrayPush) \
|
| V(FastCloneRegExp) \
|
| V(FastCloneShallowArray) \
|
| + V(FastCloneShallowObject) \
|
| V(FastNewClosure) \
|
| V(FastNewContext) \
|
| V(FastNewObject) \
|
| @@ -121,7 +122,6 @@
|
| V(BitwiseAnd) \
|
| V(BitwiseOr) \
|
| V(BitwiseXor) \
|
| - V(FastCloneShallowObject) \
|
| V(LessThan) \
|
| V(LessThanOrEqual) \
|
| V(GreaterThan) \
|
| @@ -1106,25 +1106,26 @@
|
| DEFINE_HYDROGEN_CODE_STUB(FastCloneShallowArray, HydrogenCodeStub);
|
| };
|
|
|
| -class FastCloneShallowObjectStub : public TurboFanCodeStub {
|
| +
|
| +class FastCloneShallowObjectStub : public HydrogenCodeStub {
|
| public:
|
| // Maximum number of properties in copied object.
|
| static const int kMaximumClonedProperties = 6;
|
|
|
| FastCloneShallowObjectStub(Isolate* isolate, int length)
|
| - : TurboFanCodeStub(isolate) {
|
| + : HydrogenCodeStub(isolate) {
|
| DCHECK_GE(length, 0);
|
| DCHECK_LE(length, kMaximumClonedProperties);
|
| - minor_key_ = LengthBits::encode(LengthBits::encode(length));
|
| - }
|
| -
|
| - int length() const { return LengthBits::decode(minor_key_); }
|
| + set_sub_minor_key(LengthBits::encode(length));
|
| + }
|
| +
|
| + int length() const { return LengthBits::decode(sub_minor_key()); }
|
|
|
| private:
|
| class LengthBits : public BitField<int, 0, 4> {};
|
|
|
| DEFINE_CALL_INTERFACE_DESCRIPTOR(FastCloneShallowObject);
|
| - DEFINE_TURBOFAN_CODE_STUB(FastCloneShallowObject, TurboFanCodeStub);
|
| + DEFINE_HYDROGEN_CODE_STUB(FastCloneShallowObject, HydrogenCodeStub);
|
| };
|
|
|
|
|
|
|