1. 16 Jan, 2017 1 commit
  2. 19 Dec, 2016 3 commits
  3. 16 Dec, 2016 1 commit
  4. 14 Dec, 2016 1 commit
  5. 02 Dec, 2016 1 commit
  6. 01 Dec, 2016 1 commit
  7. 28 Nov, 2016 2 commits
  8. 25 Nov, 2016 1 commit
  9. 23 Nov, 2016 1 commit
  10. 22 Nov, 2016 4 commits
    • jgruber's avatar
      [debug-wrapper] Migrate wasm/frame-inspection test · 9eec1c86
      jgruber authored
      Wasm frames are special in that they have a non-integer script id
      in inspector. The way we treat script ids currently is a bit of a mess -
      our runtime functions expected integer IDs while inspector has string
      IDs (which contain integers, except for Wasm frames). This will need to
      be cleaned up once more Wasm tests are added.
      
      The meaning of line/column numbers has also changed; the old JS debug
      API encoded the function index and byte offset into line/column numbers,
      while inspector-based API actually translates into lines/columns in the
      disassembly.
      
      BUG=v8:5530
      
      Review-Url: https://codereview.chromium.org/2515133003
      Cr-Commit-Position: refs/heads/master@{#41182}
      9eec1c86
    • jgruber's avatar
      [debug-wrapper] Migrate suspended generator scope test · cda1a60a
      jgruber authored
      Unfortunately, there's currently no satisfying way of accessing scopes
      of suspended generator objects through inspector. This CL implements
      access to such scopes through runtime functions instead.
      
      BUG=v8:5530
      
      Review-Url: https://codereview.chromium.org/2513343004
      Cr-Commit-Position: refs/heads/master@{#41179}
      cda1a60a
    • jgruber's avatar
      [debug-wrapper] Implement StepFrame through runtime · a0e91600
      jgruber authored
      StepFrame is a combination of StepIn/StepOut, e.g. it breaks to the next
      frame change. This is not part of the public API, but we want to keep it
      for internal tests.
      
      BUG=v8:5530
      
      Review-Url: https://codereview.chromium.org/2514303003
      Cr-Commit-Position: refs/heads/master@{#41177}
      a0e91600
    • jgruber's avatar
      [debug-wrapper] Migrate more tests · facd6b9a
      jgruber authored
      * Fix setting script-scope variables through inspector by internalizing
        their names.
      * Reconstruct values of Number, String, and Boolean classes.
      * Adapt a couple of tests for API restrictions.
      
      BUG=v8:5530
      
      Review-Url: https://codereview.chromium.org/2512963002
      Cr-Commit-Position: refs/heads/master@{#41175}
      facd6b9a
  11. 21 Nov, 2016 2 commits
    • yangguo's avatar
      [debug-wrapper] migrate debug-backtrace from DCP. · a78a97eb
      yangguo authored
      R=jgruber@chromium.org
      BUG=v8:5530
      
      Review-Url: https://codereview.chromium.org/2516343003
      Cr-Commit-Position: refs/heads/master@{#41149}
      a78a97eb
    • jgruber's avatar
      [debug-wrapper] Adapt tests, breakpoint.actual_location · 1834ab72
      jgruber authored
      Adapted various tests to restrictions of inspector protocol:
      
      * osr-typing-debug-change: Don't set function variable value.
      * debug-evaluate-locals: Add variable introduced by eval, run typeof
        inside evaluate().
      * regress-419663: Don't set duplicate breakpoints.
      * regress-crbug-465298: Compare against function name instead of value.
      * regress-crbug-621361: Make evaluate return string results.
      * debug-script: Various counts were off due to new way tests are called.
                      Added new inspector script type.
      
      Breakpoints now contain the actual break position, and remote object
      reconstruction has been extended a bit.
      
      BUG=v8:5530
      
      Review-Url: https://codereview.chromium.org/2505363002
      Cr-Commit-Position: refs/heads/master@{#41129}
      1834ab72
  12. 17 Nov, 2016 2 commits
  13. 16 Nov, 2016 1 commit
    • jgruber's avatar
      [debug-wrapper] Further extend the debug wrapper · b06c4ce5
      jgruber authored
      This CL further extends the debug wrapper, migrates around 60 tests, and
      removes a few tests that use functionality we will not support anymore.
      
      In more detail:
      
      * Removed tests that use:
        * enable/disable individual breakpoints
        * invocationText()
        * the ScriptCollected event
        * showBreakPoints
        * evalFromScript (and similar)
        * mirror.constructedBy and mirror.referencedBy
        * event_data.promise()
      * Some frame.evaluate uses were adapted since due to differences between
        remote objects (inspector) and mirrors. For instance, exceptions are
        currently not recreated exactly, since the inspector protocol does not
        give us the stack and message separately. Other objects (such as
        'this' in debug-evaluate-receiver-before-super) need to be explicitly
        converted to a string before the test works correctly.
      * Ensure that inspector stores the script before sending ScriptParsed and
        ScriptFailedToParse events in order to be able to use the script from
        within those events.
      * Better remote object reconstruction (e.g. for undefined and arrays).
      * New functionality in wrapper:
        * debuggerFlags().breakPointsActive.setValue()
        * scripts()
        * execState.setVariableValue()
        * execState.scopeObject().value()
        * execState.scopeObject().property()
        * execState.frame().allScopes()
        * eventData.exception()
        * eventData.script()
        * setBreakPointsActive()
      
      BUG=v8:5530
      
      Review-Url: https://codereview.chromium.org/2497973002
      Cr-Commit-Position: refs/heads/master@{#41019}
      b06c4ce5
  14. 11 Nov, 2016 1 commit
    • jgruber's avatar
      [debug-wrapper] Conditional breaks, locals, evaluate, scopes · b32ee40d
      jgruber authored
      This CL adds support for:
      * conditional breaks in setBreakpoint,
      * locals in frame.local{Count,Name,Value},
      * evaluation on a frame in frame.evaluate,
      * and more detailed scope information in scopeObject.
      
      Uses of several functions that are not covered by the
      inspector protocol and are only used in tests have been removed.
      
      Local handling has been modified to also include arguments as locals.
      Inspector differs in this regard from our FrameDetails in that
      arguments are always shown as locals. Argument-related functions
      were removed.
      
      BUG=v8:5530
      
      Review-Url: https://codereview.chromium.org/2491543002
      Cr-Commit-Position: refs/heads/master@{#40917}
      b32ee40d
  15. 10 Nov, 2016 1 commit
  16. 08 Nov, 2016 2 commits
  17. 07 Nov, 2016 1 commit
    • jgruber's avatar
      [debugger] Further stepping support in test wrapper · ea48d094
      jgruber authored
      This CL adds further support to the test wrapper. We are now able to
      run almost all mjsunit/debug-step-* tests using the inspector backend.
      
      debug-stepframe-* tests are not yet supported since inspector does not
      know a 'frame' step type.
      
      The interface has also been improved to be able to move these tests to
      inspector mostly without modification.
      
      BUG=v8:5330
      
      Review-Url: https://codereview.chromium.org/2466273005
      Cr-Commit-Position: refs/heads/master@{#40800}
      ea48d094
  18. 28 Oct, 2016 2 commits
    • jgruber's avatar
      [debugger] Various break-related functionality in test wrapper · 83b560b0
      jgruber authored
      This CL adds simple implementation of break and stepping-related functionality
      as required by the debug-step.js test. This includes
      
      * stepOver, stepInto, stepOut
      * setBreakPoint
      * clearBreakPoint
      * evaluate
      
      Some of these, e.g. setBreakPoint are not fully implemented for all cases but
      only for the ones we need right now.
      
      One interesting result of this is that using the inspector protocol is roughly
      14x slower for debug-step.js (14s instead of 0.5s). One cause of this seems to
      be iteration over all object properties in toProtocolValue, which is used to
      serialize JS objects before being sent over the wire (e.g. FrameMirrors).  This
      is something that should be fixed at some point. In the meantime, the test now
      runs 100 instead of 1000 iterations.
      
      BUG=v8:5530
      
      Review-Url: https://codereview.chromium.org/2447073007
      Cr-Commit-Position: refs/heads/master@{#40636}
      83b560b0
    • jgruber's avatar
      [debugger] Add initial skeleton for debug test wrapper · c8d2a8cf
      jgruber authored
      This adds a wrapper class around the inspector protocol for use in
      debugger tests. The interface is intended to stay similar to the
      currently exposed DebuggerContext.
      
      Right now, we support adding a listener, (partial) handling of the
      AfterCompile event, and enabling/disabling the debugger.
      
      BUG=v8:5530
      
      Review-Url: https://codereview.chromium.org/2451153003
      Cr-Commit-Position: refs/heads/master@{#40635}
      c8d2a8cf
  19. 21 Oct, 2016 1 commit
  20. 04 Apr, 2016 1 commit
    • neis's avatar
      Preserve exception message in iterator finalization. · f70b3d3b
      neis authored
      The parser uses a try-catch in order to record when the client of an iterator
      throws.  The exception then used to get rethrown via 'throw', which
      unfortunately resulted in the original exception message object getting
      overwritten.
      
      This CL solves this as follows:
      - add a clear_pending_message flag to TryCatchStatement (set to true in normal
        cases),
      - set clear_pending_message to false for the TryCatchStatement used in iterator
        finalization
      - change full-codegen, turbofan, and the interpreter to emit the ClearPendingMessage call
        only when the flag is set,
      - replace 'throw' with '%ReThrow' in the iterator finalization code, thus
        reusing the (not-cleared) pending message
      
      R=littledan@chromium.org, mstarzinger@chromium.org, yangguo@chromium.org
      BUG=v8:4875
      LOG=n
      
      Review URL: https://codereview.chromium.org/1842953003
      
      Cr-Commit-Position: refs/heads/master@{#35226}
      f70b3d3b
  21. 16 Mar, 2016 1 commit
  22. 02 Feb, 2016 1 commit
  23. 29 Jan, 2016 1 commit
    • littledan's avatar
      Fix Unicode string normalization with null bytes · f3e41d96
      littledan authored
      Previously, String.prototype.normalize constructed its ICU input
      string as a null-terminated string. This creates a bug for strings
      which contain a null byte, which is allowed in ECMAScript. This
      patch constructs the ICU string based on its length so that the
      entire string is normalized.
      
      R=jshin@chromium.org
      BUG=v8:4654
      LOG=Y
      
      Review URL: https://codereview.chromium.org/1645223003
      
      Cr-Commit-Position: refs/heads/master@{#33614}
      f3e41d96
  24. 04 Jan, 2016 1 commit