| Index: runtime/vm/intermediate_language.h
|
| ===================================================================
|
| --- runtime/vm/intermediate_language.h (revision 12183)
|
| +++ runtime/vm/intermediate_language.h (working copy)
|
| @@ -1985,7 +1985,8 @@
|
| function_(function),
|
| argument_names_(argument_names),
|
| arguments_(arguments),
|
| - recognized_(MethodRecognizer::kUnknown) {
|
| + recognized_(MethodRecognizer::kUnknown),
|
| + result_cid_(kDynamicCid) {
|
| ASSERT(function.IsZoneHandle());
|
| ASSERT(argument_names.IsZoneHandle());
|
| }
|
| @@ -2009,7 +2010,8 @@
|
| virtual void PrintOperandsTo(BufferFormatter* f) const;
|
|
|
| virtual bool CanDeoptimize() const { return true; }
|
| - virtual intptr_t ResultCid() const { return kDynamicCid; }
|
| + virtual intptr_t ResultCid() const { return result_cid_; }
|
| + void set_result_cid(intptr_t value) { result_cid_ = value; }
|
|
|
| private:
|
| const intptr_t token_pos_;
|
| @@ -2017,6 +2019,7 @@
|
| const Array& argument_names_;
|
| ZoneGrowableArray<PushArgumentInstr*>* arguments_;
|
| MethodRecognizer::Kind recognized_;
|
| + intptr_t result_cid_; // For some library functions we know the result.
|
|
|
| DISALLOW_COPY_AND_ASSIGN(StaticCallInstr);
|
| };
|
|
|