OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/disassembler.h" | 5 #include "src/disassembler.h" |
6 | 6 |
7 #include "src/code-stubs.h" | 7 #include "src/code-stubs.h" |
8 #include "src/codegen.h" | 8 #include "src/codegen.h" |
9 #include "src/debug/debug.h" | 9 #include "src/debug/debug.h" |
10 #include "src/deoptimizer.h" | 10 #include "src/deoptimizer.h" |
(...skipping 185 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
196 Code::Kind kind = code->kind(); | 196 Code::Kind kind = code->kind(); |
197 if (code->is_inline_cache_stub()) { | 197 if (code->is_inline_cache_stub()) { |
198 if (kind == Code::LOAD_IC && | 198 if (kind == Code::LOAD_IC && |
199 LoadICState::GetTypeofMode(code->extra_ic_state()) == | 199 LoadICState::GetTypeofMode(code->extra_ic_state()) == |
200 NOT_INSIDE_TYPEOF) { | 200 NOT_INSIDE_TYPEOF) { |
201 out.AddFormatted(" contextual,"); | 201 out.AddFormatted(" contextual,"); |
202 } | 202 } |
203 InlineCacheState ic_state = code->ic_state(); | 203 InlineCacheState ic_state = code->ic_state(); |
204 out.AddFormatted(" %s, %s", Code::Kind2String(kind), | 204 out.AddFormatted(" %s, %s", Code::Kind2String(kind), |
205 Code::ICState2String(ic_state)); | 205 Code::ICState2String(ic_state)); |
206 if (ic_state == MONOMORPHIC) { | |
207 Code::StubType type = code->type(); | |
208 out.AddFormatted(", %s", Code::StubType2String(type)); | |
209 } | |
210 } else if (kind == Code::STUB || kind == Code::HANDLER) { | 206 } else if (kind == Code::STUB || kind == Code::HANDLER) { |
211 // Get the STUB key and extract major and minor key. | 207 // Get the STUB key and extract major and minor key. |
212 uint32_t key = code->stub_key(); | 208 uint32_t key = code->stub_key(); |
213 uint32_t minor_key = CodeStub::MinorKeyFromKey(key); | 209 uint32_t minor_key = CodeStub::MinorKeyFromKey(key); |
214 CodeStub::Major major_key = CodeStub::GetMajorKey(code); | 210 CodeStub::Major major_key = CodeStub::GetMajorKey(code); |
215 DCHECK(major_key == CodeStub::MajorKeyFromKey(key)); | 211 DCHECK(major_key == CodeStub::MajorKeyFromKey(key)); |
216 out.AddFormatted(" %s, %s, ", Code::Kind2String(kind), | 212 out.AddFormatted(" %s, %s, ", Code::Kind2String(kind), |
217 CodeStub::MajorName(major_key)); | 213 CodeStub::MajorName(major_key)); |
218 out.AddFormatted("minor: %d", minor_key); | 214 out.AddFormatted("minor: %d", minor_key); |
219 } else { | 215 } else { |
(...skipping 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
281 | 277 |
282 int Disassembler::Decode(Isolate* isolate, std::ostream* os, byte* begin, | 278 int Disassembler::Decode(Isolate* isolate, std::ostream* os, byte* begin, |
283 byte* end, Code* code) { | 279 byte* end, Code* code) { |
284 return 0; | 280 return 0; |
285 } | 281 } |
286 | 282 |
287 #endif // ENABLE_DISASSEMBLER | 283 #endif // ENABLE_DISASSEMBLER |
288 | 284 |
289 } // namespace internal | 285 } // namespace internal |
290 } // namespace v8 | 286 } // namespace v8 |
OLD | NEW |