| Index: runtime/vm/object.cc
|
| diff --git a/runtime/vm/object.cc b/runtime/vm/object.cc
|
| index df878d46bf24b22c675c544a76ca1be8610116ab..34826b660862ef5783e393a91751210cb534239f 100644
|
| --- a/runtime/vm/object.cc
|
| +++ b/runtime/vm/object.cc
|
| @@ -9811,11 +9811,7 @@ intptr_t DeoptInfo::Instruction(intptr_t index) const {
|
|
|
|
|
| intptr_t DeoptInfo::FrameSize() const {
|
| - intptr_t pos = 0;
|
| - while (Instruction(pos) == DeoptInstr::kMaterializeObject) {
|
| - pos++;
|
| - }
|
| - return TranslationLength() - pos;
|
| + return TranslationLength() - NumMaterializations();
|
| }
|
|
|
|
|
| @@ -9832,6 +9828,15 @@ intptr_t DeoptInfo::TranslationLength() const {
|
| }
|
|
|
|
|
| +intptr_t DeoptInfo::NumMaterializations() const {
|
| + intptr_t pos = 0;
|
| + while (Instruction(pos) == DeoptInstr::kMaterializeObject) {
|
| + pos++;
|
| + }
|
| + return pos;
|
| +}
|
| +
|
| +
|
| void DeoptInfo::ToInstructions(const Array& table,
|
| GrowableArray<DeoptInstr*>* instructions) const {
|
| ASSERT(instructions->is_empty());
|
|
|