| Summary: | Provide javascript aware backtrace script for lldb | ||||||
|---|---|---|---|---|---|---|---|
| Product: | WebKit | Reporter: | Michael Saboff <msaboff> | ||||
| Component: | Tools / Tests | Assignee: | Michael Saboff <msaboff> | ||||
| Status: | RESOLVED FIXED | ||||||
| Severity: | Normal | CC: | bunhere, cdumez, commit-queue, gyuyoung.kim, sergio | ||||
| Priority: | P2 | ||||||
| Version: | 528+ (Nightly build) | ||||||
| Hardware: | All | ||||||
| OS: | All | ||||||
| Bug Depends on: | 134278 | ||||||
| Bug Blocks: | |||||||
| Attachments: |
|
||||||
Created attachment 233823 [details]
Patch
Attachment 233823 [details] did not pass style-queue:
ERROR: Tools/lldb/lldb_webkit.py:101: expected 2 blank lines, found 1 [pep8/E302] [5]
ERROR: Tools/lldb/lldb_webkit.py:127: trailing whitespace [pep8/W291] [5]
Total errors found: 2 in 2 files
If any of these errors are false positives, please file a bug against check-webkit-style.
Comment on attachment 233823 [details]
Patch
nice! r=me.
Committed r170432: <http://trac.webkit.org/changeset/170432> |
lldb provides the ability to augment lldb functionality via python scripts. This can be used to make backtraces JavaScript aware. Consider the backtrace while running deltablue.js from jsc: (lldb) bt * thread #1: tid = 0x2c103b, 0x000025c288a61720, queue = 'com.apple.main-thread, stop reason = signal SIGSTOP frame #0: 0x000025c288a61720 frame #1: 0x000025c288a57c40 frame #2: 0x000025c288a6e050 frame #3: 0x000025c288a5d654 frame #4: 0x0000000100647550 JavaScriptCore`llint_entry + 25930 frame #5: 0x0000000100640d94 JavaScriptCore`callToJavaScript + 356 ... A more informative backtrace could be: (lldb) bt * thread \#1: tid = 0x2c103b, 0x000025c288a61720, queue = 'com.apple.main-thread, stop reason = signal SIGSTOP frame #0: 0x000025c288a61720 chooseMethod#EmCrCd [DFG](Cell[Object ID: 448]: 0x10994ca70, 97) frame #1: 0x000025c288a57c40 satisfy#A7Z1GK [FTL](Cell[Object ID: 448]: 0x10994ca70, 97) frame #2: 0x000025c288a6e050 chainTest#BRCzIm [DFG](Cell[global ID: 353]: 0x101cdf970, 100) frame #3: 0x000025c288a5d654 deltaBlue#DNE2LT [Baseline](Cell[global ID: 353]: 0x101cdf970) frame #4: 0x0000000100647550 <global>#AxbsUM [LLInt](Cell[JSProxy ID: 322]: 0x101cffb90) frame #5: 0x0000000100640d94 JavaScriptCore`callToJavaScript + 356 ...