Chromium Code Reviews| Index: src/hydrogen-instructions.h |
| diff --git a/src/hydrogen-instructions.h b/src/hydrogen-instructions.h |
| index 7f8806c6720f569fe9560696e14e1c2463519449..e98e86146d33ca5999cb06ad14a0ad64d3f8b880 100644 |
| --- a/src/hydrogen-instructions.h |
| +++ b/src/hydrogen-instructions.h |
| @@ -5133,22 +5133,23 @@ class HCallStub: public HUnaryCall { |
| class HUnknownOSRValue: public HTemplateInstruction<0> { |
| public: |
| - HUnknownOSRValue() |
| - : incoming_value_(NULL) { |
| + HUnknownOSRValue(HEnvironment *environment, int index) |
| + : environment_(environment), |
|
Michael Starzinger
2013/07/31 14:55:50
It seems dangerous to me to preserve the full HEnv
|
| + index_(index), |
| + incoming_value_(NULL) { |
| set_representation(Representation::Tagged()); |
| } |
| + virtual void PrintDataTo(StringStream* stream); |
| + |
| virtual Representation RequiredInputRepresentation(int index) { |
| return Representation::None(); |
| } |
| - void set_incoming_value(HPhi* value) { |
| - incoming_value_ = value; |
| - } |
| - |
| - HPhi* incoming_value() { |
| - return incoming_value_; |
| - } |
| + void set_incoming_value(HPhi* value) { incoming_value_ = value; } |
| + HPhi* incoming_value() { return incoming_value_; } |
| + HEnvironment *environment() { return environment_; } |
|
Michael Starzinger
2013/07/31 14:55:50
nit: The star character sticks to the left.
|
| + int index() { return index_; } |
| virtual Representation KnownOptimalRepresentation() { |
| if (incoming_value_ == NULL) return Representation::None(); |
| @@ -5158,6 +5159,8 @@ class HUnknownOSRValue: public HTemplateInstruction<0> { |
| DECLARE_CONCRETE_INSTRUCTION(UnknownOSRValue) |
| private: |
| + HEnvironment *environment_; |
| + int index_; |
| HPhi* incoming_value_; |
| }; |