Chromium Code Reviews| Index: src/hydrogen-instructions.h |
| =================================================================== |
| --- src/hydrogen-instructions.h (revision 6540) |
| +++ src/hydrogen-instructions.h (working copy) |
| @@ -148,6 +148,7 @@ |
| V(Sub) \ |
| V(Test) \ |
| V(Throw) \ |
| + V(ToFastProperties) \ |
| V(Typeof) \ |
| V(TypeofIs) \ |
| V(UnaryMathOperation) \ |
| @@ -3011,21 +3012,25 @@ |
| HObjectLiteral(Handle<FixedArray> constant_properties, |
| bool fast_elements, |
| int literal_index, |
| - int depth) |
| + int depth, |
| + bool has_function) |
| : HMaterializedLiteral(literal_index, depth), |
| constant_properties_(constant_properties), |
| - fast_elements_(fast_elements) {} |
| + fast_elements_(fast_elements), |
| + has_function_(has_function) {} |
| Handle<FixedArray> constant_properties() const { |
| return constant_properties_; |
| } |
| bool fast_elements() const { return fast_elements_; } |
| + bool has_function() const { return has_function_; } |
| DECLARE_CONCRETE_INSTRUCTION(ObjectLiteral, "object_literal") |
| private: |
| Handle<FixedArray> constant_properties_; |
| bool fast_elements_; |
| + bool has_function_; |
| }; |
| @@ -3077,6 +3082,16 @@ |
| }; |
| +class HToFastProperties: public HUnaryOperation { |
|
Mads Ager (chromium)
2011/02/02 13:07:52
Is it OK that this is not marked as changing maps
fschneider
2011/02/02 14:23:32
As discussed I'm making the return value of the To
|
| + public: |
| + explicit HToFastProperties(HValue* value) : HUnaryOperation(value) { |
| + set_representation(Representation::Tagged()); |
| + } |
| + |
| + DECLARE_CONCRETE_INSTRUCTION(ToFastProperties, "to_fast_properties") |
| +}; |
| + |
| + |
| class HValueOf: public HUnaryOperation { |
| public: |
| explicit HValueOf(HValue* value) : HUnaryOperation(value) { |