| Index: src/hydrogen-instructions.h
|
| diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h
|
| index de6800deb0b61ab43ad55bd68ca1e5616ce4b24f..bd68c123c5edaf88082ab09e44aad3769d2202e6 100644
|
| --- a/src/hydrogen-instructions.h
|
| +++ b/src/hydrogen-instructions.h
|
| @@ -179,7 +179,9 @@ class LChunkBuilder;
|
| V(UnaryMathOperation) \
|
| V(UnknownOSRValue) \
|
| V(UseConst) \
|
| - V(ValueOf)
|
| + V(ValueOf) \
|
| + V(DateField) \
|
| + V(SetDateField)
|
|
|
| #define GVN_FLAG_LIST(V) \
|
| V(Calls) \
|
| @@ -4510,6 +4512,45 @@ class HValueOf: public HUnaryOperation {
|
| };
|
|
|
|
|
| +class HDateField: public HUnaryOperation {
|
| + public:
|
| + HDateField(HValue* date, int index) : HUnaryOperation(date), index_(index) {
|
| + set_representation(Representation::Tagged());
|
| + }
|
| +
|
| + int index() const { return index_; }
|
| +
|
| + virtual Representation RequiredInputRepresentation(int index) {
|
| + return Representation::Tagged();
|
| + }
|
| +
|
| + DECLARE_CONCRETE_INSTRUCTION(DateField)
|
| +
|
| + private:
|
| + int index_;
|
| +};
|
| +
|
| +
|
| +class HSetDateField: public HBinaryOperation {
|
| + public:
|
| + HSetDateField(HValue* context, HValue* date, HValue* value, int index)
|
| + : HBinaryOperation(context, date, value), index_(index) {
|
| + set_representation(Representation::Tagged());
|
| + }
|
| +
|
| + int index() const { return index_; }
|
| +
|
| + virtual Representation RequiredInputRepresentation(int index) {
|
| + return Representation::Tagged();
|
| + }
|
| +
|
| + DECLARE_CONCRETE_INSTRUCTION(SetDateField)
|
| +
|
| + private:
|
| + int index_;
|
| +};
|
| +
|
| +
|
| class HDeleteProperty: public HBinaryOperation {
|
| public:
|
| HDeleteProperty(HValue* context, HValue* obj, HValue* key)
|
|
|