summaryrefslogtreecommitdiff
path: root/deps/v8/src/diagnostics/disassembler.cc
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/diagnostics/disassembler.cc')
-rw-r--r--deps/v8/src/diagnostics/disassembler.cc26
1 files changed, 12 insertions, 14 deletions
diff --git a/deps/v8/src/diagnostics/disassembler.cc b/deps/v8/src/diagnostics/disassembler.cc
index dad22ba046..6f0b60f41a 100644
--- a/deps/v8/src/diagnostics/disassembler.cc
+++ b/deps/v8/src/diagnostics/disassembler.cc
@@ -257,10 +257,8 @@ static void PrintRelocInfo(std::ostringstream& out, Isolate* isolate,
out << " ;; external reference (" << reference_name << ")";
} else if (RelocInfo::IsCodeTargetMode(rmode)) {
out << " ;; code:";
- CodeT code =
- isolate->heap()
- ->GcSafeFindCodeForInnerPointer(relocinfo->target_address())
- .ToCodeT();
+ Code code =
+ isolate->heap()->FindCodeForInnerPointer(relocinfo->target_address());
CodeKind kind = code.kind();
if (code.is_builtin()) {
out << " Builtin::" << Builtins::name(code.builtin_id());
@@ -378,21 +376,21 @@ static int DecodeIt(Isolate* isolate, ExternalReferenceEncoder* ref_encoder,
// Print all the reloc info for this instruction which are not comments.
for (size_t i = 0; i < pcs.size(); i++) {
- // Put together the reloc info
+ // Put together the reloc info.
const CodeReference& host = code;
Address constant_pool =
host.is_null() ? kNullAddress : host.constant_pool();
- Code code_pointer;
+ Handle<Code> code_handle;
if (host.is_code()) {
- code_pointer = *host.as_code();
- }
+ code_handle = host.as_code();
- RelocInfo relocinfo(pcs[i], rmodes[i], datas[i], code_pointer,
- constant_pool);
+ RelocInfo relocinfo(pcs[i], rmodes[i], datas[i], *code_handle,
+ code_handle->instruction_stream(), constant_pool);
- bool first_reloc_info = (i == 0);
- PrintRelocInfo(out, isolate, ref_encoder, os, code, &relocinfo,
- first_reloc_info);
+ bool first_reloc_info = (i == 0);
+ PrintRelocInfo(out, isolate, ref_encoder, os, code, &relocinfo,
+ first_reloc_info);
+ }
}
// If this is a constant pool load and we haven't found any RelocInfo
@@ -404,7 +402,7 @@ static int DecodeIt(Isolate* isolate, ExternalReferenceEncoder* ref_encoder,
// by IsInConstantPool() below.
if (pcs.empty() && !code.is_null() && !decoding_constant_pool) {
RelocInfo dummy_rinfo(reinterpret_cast<Address>(prev_pc),
- RelocInfo::NO_INFO, 0, Code());
+ RelocInfo::NO_INFO, 0, Code(), InstructionStream());
if (dummy_rinfo.IsInConstantPool()) {
Address constant_pool_entry_address =
dummy_rinfo.constant_pool_entry_address();