| Index: runtime/vm/intermediate_language_mips.cc
|
| diff --git a/runtime/vm/intermediate_language_mips.cc b/runtime/vm/intermediate_language_mips.cc
|
| index 064bd6e1b768d3bf25ef966c71d06a44d8687eb4..93e720ccadb7b77bc42987719a232fcebc5a44b0 100644
|
| --- a/runtime/vm/intermediate_language_mips.cc
|
| +++ b/runtime/vm/intermediate_language_mips.cc
|
| @@ -2711,10 +2711,15 @@ class CheckStackOverflowSlowPath : public SlowPathCode {
|
| Register value = instruction_->locs()->temp(0).reg();
|
| __ Comment("CheckStackOverflowSlowPathOsr");
|
| __ Bind(osr_entry_label());
|
| - ASSERT(FLAG_allow_absolute_addresses);
|
| - __ LoadImmediate(TMP, flags_address);
|
| - __ LoadImmediate(value, Isolate::kOsrRequest);
|
| - __ sw(value, Address(TMP));
|
| + if (FLAG_allow_absolute_addresses) {
|
| + __ LoadImmediate(TMP, flags_address);
|
| + __ LoadImmediate(value, Isolate::kOsrRequest);
|
| + __ sw(value, Address(TMP));
|
| + } else {
|
| + __ LoadIsolate(TMP);
|
| + __ LoadImmediate(value, Isolate::kOsrRequest);
|
| + __ sw(value, Address(TMP, Isolate::stack_overflow_flags_offset()));
|
| + }
|
| }
|
| __ Comment("CheckStackOverflowSlowPath");
|
| __ Bind(entry_label());
|
|
|