Chromium Code Reviews| Index: src/objects.cc |
| diff --git a/src/objects.cc b/src/objects.cc |
| index 4f9773cf7ce427947af6c23877ba4d72078dde6d..51b8283fd9329e8e8a8f2c0cd3bd23c686c5db3c 100644 |
| --- a/src/objects.cc |
| +++ b/src/objects.cc |
| @@ -12506,6 +12506,20 @@ void BytecodeArray::Disassemble(std::ostream& os) { |
| SNPrintF(buf, "%p", bytecode_start); |
| os << buf.start() << " : "; |
| interpreter::Bytecodes::Decode(os, bytecode_start, parameter_count()); |
| + if (bytecode == interpreter::Bytecode::kJump || |
| + bytecode == interpreter::Bytecode::kJumpIfTrue || |
| + bytecode == interpreter::Bytecode::kJumpIfFalse) { |
|
rmcilroy
2015/10/01 09:18:56
nit - could we make a helper for IsJump, IsJumpCon
oth
2015/10/01 11:43:02
Done.
|
| + int offset = static_cast<int8_t>(bytecode_start[1]); |
| + SNPrintF(buf, " (%p)", bytecode_start + offset); |
| + os << buf.start(); |
| + } else if (bytecode == interpreter::Bytecode::kJumpConstant || |
| + bytecode == interpreter::Bytecode::kJumpIfTrueConstant || |
| + bytecode == interpreter::Bytecode::kJumpIfFalseConstant) { |
| + int index = static_cast<int>(bytecode_start[1]); |
| + int offset = Smi::cast(constant_pool()->get(index))->value(); |
| + SNPrintF(buf, " (%p)", bytecode_start + offset); |
| + os << buf.start(); |
| + } |
| os << "\n"; |
| } |