| Index: runtime/vm/intermediate_language.h
|
| ===================================================================
|
| --- runtime/vm/intermediate_language.h (revision 10207)
|
| +++ runtime/vm/intermediate_language.h (working copy)
|
| @@ -759,13 +759,15 @@
|
|
|
| class LoadLocalComp : public TemplateComputation<0> {
|
| public:
|
| - LoadLocalComp(const LocalVariable& local, intptr_t context_level)
|
| + LoadLocalComp(const LocalVariable* local, intptr_t context_level)
|
| : local_(local),
|
| - context_level_(context_level) { }
|
| + context_level_(context_level) {
|
| + ASSERT(local_ != NULL);
|
| + }
|
|
|
| DECLARE_COMPUTATION(LoadLocal)
|
|
|
| - const LocalVariable& local() const { return local_; }
|
| + const LocalVariable* local() const { return local_; }
|
| intptr_t context_level() const { return context_level_; }
|
|
|
| virtual void PrintOperandsTo(BufferFormatter* f) const;
|
| @@ -773,7 +775,7 @@
|
| virtual bool CanDeoptimize() const { return false; }
|
|
|
| private:
|
| - const LocalVariable& local_;
|
| + const LocalVariable* local_;
|
| const intptr_t context_level_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(LoadLocalComp);
|
| @@ -782,17 +784,18 @@
|
|
|
| class StoreLocalComp : public TemplateComputation<1> {
|
| public:
|
| - StoreLocalComp(const LocalVariable& local,
|
| + StoreLocalComp(const LocalVariable* local,
|
| Value* value,
|
| intptr_t context_level)
|
| : local_(local),
|
| context_level_(context_level) {
|
| + ASSERT(local_ != NULL);
|
| inputs_[0] = value;
|
| }
|
|
|
| DECLARE_COMPUTATION(StoreLocal)
|
|
|
| - const LocalVariable& local() const { return local_; }
|
| + const LocalVariable* local() const { return local_; }
|
| Value* value() const { return inputs_[0]; }
|
| intptr_t context_level() const { return context_level_; }
|
|
|
| @@ -804,7 +807,7 @@
|
| virtual bool CanDeoptimize() const { return false; }
|
|
|
| private:
|
| - const LocalVariable& local_;
|
| + const LocalVariable* local_;
|
| const intptr_t context_level_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(StoreLocalComp);
|
| @@ -1565,12 +1568,15 @@
|
|
|
| class CatchEntryComp : public TemplateComputation<0> {
|
| public:
|
| - CatchEntryComp(const LocalVariable& exception_var,
|
| - const LocalVariable& stacktrace_var)
|
| - : exception_var_(exception_var), stacktrace_var_(stacktrace_var) {}
|
| + CatchEntryComp(const LocalVariable* exception_var,
|
| + const LocalVariable* stacktrace_var)
|
| + : exception_var_(exception_var), stacktrace_var_(stacktrace_var) {
|
| + ASSERT(exception_var_ != NULL);
|
| + ASSERT(stacktrace_var_ != NULL);
|
| + }
|
|
|
| - const LocalVariable& exception_var() const { return exception_var_; }
|
| - const LocalVariable& stacktrace_var() const { return stacktrace_var_; }
|
| + const LocalVariable* exception_var() const { return exception_var_; }
|
| + const LocalVariable* stacktrace_var() const { return stacktrace_var_; }
|
|
|
| DECLARE_COMPUTATION(CatchEntry)
|
|
|
| @@ -1579,8 +1585,8 @@
|
| virtual bool CanDeoptimize() const { return false; }
|
|
|
| private:
|
| - const LocalVariable& exception_var_;
|
| - const LocalVariable& stacktrace_var_;
|
| + const LocalVariable* exception_var_;
|
| + const LocalVariable* stacktrace_var_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(CatchEntryComp);
|
| };
|
|
|