- 08 Jan, 2019 1 commit
-
-
Dan Elphick authored
Only look 5 frames up the stack when looking for a DCHECK to move the frame to to prevent excessive iteration especially after a stack overflow. Change-Id: I227c46596f09c9af0a47e6673d3165eaccb75163 Reviewed-on: https://chromium-review.googlesource.com/c/1400408Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#58621}
-
- 18 Dec, 2018 1 commit
-
-
Clemens Hammacher authored
Some frames have no name. gdb showed an error in these cases. This CL avoids this by explicitly handling unnamed frames. R=ahaas@chromium.org No-Try: true Change-Id: Id3918705fbfe66306b5d1c34c3638b67e037aa18 Reviewed-on: https://chromium-review.googlesource.com/c/1382211Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58313}
-
- 14 Dec, 2018 1 commit
-
-
Clemens Hammacher authored
When selecting the frame above the V8_Dcheck method (at the DCHECK location), it helps enormously to immediately see the error message generated by the DCHECK. This extends the dcheck_stop_handler to find and print this message. Drive-by: Speed up the handler by stopping after the first V8_Dcheck frame. R=mstarzinger@chromium.org Bug: v8:8562 Change-Id: If3a8f3aaab6a0014006ccac7260f37d5d90363c5 No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/1378170Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#58238}
-
- 12 Nov, 2018 1 commit
-
-
Igor Sheludko authored
because for some reason gdb does not want to execute job *handle anymore. Bug: v8:8238 Change-Id: I9b632f5d34048b80e1f9542de963f738f1afb613 Reviewed-on: https://chromium-review.googlesource.com/c/1332230 Commit-Queue: Igor Sheludko <ishell@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#57449}
-
- 21 Aug, 2018 1 commit
-
-
Dan Elphick authored
UNREACHABLE and CHECK call V8_Fatal directly so treat them like V8_Dcheck, but also ensure that the frame is moved up to the DCHECK frame even if it calls V8_Fatal. Change-Id: Iad5f2e3ea95182bed473d6b2d843a0c1e111911d Reviewed-on: https://chromium-review.googlesource.com/1183303Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#55267}
-
- 14 Aug, 2018 1 commit
-
-
Dan Elphick authored
Rather than having GDB always stop on the line containing V8_IMMEDIATE_CRASH(), walk up the stack looking for V8_Dcheck and select the frame above it. This will be the frame containing DCHECK (including related macros like DCHECK_EQ). Change-Id: I9760e7a4dd78b567dfa77ff12569d287d80ca873 Reviewed-on: https://chromium-review.googlesource.com/1172780Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#55112}
-
- 26 Jun, 2018 1 commit
-
-
Dan Elphick authored
All Object::Print functions now take an Isolate* parameter. Various XX::XXPrint functions now take an Isolate if it's needed rather than calling GetIsolate(). Such method use DECL_PRINTER_WITH_ISOLATE rather than DECL_PRINTER. The _v8_internal_Print_ function (intended for use in gdb) now uses Isolate::Current() to get hold of an Isolate. Reduces the GetIsolate and GetHeap count by 9 and 5 respectively. Also removes unneeded gdb/lldb macros (along with their support functions), jfv, jfm, jda and jta, since job does the same thing. Bug: v8:7786 Change-Id: Ib93ebca6ca47c4db9c85cc6d9ff8004da5942dec Reviewed-on: https://chromium-review.googlesource.com/1112001 Commit-Queue: Dan Elphick <delphick@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#54029}
-
- 06 Dec, 2017 1 commit
-
-
Yang Guo authored
R=franzih@chromium.org Change-Id: I5f5ac245408c76a072f5cb3ae81b8773ddcd47cc Reviewed-on: https://chromium-review.googlesource.com/808784Reviewed-by:
Franziska Hinkelmann <franzih@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#49912}
-
- 06 Jul, 2017 1 commit
-
-
Camillo Bruni authored
jtt will now print the complete transition tree of a given Map in gdb. Change-Id: I07031dd3d463bec0072e8ac696406279ff057489 Reviewed-on: https://chromium-review.googlesource.com/558257 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#46437}
-
- 09 May, 2017 1 commit
-
-
Camillo Bruni authored
heap_find walks all the page of the heap and finds the references to a given address. NOTRY=true Change-Id: I3271ab96d0224acf2361fe5bc4c8b0a608caf091 Reviewed-on: https://chromium-review.googlesource.com/500190 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#45202}
-
- 14 Feb, 2017 1 commit
-
-
ishell@chromium.org authored
BUG= Change-Id: I1e32fdcf9edda57f5de329c8b694620a5da4558b Reviewed-on: https://chromium-review.googlesource.com/442444Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/master@{#43185}
-
- 06 Feb, 2017 1 commit
-
-
mvstanton authored
TypeFeedbackVectors are strongly rooted by a closure. However, in modern JavaScript closures are created and abandoned more freely. An important closure may not be present in the root-set at time of garbage collection, even though we've cached optimized code and use it regularly. For example, consider leaf functions in an event dispatching system. They may well be "hot," but tragically non-present when we collect the heap. Until now, we've relied on a weak root to cache the feedback vector in this case. Since there is no way to signal intent or relative importance, this weak root is as susceptible to clearing as any other weak root at garbage collection time. Meanwhile, the feedback vector has become more important. All of our ICs store their data there. Literal and regex boilerplates are stored there. If we lose the vector, then we not only lose optimized code built from it, we also lose the very feedback which allowed us to create that optimized code. Therefore it's vital to express that dependency through the root set. This CL does this by creating a strong link to a feedback vector at the instantiation site of the function closure. This instantiation site is in the code and feedback vector of the outer closure. BUG=v8:5456 Review-Url: https://codereview.chromium.org/2674593003 Cr-Commit-Position: refs/heads/master@{#42953}
-
- 13 Jan, 2017 1 commit
-
-
yangguo authored
R=marja@chromium.org Review-Url: https://codereview.chromium.org/2628293003 Cr-Commit-Position: refs/heads/master@{#42327}
-
- 28 Nov, 2016 1 commit
-
-
ishell authored
BUG= Review-Url: https://codereview.chromium.org/2537523002 Cr-Commit-Position: refs/heads/master@{#41326}
-
- 04 Nov, 2016 2 commits
-
-
yangguo authored
TBR=jochen@chromium.org Review-Url: https://codereview.chromium.org/2474433011 Cr-Commit-Position: refs/heads/master@{#40749}
-
yangguo authored
This is how it would look like. (gdb) bta [1 ] V8_Fatal ../../src/base/logging.cc:67 [2 ] v8::internal::Heap::AllocateRaw ../../src/heap/heap-inl.h:298 [3 ] v8::internal::Heap::AllocateHeapNumber ../../src/heap/heap.cc:2432 [4 ] v8::internal::Factory::NewHeapNumber ../../src/factory.cc:1253 [5 ] v8::internal::Factory::NewNumber ../../src/factory.cc:1228 [6 ] v8::internal::__RT_impl_Runtime_ConstructDouble ../../src/runtime/runtime-test.cc:32 -> Allow HEAP_ALLOCATION (yes_gc) -> Disallow HEAP_ALLOCATION (no_gc) [7 ] v8::internal::Runtime_ConstructDouble ../../src/runtime/runtime-test.cc:24 R=jochen@chromium.org Review-Url: https://codereview.chromium.org/2466263007 Cr-Commit-Position: refs/heads/master@{#40748}
-
- 28 Jul, 2016 2 commits
-
-
ishell authored
[gdb] Define print functions used by gdb macros in the top level namespace to make them always be available. This should fix the following errors that sometimes appear when using V8 gdb macros: Cannot evaluate function -- may be inlined or No symbol "xxx" in namespace "v8::internal". Review-Url: https://codereview.chromium.org/2186293002 Cr-Commit-Position: refs/heads/master@{#38145}
-
jochen authored
Use it like this: Program received signal SIGTRAP, Trace/breakpoint trap. [Switching to Thread 0x7f50d02c4700 (LWP 8152)] base::debug::(anonymous namespace)::DebugBreak () at ../../base/debug/debugger_posix.cc:230 230 } (gdb) bt at ../../base/debug/debugger_posix.cc:230 ... args_object=0x7f50d02bfe00, isolate=0x2f001c9e2020) at ../../v8/src/builtins/builtins-api.cc:123 ... (gdb) jss (gdb) bt isolate=0x2f001c9e2020, is_construct=false, target=..., receiver=..., argc=1, args=0x7f50d02c0518, new_target=...) at ../../v8/src/execution.cc:111 isolate=0x2f001c9e2020, callable=..., receiver=..., argc=1, argv=0x7f50d02c0518) at ../../v8/src/execution.cc:168 ... R=yangguo@chromium.org BUG= Review-Url: https://codereview.chromium.org/2186013002 Cr-Commit-Position: refs/heads/master@{#38121}
-
- 15 Jul, 2015 1 commit
-
-
mvstanton authored
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}
-
- 12 Jun, 2015 1 commit
-
-
jochen authored
BUG=none R=yangguo@chromium.org LOG=n Review URL: https://codereview.chromium.org/1179053004 Cr-Commit-Position: refs/heads/master@{#28985}
-
- 24 Oct, 2014 1 commit
-
-
jkummerow@chromium.org authored
R=svenpanne@chromium.org Review URL: https://codereview.chromium.org/669383002 Cr-Commit-Position: refs/heads/master@{#24881} git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24881 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Oct, 2014 1 commit
-
-
ishell@chromium.org authored
R=verwaest@chromium.org Review URL: https://codereview.chromium.org/659363002 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@24837 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 09 Jul, 2014 1 commit
-
-
mstarzinger@chromium.org authored
R=jkummerow@chromium.org Review URL: https://codereview.chromium.org/379133003 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22296 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Jul, 2014 1 commit
-
-
jkummerow@chromium.org authored
Suggested usage: echo "source /path/to/v8/tools/gdbinit" >> ~/.gdbinit R=mstarzinger@chromium.org Review URL: https://codereview.chromium.org/375503009 git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@22252 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-