- 24 Mar, 2017 1 commit
-
-
kozyatinskiy authored
+ added a test. BUG=none R=dgozman@chromium.org Review-Url: https://codereview.chromium.org/2743163002 Cr-Commit-Position: refs/heads/master@{#44082}
-
- 22 Mar, 2017 4 commits
-
-
kozyatinskiy authored
- renamed inspector-test methods, - tuned comment in debug.h BUG=v8:6118 TBR=dgozman@chromium.org Review-Url: https://codereview.chromium.org/2766283002 Cr-Commit-Position: refs/heads/master@{#44043}
-
kozyatinskiy authored
With flag we can debug injected-script-source in inspector-test or from DevTools frontend as regular user code. We need this when working on new features or debugging issues, it's for internal purpose only and doesn't provide any benefits for end users. Flag: --expose-inspector-scripts BUG=none R=yangguo@chromium.org Review-Url: https://codereview.chromium.org/2767873002 Cr-Commit-Position: refs/heads/master@{#44039}
-
kozyatinskiy authored
Indisputable profit: - correct break location in next task (see tests), - stepOver with async await never lands in random code (see related test and issue), - inspector doesn't store current stepping state in debugger agent and completely trust V8 - step to new inspector-V8 design (I will finish design doc soon). - willExecuteScript and didExecuteScript instrumentation could be removed from code base - reduce probability of future errors. - finally - less code, - stepping implementation in V8 makes another step to follow our stepping strategy (stepOut should do stepInto and break when exit current frame) (another one one page design doc based on @aandrey comment is coming), - knowledge about existing of context groups is still inspector-only. Disputable part is related to super rare scenario when in single isolate we have more then one context group id with enabled debugger agent: - if one agent request break in own context (stepping, pause, e.t.c.) then we ignore all breaks in another agent. From one hand it looks like good: user clicks stepInto and they don't expect that execution could be paused by another instance of DevTools in unobservable from current DevTools way (second DevTools will get paused notification and run nested message loop). From another hand we shouldn't ignore breakpoints or debugger statement never. In general, I think that proposed behavior is rathe feature then issue. - and disadvantage, on attempt to break in non-target context group id we just call StepOut until reach target context group id, step out call could deoptimize code in non related to current debugger agent context. But break could happens only in case of debugger stmt or breakpoint - sound like minor issue. Ignoring break on exception sounds like real issue but by module of rareness of this case I think we can ignore this. Implementation details: - when debugger agent request break for any reason it passes target context group id to V8Debugger - last agent requesting break is preferred. - when V8Debugger gets BreakProgramRequested notification from V8, it checks current context group id against target context group id, if they match then just process break as usual otherwise makes StepOut action, - debug.cc at the end of microtask if last_scheduled_action is StepOut, schedules StepIn and will break on first instruction in next task. BUG=chromium:654022 R=dgozman@chromium.org,yangguo@chromium.org Review-Url: https://codereview.chromium.org/2748503002 Cr-Commit-Position: refs/heads/master@{#44034}
-
kozyatinskiy authored
Proposed behaviour: - StepNext at return position go into next function call (no changes with current behavior, but implemented in v8::Debug instead of hack on inspector side); - StepOut at return position go into next non-current function call. We need this to have better stepping in cases with native functions, blackboxed functions and/or different embedder calls (e.g. event listeners). New behavior could be illustrated with two examples (for more see stepping-with-natives-and-frameworks test): - let's assume that we've blackboxed callAll function, this function just takes its arguments and call one after another: var foo = () => 1; callAll(foo, foo, () => 2); If we break inside of first call of function foo. Then on.. ..StepNext - we're able to reach second call of function foo, ..StepOut - we're able to reach () => 2 call. - let's consider case with native function: [1,2,3].map(x => x * 2) If we break inside of first callback call, then with StepNext we can iterate through all calls of callback, with StepOut we go to next statement after .map call. Implementation details: - when we request break we schedule step-in function call for any step action at return position and for step-in at any position, - when we request StepOut at return position - we mark current function as needed-to-be-ignored inside of PrepareStepIn(function) call, - when we request StepOut at not return position - we set break at return position and ask debugger to just repeat last step action on next stepping-related break. Design doc: https://docs.google.com/document/d/1ihXHOIhP_q-fJCA0e2EiXz_Zr3B08KMjaPifcaqZ60Q/edit BUG=v8:6118,chromium:583193 R=dgozman@chromium.org,yangguo@chromium.org Review-Url: https://codereview.chromium.org/2758483002 Cr-Commit-Position: refs/heads/master@{#44028}
-
- 16 Mar, 2017 1 commit
-
-
allada authored
Stacktrace data is now passed when scriptParsed event is triggered. R=kozyatinskiy@chromium.org,dgozman BUG=chromium:646849 Review-Url: https://codereview.chromium.org/2755863002 Cr-Commit-Position: refs/heads/master@{#43879}
-
- 14 Mar, 2017 2 commits
-
-
yangguo authored
Nested arrow functions can have the same end positions, so the end position is unsuitable to decide whether a scope is an inner function scope. BUG=chromium:696202 R=jgruber@chromium.org, kozyatinskiy@chromium.org Review-Url: https://codereview.chromium.org/2751573003 Cr-Commit-Position: refs/heads/master@{#43797}
-
Clemens Hammacher authored
In Isolate::CaptureSimpleStackTrace, we were ignoring interpreter entry frames so far. This CLs changes this to gets the interpreted stack from the wasm interpreter and add the frames to the FrameArray. R=ahaas@chromium.org, titzer@chromium.org BUG=v8:5822 Change-Id: I705909532ff28af412ff809da94522866eaa1c0d Reviewed-on: https://chromium-review.googlesource.com/452378 Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Reviewed-by:
Ben Titzer <titzer@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#43772}
-
- 13 Mar, 2017 2 commits
-
-
kozyatinskiy authored
We emulate break by callling breakProgramCallback function in debugger context, we can just use HandleDebugBreak. It allows us to move all stepping logic to debug.cc later and remove one usage of debugger context. + two minor issues fixed, see tests. BUG=v8:5510 R=yangguo@chromium.org Review-Url: https://codereview.chromium.org/2738503006 Cr-Commit-Position: refs/heads/master@{#43750}
-
Caitlin Potter authored
Add a mechanic to set these Builtin exception predictions per-Isolate rather than per-Context in the Bootstrapper. Also add Debugger tests which would fail without these prediction modes set. Does not yet test for AsyncFromSyncIteratorPrototypeReturn, as this requires AsyncGenerators and `yield*` to be hit. BUG=chromium:691875 R=yangguo@chromium.org, jgruber@chromium.org, gsathya@chromium.org Change-Id: Ic2d2aba3870cce2f7321080f4278875edf253c76 Reviewed-on: https://chromium-review.googlesource.com/451967Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Caitlin Potter <caitp@igalia.com> Cr-Commit-Position: refs/heads/master@{#43742}
-
- 10 Mar, 2017 1 commit
-
-
kozyatinskiy authored
- additionally doesn't deoptimize function in HandleDebugBreak for debugger statements inside of blackboxed code. BUG=none R=yangguo@chromium.org Review-Url: https://codereview.chromium.org/2742843003 Cr-Commit-Position: refs/heads/master@{#43724}
-
- 07 Mar, 2017 3 commits
-
-
kozyatinskiy authored
BUG=none R=caseq@chromium.org Review-Url: https://codereview.chromium.org/2740623002 Cr-Commit-Position: refs/heads/master@{#43656}
-
Ross McIlroy authored
Once we enabled --turbo by default we need to turn all the implications off with --no-turbo as well. Chrome sets flags in V8 using SetFlagFromString, which enforces the implications each time it is called. Therefore, if --turbo is enabled by default, and an unrelated flag is set, the turbo implications are enabled but not later disabled if we set --no-turbo. To fix this, add negative implications as well. BUG=chromium:692409 Change-Id: Iadb0ca542f49ba65c7419cda8c7a03636a8d5ba9 Reviewed-on: https://chromium-review.googlesource.com/451320 Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#43655}
-
mvstanton authored
BUG=v8:5267, chromium:692409 Review-Url: https://codereview.chromium.org/2720713003 Cr-Commit-Position: refs/heads/master@{#43638}
-
- 06 Mar, 2017 2 commits
-
-
kozyatinskiy authored
This CL provide type with each break location, type could be: call, return or debugger statement. BUG=chromium:432469 R=yangguo@chromium.org,dgozman@chromium.org Review-Url: https://codereview.chromium.org/2728563002 Cr-Commit-Position: refs/heads/master@{#43619}
-
kozyatinskiy authored
This method could be called on pause and will do stepInto next scheduled callback if any will happen until next break. First implementation support only callbacks chained by Promise.prototype.then. BUG=chromium:432469 R=yangguo@chromium.org,dgozman@chromium.org Review-Url: https://codereview.chromium.org/2723273002 Cr-Commit-Position: refs/heads/master@{#43616}
-
- 03 Mar, 2017 2 commits
-
-
clemensh authored
If the imported wasm function is being debugged (i.e. redirects to the interpreter), call it via the JS_TO_WASM stub, such that we can disable the breakpoint later by patching the exported function. This also contains a drive-by fix in wasm-translation.cc (for the case that all known positions are bigger than the requested one). R=titzer@chromium.org, kozyatinskiy@chromium.org BUG=v8:5971, v8:5822 Review-Url: https://codereview.chromium.org/2720813002 Cr-Commit-Position: refs/heads/master@{#43583}
-
kozyatinskiy authored
BUG=chromium:698077 R=lushnikov@chromium.org,alph@chromium.org Review-Url: https://codereview.chromium.org/2730813002 Cr-Commit-Position: refs/heads/master@{#43567}
-
- 02 Mar, 2017 1 commit
-
-
ulan authored
BUG=v8:6018 Review-Url: https://codereview.chromium.org/2729843002 Cr-Commit-Position: refs/heads/master@{#43550}
-
- 28 Feb, 2017 2 commits
-
-
kozyatinskiy authored
This method enables test of agent::restore methods. Bonus: forbid setCustomObjectFormatterEnabled on disabled agent. BUG=none R=dgozman@chromium.org Review-Url: https://codereview.chromium.org/2713023004 Cr-Commit-Position: refs/heads/master@{#43502}
-
kozyatinskiy authored
For breakpoints which are set by setBreakpointByUrl(url:..) backend calculates source hint on first related breakpoints resolved event and then uses this hint to adjust breakpoint position in later arrived scripts with the same url or on page reload. Doc: https://docs.google.com/a/google.com/document/d/1VtWo_-jelzEXSNbjESGTtruZngzXgbHLexfTzxNlnjE/edit?usp=sharing BUG=chromium:688776 R=pfeldman@chromium.org, alph@chromium.org Review-Url: https://codereview.chromium.org/2671193002 Cr-Commit-Position: refs/heads/master@{#43493}
-
- 27 Feb, 2017 3 commits
-
-
kozyatinskiy authored
BUG=none R=dgozman@chromium.org Review-Url: https://codereview.chromium.org/2710903003 Cr-Commit-Position: refs/heads/master@{#43459}
-
kozyatinskiy authored
This test helps to prevent regressions during work on new break locations. BUG=none R=dgozman@chromium.org Review-Url: https://codereview.chromium.org/2719763002 Cr-Commit-Position: refs/heads/master@{#43458}
-
kozyatinskiy authored
BUG=chromium:695236 R=dgozman@chromium.org,yangguo@chromium.org Review-Url: https://codereview.chromium.org/2710953004 Cr-Commit-Position: refs/heads/master@{#43457}
-
- 24 Feb, 2017 1 commit
-
-
kozyatinskiy authored
With inline breakpoints DevTools are ready for break position aligned breakpoints instead of statement aligned. BUG=chromium:695236 R=dgozman@chromium.org,yangguo@chromium.org Review-Url: https://codereview.chromium.org/2709263002 Cr-Original-Commit-Position: refs/heads/master@{#43385} Committed: https://chromium.googlesource.com/v8/v8/+/2fed7a0090b316d77ebbf509d2cc98edd4b6ccf0 Review-Url: https://codereview.chromium.org/2709263002 Cr-Commit-Position: refs/heads/master@{#43400}
-
- 23 Feb, 2017 2 commits
-
-
machenbach authored
Revert of [inspector] use BREAK_POSITION_ALIGNED for breakpoints (patchset #7 id:120001 of https://codereview.chromium.org/2709263002/ ) Reason for revert: breaks layout tests: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/13747 which blocks rolling. See also: https://github.com/v8/v8/wiki/Blink-layout-tests Original issue's description: > [inspector] use BREAK_POSITION_ALIGNED for breakpoints > > With inline breakpoints DevTools are ready for break position aligned breakpoints instead of statement aligned. > > BUG=chromium:695236 > R=dgozman@chromium.org,yangguo@chromium.org > > Review-Url: https://codereview.chromium.org/2709263002 > Cr-Commit-Position: refs/heads/master@{#43385} > Committed: https://chromium.googlesource.com/v8/v8/+/2fed7a0090b316d77ebbf509d2cc98edd4b6ccf0 TBR=dgozman@chromium.org,yangguo@chromium.org,kozyatinskiy@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:695236 Review-Url: https://codereview.chromium.org/2709313003 Cr-Commit-Position: refs/heads/master@{#43395}
-
kozyatinskiy authored
With inline breakpoints DevTools are ready for break position aligned breakpoints instead of statement aligned. BUG=chromium:695236 R=dgozman@chromium.org,yangguo@chromium.org Review-Url: https://codereview.chromium.org/2709263002 Cr-Commit-Position: refs/heads/master@{#43385}
-
- 10 Feb, 2017 1 commit
-
-
yangguo authored
R=jgruber@chromium.org, kozyatinskiy@chromium.org BUG=v8:5821 Review-Url: https://codereview.chromium.org/2685483002 Cr-Original-Commit-Position: refs/heads/master@{#43049} Committed: https://chromium.googlesource.com/v8/v8/+/1a989bdeefdc679745215ae547007773edb3d29e Review-Url: https://codereview.chromium.org/2685483002 Cr-Commit-Position: refs/heads/master@{#43114}
-
- 09 Feb, 2017 1 commit
-
-
titzer authored
R=rossberg@chromium.org,bradnelson@chromium.org BUG=chromium:575167, chromium:690281 Review-Url: https://codereview.chromium.org/2681993003 Cr-Commit-Position: refs/heads/master@{#43048}
-
- 08 Feb, 2017 1 commit
-
-
kozyatinskiy authored
In current implementation we don't support nested scheduled break at all. If one break was scheduled inside another and second one doesn't produce actual break (execution was in blackboxed code or no JavaScript was executed) then second one will clear first scheduled break even if any not blackboxed JavaScript will be executed later. Ambiguous break reason is added for the case when we have more then one scheduled reason. "auxData" in this case contains object with array of { reason: reason, auxData: auxData } objects for each reason in 'reasons' property. BUG=chromium:632405 Review-Url: https://codereview.chromium.org/2678313002 Cr-Commit-Position: refs/heads/master@{#43021}
-
- 07 Feb, 2017 1 commit
-
-
kozyatinskiy authored
- entries preview available even if debugger agent is disabled, - less deprecated mirrors usage in debugger-script.js - no usage of debugger context - zero probability of leaking it. - better test coverage. BUG=v8:5510 R=yangguo@chromium.org,jgruber@chromium.org,alph@chromium.org,luoe@chromium.org Review-Url: https://codereview.chromium.org/2672213002 Cr-Commit-Position: refs/heads/master@{#42978}
-
- 03 Feb, 2017 3 commits
-
-
kozyatinskiy authored
BUG=v8:1569 R=dgozman@chromium.org,alph@chromium.org Review-Url: https://codereview.chromium.org/2669713002 Cr-Commit-Position: refs/heads/master@{#42935}
-
kozyatinskiy authored
This flag is true when compiled script is ES6 module. BUG=v8:1569 R=dgozman@chromium.org,adamk@chromium.org Review-Url: https://codereview.chromium.org/2663973002 Cr-Commit-Position: refs/heads/master@{#42910}
-
kozyatinskiy authored
V8DebuggerAgentImpl::m_skipAllPaused is moved to V8Debugger. V8DebuggerAgentImpl::didPaused doesn't return shouldBreak flag and called only when break is required and stack trace presented. V8DebuggerAgentImpl doesn't store paused context. Logic of conversion step-next at return into step-in is moved to debug.cc. BUG=none R=dgozman@chromium.org,yangguo@chromium.org Review-Url: https://codereview.chromium.org/2668763003 Cr-Commit-Position: refs/heads/master@{#42907}
-
- 31 Jan, 2017 1 commit
-
-
kozyatinskiy authored
Test just checks that all basic features are working correctly with modules. BUG=v8:1569 R=dgozman@chromium.org,alph@chromium.org,adamk@chromium.org Review-Url: https://codereview.chromium.org/2663743002 Cr-Commit-Position: refs/heads/master@{#42796}
-
- 27 Jan, 2017 3 commits
-
-
clemensh authored
Always execute the implicit return if we fell off the function bytes. This is not considered an additional "step" as it is not executing a wasm instruction. Otherwise, we might pause at an invalid position (one after the function bytes). R=titzer@chromium.org BUG=v8:5822 Review-Url: https://codereview.chromium.org/2650293003 Cr-Commit-Position: refs/heads/master@{#42730}
-
clemensh authored
This also fixes bugs found by the new test. It only tests stepping inside of wasm code. Wasm to JS and vice versa will follow in another CL. R=yangguo@chromium.org, titzer@chromium.org, kozyatinskiy@chromium.org BUG=v8:5822 Review-Url: https://codereview.chromium.org/2651043004 Cr-Commit-Position: refs/heads/master@{#42729}
-
clemensh authored
and add an inspector test for it. Also test that a breakpoint can be set on each reported position, and that it is also hit during execution. This CL also fixes two little things which were uncovered by the new test. R=yangguo@chromium.org, titzer@chromium.org, kozyatinskiy@chromium.org BUG=v8:5822 Review-Url: https://codereview.chromium.org/2655653003 Cr-Commit-Position: refs/heads/master@{#42722}
-
- 26 Jan, 2017 2 commits
-
-
kozyatinskiy authored
BUG=v8:5842, chromium:583193 R=yangguo@chromium.org,dgozman@chromium.org,alph@chromium.org Review-Url: https://codereview.chromium.org/2656743003 Cr-Commit-Position: refs/heads/master@{#42715}
-
kozyatinskiy authored
- and fixed test. BUG=v8:5842, chromium:583193 R=yangguo@chromium.org,dgozman@chromium.org,alph@chromium.org Review-Url: https://codereview.chromium.org/2651683005 Cr-Commit-Position: refs/heads/master@{#42714}
-