9386b861fd
Gdb macro jfv on an object will print it as a feedback vector. Printouts look like this: DebugPrint: 0x5dc0d2ad: [TypeFeedbackVector] - length: 12 - ics with type info: 3 - generic ics: 0 ICSlot 0 CALL_IC MONOMORPHIC [4]: 0x5dc0d365 WeakCell for 0x5dc0cd69 <JS Function foo (SharedFunctionInfo 0x5dc0cb0d)> [5]: 0x4203c4c1 <Code: HANDLER> ICSlot 1 LOAD_IC MONOMORPHIC [6]: 0x5dc0d1f5 WeakCell for 0x3a710481 <Map(FAST_HOLEY_SMI_ELEMENTS)> [7]: 0x4203a1c1 <Code: HANDLER> ICSlot 2 LOAD_IC UNINITIALIZED [8]: 0x3060d045 <Symbol: 711234650 <String[20]: uninitialized_symbol>> [9]: 0x3060d045 <Symbol: 711234650 <String[20]: uninitialized_symbol>> ICSlot 3 LOAD_IC MONOMORPHIC [10]: 0x5dc0d3b5 WeakCell for 0x3a710d71 <Map(FAST_HOLEY_ELEMENTS)> [11]: 0x4202af01 <Code: HANDLER> BUG= Review URL: https://codereview.chromium.org/1225403005 Cr-Commit-Position: refs/heads/master@{#29679}
61 lines
1.3 KiB
Plaintext
61 lines
1.3 KiB
Plaintext
# Copyright 2014 the V8 project authors. All rights reserved.
|
|
# Use of this source code is governed by a BSD-style license that can be
|
|
# found in the LICENSE file.
|
|
|
|
# Print HeapObjects.
|
|
define job
|
|
print ((v8::internal::HeapObject*)($arg0))->Print()
|
|
end
|
|
document job
|
|
Print a v8 JavaScript object
|
|
Usage: job tagged_ptr
|
|
end
|
|
|
|
# Print Code objects containing given PC.
|
|
define jco
|
|
job (v8::internal::Isolate::Current()->FindCodeObject((v8::internal::Address)$arg0))
|
|
end
|
|
document jco
|
|
Print a v8 Code object from an internal code address
|
|
Usage: jco pc
|
|
end
|
|
|
|
# Print TypeFeedbackVector
|
|
define jfv
|
|
print ((v8::internal::TypeFeedbackVector*)($arg0))->Print()
|
|
end
|
|
document jfv
|
|
Print a v8 TypeFeedbackVector object
|
|
Usage: jtv tagged_ptr
|
|
end
|
|
|
|
# Print DescriptorArray.
|
|
define jda
|
|
print ((v8::internal::DescriptorArray*)($arg0))->Print()
|
|
end
|
|
document jda
|
|
Print a v8 DescriptorArray object
|
|
Usage: jda tagged_ptr
|
|
end
|
|
|
|
# Print TransitionArray.
|
|
define jta
|
|
print ((v8::internal::TransitionArray*)($arg0))->Print()
|
|
end
|
|
document jta
|
|
Print a v8 TransitionArray object
|
|
Usage: jta tagged_ptr
|
|
end
|
|
|
|
# Print JavaScript stack trace.
|
|
define jst
|
|
print v8::internal::Isolate::Current()->PrintStack((FILE*) stdout, 1)
|
|
end
|
|
document jst
|
|
Print the current JavaScript stack trace
|
|
Usage: jst
|
|
end
|
|
|
|
set disassembly-flavor intel
|
|
set disable-randomization off
|