| Index: runtime/vm/instructions_arm.cc
|
| ===================================================================
|
| --- runtime/vm/instructions_arm.cc (revision 20498)
|
| +++ runtime/vm/instructions_arm.cc (working copy)
|
| @@ -23,7 +23,7 @@
|
| ASSERT(code.ContainsInstructionAt(pc));
|
| ASSERT(Back(1) == 0xe12fff3e); // Last instruction: blx lr
|
| Register reg;
|
| - args_desc_load_end_ =
|
| + ic_data_load_end_ =
|
| DecodeLoadWordFromPool(1, ®, &target_address_pool_index_);
|
| ASSERT(reg == LR);
|
| }
|
| @@ -112,13 +112,7 @@
|
| RawICData* CallPattern::IcData() {
|
| if (ic_data_.IsNull()) {
|
| Register reg;
|
| - // Loading of the argument descriptor must be decoded first, if not already.
|
| - if (args_desc_.IsNull()) {
|
| - ic_data_load_end_ = DecodeLoadObject(
|
| - args_desc_load_end_, ®, &args_desc_);
|
| - ASSERT(reg == R4);
|
| - }
|
| - DecodeLoadObject(ic_data_load_end_, ®, &ic_data_);
|
| + args_desc_load_end_ = DecodeLoadObject(ic_data_load_end_, ®, &ic_data_);
|
| ASSERT(reg == R5);
|
| }
|
| return ic_data_.raw();
|
| @@ -127,9 +121,9 @@
|
|
|
| RawArray* CallPattern::ArgumentsDescriptor() {
|
| if (args_desc_.IsNull()) {
|
| + IcData(); // Loading of the ic_data must be decoded first, if not already.
|
| Register reg;
|
| - ic_data_load_end_ = DecodeLoadObject(
|
| - args_desc_load_end_, ®, &args_desc_);
|
| + DecodeLoadObject(args_desc_load_end_, ®, &args_desc_);
|
| ASSERT(reg == R4);
|
| }
|
| return args_desc_.raw();
|
|
|