| Index: runtime/vm/simulator_mips.cc
|
| diff --git a/runtime/vm/simulator_mips.cc b/runtime/vm/simulator_mips.cc
|
| index 5491c6b24ce7c67af65f15f450074f501b67c95b..2b03da8d0d0d0d626cab4e06f37b98280806b314 100644
|
| --- a/runtime/vm/simulator_mips.cc
|
| +++ b/runtime/vm/simulator_mips.cc
|
| @@ -418,7 +418,11 @@ void SimulatorDebugger::Debug() {
|
| if (Simulator::IsIllegalAddress(last_pc)) {
|
| OS::Print("pc is out of bounds: 0x%" Px "\n", last_pc);
|
| } else {
|
| - Disassembler::Disassemble(last_pc, last_pc + Instr::kInstrSize);
|
| + if (FLAG_support_disassembler) {
|
| + Disassembler::Disassemble(last_pc, last_pc + Instr::kInstrSize);
|
| + } else {
|
| + OS::Print("Disassembler not supported in this mode.\n");
|
| + }
|
| }
|
| }
|
| char* line = ReadLine("sim> ");
|
| @@ -556,7 +560,11 @@ void SimulatorDebugger::Debug() {
|
| }
|
| }
|
| if ((start > 0) && (end > start)) {
|
| - Disassembler::Disassemble(start, end);
|
| + if (FLAG_support_disassembler) {
|
| + Disassembler::Disassemble(start, end);
|
| + } else {
|
| + OS::Print("Disassembler not supported in this mode.\n");
|
| + }
|
| } else {
|
| OS::Print("disasm [<address> [<number_of_instructions>]]\n");
|
| }
|
| @@ -1996,7 +2004,11 @@ void Simulator::InstructionDecode(Instr* instr) {
|
| OS::Print("%" Pu64 " ", icount_);
|
| const uword start = reinterpret_cast<uword>(instr);
|
| const uword end = start + Instr::kInstrSize;
|
| - Disassembler::Disassemble(start, end);
|
| + if (FLAG_support_disassembler) {
|
| + Disassembler::Disassemble(start, end);
|
| + } else {
|
| + OS::Print("Disassembler not supported in this mode.\n");
|
| + }
|
| }
|
|
|
| switch (instr->OpcodeField()) {
|
|
|