| Index: src/hydrogen-instructions.h
|
| diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h
|
| index cee90a9df1f6628852519bd73bd395eeaeecd948..d5dabd478b8b877971693f6127f9cce762b775db 100644
|
| --- a/src/hydrogen-instructions.h
|
| +++ b/src/hydrogen-instructions.h
|
| @@ -185,7 +185,9 @@ class LChunkBuilder;
|
| V(ForInPrepareMap) \
|
| V(ForInCacheArray) \
|
| V(CheckMapValue) \
|
| - V(LoadFieldByIndex)
|
| + V(LoadFieldByIndex) \
|
| + V(DateField) \
|
| + V(SetDateField)
|
|
|
| #define GVN_FLAG_LIST(V) \
|
| V(Calls) \
|
| @@ -4629,6 +4631,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)
|
|
|