| Index: src/hydrogen-instructions.h
|
| diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h
|
| index 763b6369e3583a0a1c9b1a41bd3af7e93e8fe34e..64befa4ab5fc82ad3cafb13b7db9a0509db98053 100644
|
| --- a/src/hydrogen-instructions.h
|
| +++ b/src/hydrogen-instructions.h
|
| @@ -4969,10 +4969,10 @@ class HAllocate: public HTemplateInstruction<2> {
|
| };
|
|
|
| HAllocate(HValue* context, HValue* size, HType type, Flags flags)
|
| - : type_(type),
|
| - flags_(flags) {
|
| + : flags_(flags) {
|
| SetOperandAt(0, context);
|
| SetOperandAt(1, size);
|
| + set_type(type);
|
| set_representation(Representation::Tagged());
|
| SetFlag(kTrackSideEffectDominators);
|
| SetGVNFlag(kChangesNewSpacePromotion);
|
| @@ -4997,7 +4997,6 @@ class HAllocate: public HTemplateInstruction<2> {
|
|
|
| HValue* context() { return OperandAt(0); }
|
| HValue* size() { return OperandAt(1); }
|
| - HType type() { return type_; }
|
|
|
| virtual Representation RequiredInputRepresentation(int index) {
|
| if (index == 0) {
|
| @@ -5015,8 +5014,6 @@ class HAllocate: public HTemplateInstruction<2> {
|
| known_initial_map_ = known_initial_map;
|
| }
|
|
|
| - virtual HType CalculateInferredType();
|
| -
|
| bool CanAllocateInNewSpace() const {
|
| return (flags_ & CAN_ALLOCATE_IN_NEW_SPACE) != 0;
|
| }
|
| @@ -5062,7 +5059,6 @@ class HAllocate: public HTemplateInstruction<2> {
|
| DECLARE_CONCRETE_INSTRUCTION(Allocate)
|
|
|
| private:
|
| - HType type_;
|
| Flags flags_;
|
| Handle<Map> known_initial_map_;
|
| };
|
| @@ -5071,10 +5067,10 @@ class HAllocate: public HTemplateInstruction<2> {
|
| class HInnerAllocatedObject: public HTemplateInstruction<1> {
|
| public:
|
| HInnerAllocatedObject(HValue* value, int offset, HType type = HType::Tagged())
|
| - : offset_(offset),
|
| - type_(type) {
|
| + : offset_(offset) {
|
| ASSERT(value->IsAllocate());
|
| SetOperandAt(0, value);
|
| + set_type(type);
|
| set_representation(Representation::Tagged());
|
| }
|
|
|
| @@ -5085,15 +5081,12 @@ class HInnerAllocatedObject: public HTemplateInstruction<1> {
|
| return Representation::Tagged();
|
| }
|
|
|
| - virtual HType CalculateInferredType() { return type_; }
|
| -
|
| virtual void PrintDataTo(StringStream* stream);
|
|
|
| DECLARE_CONCRETE_INSTRUCTION(InnerAllocatedObject)
|
|
|
| private:
|
| int offset_;
|
| - HType type_;
|
| };
|
|
|
|
|
|
|