Home | History | Annotate | Download | only in src

Lines Matching defs:code

2 // Use of this source code is governed by a BSD-style license that can be
7 #include "src/code-stubs.h"
39 explicit V8NameConverter(Code* code) : code_(code) {}
42 Code* code() const { return code_; }
44 Code* code_;
59 // print as code offset, if it seems reasonable
71 // The V8NameConverter is used for well known code, so we can "safely"
72 // dereference pointers in generated code.
105 if (converter.code() != NULL) {
106 it = new RelocIterator(converter.code());
108 // No relocation information when printing code stubs.
131 // raw pointer embedded in code stream, e.g., jump table
179 RelocInfo relocinfo(pcs[i], rmodes[i], datas[i], converter.code());
209 out.AddFormatted(" ;; code:");
213 Code* code = Code::GetCodeFromTargetAddress(relocinfo.target_address());
214 Code::Kind kind = code->kind();
215 if (code->is_inline_cache_stub()) {
216 if (kind == Code::LOAD_IC &&
217 LoadICState::GetContextualMode(code->extra_ic_state()) ==
221 InlineCacheState ic_state = code->ic_state();
222 out.AddFormatted(" %s, %s", Code::Kind2String(kind),
223 Code::ICState2String(ic_state));
225 Code::StubType type = code->type();
226 out.AddFormatted(", %s", Code::StubType2String(type));
228 } else if (kind == Code::STUB || kind == Code::HANDLER) {
230 uint32_t key = code->stub_key();
232 CodeStub::Major major_key = CodeStub::GetMajorKey(code);
234 out.AddFormatted(" %s, %s, ", Code::Kind2String(kind),
246 out.AddFormatted(" %s", Code::Kind2String(kind));
306 // Called by Code::CodePrint.
307 void Disassembler::Decode(FILE* f, Code* code) {
308 Isolate* isolate = code->GetIsolate();
309 int decode_size = code->is_crankshafted()
310 ? static_cast<int>(code->safepoint_table_offset())
311 : code->instruction_size();
313 if (code->kind() == Code::FUNCTION) {
315 Min(decode_size, static_cast<int>(code->back_edge_table_offset()));
318 byte* begin = code->instruction_start();
320 V8NameConverter v8NameConverter(code);
332 void Disassembler::Decode(FILE* f, Code* code) {}