| Index: src/disassembler.cc
|
| diff --git a/src/disassembler.cc b/src/disassembler.cc
|
| index 9f8b9a820bc7fb65dd169aae2f6f1a24f30fc172..05d6b9bde29817eae6dc71912dc4c4c69da9e563 100644
|
| --- a/src/disassembler.cc
|
| +++ b/src/disassembler.cc
|
| @@ -287,7 +287,12 @@ static int DecodeIt(FILE* f,
|
| Address addr = relocinfo.target_address();
|
| int id = Deoptimizer::GetDeoptimizationId(addr, Deoptimizer::EAGER);
|
| if (id == Deoptimizer::kNotDeoptimizationEntry) {
|
| - out.AddFormatted(" ;; %s", RelocInfo::RelocModeName(rmode));
|
| + id = Deoptimizer::GetDeoptimizationId(addr, Deoptimizer::LAZY);
|
| + if (id == Deoptimizer::kNotDeoptimizationEntry) {
|
| + out.AddFormatted(" ;; %s", RelocInfo::RelocModeName(rmode));
|
| + } else {
|
| + out.AddFormatted(" ;; lazy deoptimization bailout %d", id);
|
| + }
|
| } else {
|
| out.AddFormatted(" ;; deoptimization bailout %d", id);
|
| }
|
| @@ -322,7 +327,8 @@ int Disassembler::Decode(FILE* f, byte* begin, byte* end) {
|
|
|
| // Called by Code::CodePrint.
|
| void Disassembler::Decode(FILE* f, Code* code) {
|
| - int decode_size = (code->kind() == Code::OPTIMIZED_FUNCTION)
|
| + int decode_size = (code->kind() == Code::OPTIMIZED_FUNCTION ||
|
| + code->kind() == Code::COMPILED_STUB)
|
| ? static_cast<int>(code->safepoint_table_offset())
|
| : code->instruction_size();
|
| // If there might be a stack check table, stop before reaching it.
|
|
|