1. 06 Jan, 2011 2 commits
    • sgjesse@chromium.org's avatar
      Fixed some tabs left in d8.js · 7cc06674
      sgjesse@chromium.org authored
      TBR=mark.lam@palm.com
      Review URL: http://codereview.chromium.org/6029011
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6202 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      7cc06674
    • sgjesse@chromium.org's avatar
      Misc debugger enhancements and bug fixes. · 2957881a
      sgjesse@chromium.org authored
      1. Added gdb style debugger commands (and their shortcuts) for d8.
      These include:
      - s[tep] : step into the current statement.
      - s[tep]i[n]: step into the current statement with the minimum step.
      - n[ext] : step to the next statement.
      - fin[ish] : step out of the current function.
      - cond : setting conditions on breakpoints.
      - d[elete] : deletes breakpoints.
      - en[able]|dis[able]: enables/disables breakpoints including
      exception breakpoints.
      - ignore : ignores a breakpoint for a specified period.
      - inf[o] ar[gs] : info on arguments of the current function.
      - inf[o] lo[cals] : info on local vars of the current function.
      - inf[o] br[eakpoints] : info on breakpoints.
      - l[ist] : similar to source, but allows the user to continually
      dump subsequent lines of source code either in the
      forward or backward direction.
      - quit / exit / disconnect : terminates the remote debugger
      session.
      
      NOTE: Active breakpoints will automatically be disabled when
      the remote debugger detaches. This allows v8 to continue to
      run without worrying about a loss of a debugger session.
      
      2. Added support for breaking the debugger by simply typing ENTER.
      The break command is now optional.
      
      3. Once the debugger is broken, the user can now just type ENTER
      to repeat the last command. This is useful to functionality that
      needs to be invoked repeatedly e.g. step, list.
      
      4. Added more verbose descriptions in d8's help.
      
      5. Fixed a line and column number offset bug in the listing of breakpoint
      line and column numbers.
      
      6. Added a gc command to allow GCs to be requested from the debugger
      interface. The plumbing for requesting different types of GCs is
      there, but the underlying implementation currently only triggers a
      full mark-compact GC. The command also returns the before and after
      sizes of the heap.
      
      7. Added trace json, and flags commands that are not published in help.
      trace json is used for tracing the debugger packets send from and
      received by d8. flags is for setting v8 flags. These are useful for
      people debugging v8 itself, but not necessarily users of v8.
      
      8. Added the ability to enable and disable break on all / uncaught
      exceptions in to d8.
      
      9. Added a fix to prevent the Debugger Agent from being re-instantiated
      if one already exists.
      
      10. Added the ability to filter results of the script command by matching
      text or numbers on the results.
      
      11. Added v8 flags to enable/disable the sending of debugger BeforeCompile,
      AfterCompile, and ScriptCollected events.
      
      12. Fixed some undefined value bugs that resulted in v8 or the debugger
      failing.
      
      13. Added a few minor WEBOS__ customizations (analogous to ANDROID
      customizations).
      
      Patch by Mark Lam from Hewlett-Packard Development Company, LP
      
      Review URL: http://codereview.chromium.org/5980006
      Review URL: http://codereview.chromium.org/6086010
      
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6200 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      2957881a
  2. 05 Jan, 2011 2 commits
    • sgjesse@chromium.org's avatar
      Revert r6180 as it caused test failures · 3c2c1d21
      sgjesse@chromium.org authored
      TBR=ricow@chromium.org
      Review URL: http://codereview.chromium.org/6080009
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6183 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      3c2c1d21
    • sgjesse@chromium.org's avatar
      Misc debugger enhancements and bug fixes. · 8669f630
      sgjesse@chromium.org authored
      1. Added gdb style debugger commands (and their shortcuts) for d8.
      These include:
      - s[tep] : step into the current statement.
      - s[tep]i[n]: step into the current statement with the minimum step.
      - n[ext] : step to the next statement.
      - fin[ish] : step out of the current function.
      - cond : setting conditions on breakpoints.
      - d[elete] : deletes breakpoints.
      - en[able]|dis[able]: enables/disables breakpoints including
      exception breakpoints.
      - ignore : ignores a breakpoint for a specified period.
      - inf[o] ar[gs] : info on arguments of the current function.
      - inf[o] lo[cals] : info on local vars of the current function.
      - inf[o] br[eakpoints] : info on breakpoints.
      - l[ist] : similar to source, but allows the user to continually
      dump subsequent lines of source code either in the
      forward or backward direction.
      - quit / exit / disconnect : terminates the remote debugger
      session.
      
      NOTE: Active breakpoints will automatically be disabled when
      the remote debugger detaches. This allows v8 to continue to
      run without worrying about a loss of a debugger session.
      
      2. Added support for breaking the debugger by simply typing ENTER.
      The break command is now optional.
      
      3. Once the debugger is broken, the user can now just type ENTER
      to repeat the last command. This is useful to functionality that
      needs to be invoked repeatedly e.g. step, list.
      
      4. Added more verbose descriptions in d8's help.
      
      5. Fixed a line and column number offset bug in the listing of breakpoint
      line and column numbers.
      
      6. Added a gc command to allow GCs to be requested from the debugger
      interface. The plumbing for requesting different types of GCs is
      there, but the underlying implementation currently only triggers a
      full mark-compact GC. The command also returns the before and after
      sizes of the heap.
      
      7. Added trace json, and flags commands that are not published in help.
      trace json is used for tracing the debugger packets send from and
      received by d8. flags is for setting v8 flags. These are useful for
      people debugging v8 itself, but not necessarily users of v8.
      
      8. Added the ability to enable and disable break on all / uncaught
      exceptions in to d8.
      
      9. Added a fix to prevent the Debugger Agent from being re-instantiated
      if one already exists.
      
      10. Added the ability to filter results of the script command by matching
      text or numbers on the results.
      
      11. Added v8 flags to enable/disable the sending of debugger BeforeCompile,
      AfterCompile, and ScriptCollected events.
      
      12. Fixed some undefined value bugs that resulted in v8 or the debugger
      failing.
      
      13. Added a few minor WEBOS__ customizations (analogous to ANDROID
      customizations).
      
      Patch by Mark Lam from Hewlett-Packard Development Company, LP
      
      Review URL: http://codereview.chromium.org/5980006
      
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6180 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      8669f630
  3. 15 Oct, 2010 1 commit
  4. 14 May, 2010 2 commits
  5. 16 Apr, 2010 1 commit
  6. 30 Mar, 2010 1 commit
  7. 08 Sep, 2009 1 commit
  8. 31 Aug, 2009 1 commit
  9. 12 Jun, 2009 1 commit
    • sgjesse@chromium.org's avatar
      Add scope chain information to the debugger. · 88261439
      sgjesse@chromium.org authored
      For each frame it is now possible to request information on the scope chain. Each scope in the chain can have one of the types local, global, with and closure. For scopes of type global and with the mirror for the actual global or with object is available. For scopes of type local and closure a plain JavaScript object with the materialized content of the scope is created and its mirror is returned. Depending on the level of possible optimization the content of the materialized local and closure scopes might only contain the names which are actually used.
      
      To iterate the scope chain an iterator ScopeIterator have been added which can provide the type of each scope for each part of the chain. This iterator creates an artificial local scope whenever that is present as the context chain does not include the local scope.
      
      To avoid caching the mirror objects for the materialized the local and closure scopes transient mirrors have been added. They have negative handles and cannot be retrieved by subsequent lookup calls. Their content is part of a single response.
      
      For debugging purposes an additional runtime function DebugPrintScopes is been added.
      
      Added commands 'scopes' and 'scope' to the developer shell and fixed the dir command.
      
      BUG=none
      TEST=test/mjsunit/debug-scopes.js
      Review URL: http://codereview.chromium.org/123021
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2149 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      88261439
  10. 10 Jun, 2009 1 commit
    • erik.corry@gmail.com's avatar
      A bunch of changes to speed up math on ARM. · b7d48f58
      erik.corry@gmail.com authored
      * Identify heap numbers that contain non-Smi int32s and do bit
      ops on them without calling the fp hardware or emulation.
      * Identify results that are non-Smi int32s and write them into
      heap numbers without calling the fp hardware or emulation.
      * Do unary minus on heap numbers without going into the runtime
      system.
      * On add, sub and mul if we have both Smi and heapnumber inputs
      to the same operation then convert the Smi to a double and do
      the op without going into runtime system.  This also applies
      if we have two Smi inputs but the result is not Smi.
      Review URL: http://codereview.chromium.org/119241
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2131 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      b7d48f58
  11. 08 Jun, 2009 1 commit
    • sgjesse@chromium.org's avatar
      Add more debugging information to scripts compiled through eval. · d498361c
      sgjesse@chromium.org authored
      Scripts now have a compilation type which can be host, eval or JSON. Host scripts are compiled through the API, eval scripts are compiled through call to evan and JSON scripts are compiled as a result of calling JSON.parse.
      
      For scripts scripts compiled through eval the JavaScript function in top of the stack and the pc offset into the code is stored in the script object. This makes it possible to calculate the source position of the eval call later when requested. This information can be obtained through the script mirror object and is part of the script mirror JSON serialization for the debugger protocol.
      
      Moved the enumeration ScripType into class Script and remamed to Type. The new compilation type enumeration is also inside the class Script.
      
      This information is now shown when using the scripts command in he developer shell debugger.
      Review URL: http://codereview.chromium.org/119108
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2119 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      d498361c
  12. 13 May, 2009 1 commit
  13. 22 Apr, 2009 1 commit
  14. 17 Mar, 2009 1 commit
  15. 10 Mar, 2009 1 commit
    • sgjesse@chromium.org's avatar
      Whenever a script object is created it is assigned a unique id. Currently this... · 9d17b0d4
      sgjesse@chromium.org authored
      Whenever a script object is created it is assigned a unique id. Currently this id is assigned from an 32 bit integer counter.
      
      Changed the script break points to be able to handle both break points based on script names and script ids. When break points are set through a script id the position is relative to the script itself. This is different from the script break points set through script names where the line/coulmn offset is taken into account.
      
      This has the side effect that function break points are not converted into script break points for named scripts.
      
      Show the script id in the D8 shell debugger when listing all scripts using the 'scripts' command.
      Review URL: http://codereview.chromium.org/40317
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@1468 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      9d17b0d4
  16. 02 Mar, 2009 1 commit
  17. 26 Feb, 2009 1 commit
  18. 13 Feb, 2009 1 commit
  19. 05 Feb, 2009 2 commits
  20. 26 Jan, 2009 1 commit
  21. 06 Jan, 2009 1 commit
  22. 18 Dec, 2008 2 commits
  23. 21 Oct, 2008 1 commit
  24. 09 Sep, 2008 1 commit
  25. 22 Aug, 2008 1 commit
    • christian.plesner.hansen's avatar
      Included mjsunit JavaScript test suite and C++ unit tests. · c42f5829
      christian.plesner.hansen authored
      In the shell sample don't print the result of executing a script, only
      evaluating expressions.
      
      Fixed issue when building samples on Windows using a shared V8
      library.  Added visibility option on Linux build which makes the
      generated library 18% smaller.
      
      Changed build system to accept multiple build modes in one build and
      generate seperate objects, libraries and executables for each mode.
      
      Removed deferred negation optimization (a * -b => -(a * b)) since this
      visibly changes operand conversion order.
      
      Improved parsing performance by introducing stack guard in preparsing.
      Without a stack guard preparsing always bails out with stack overflow.
      
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@16 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      c42f5829
  26. 30 Jul, 2008 1 commit
    • kasper.lund's avatar
      Changed all text files to have native svn:eol-style. · 7276f14c
      kasper.lund authored
      Added a few samples and support for building them. The samples include a simple shell that can be used to benchmark and test V8.
      
      Changed V8::GetVersion to return the version as a string.
      
      Added source for lazily loaded scripts to snapshots and made serialization non-destructive.
      
      Improved ARM support by fixing the write barrier code to use aligned loads and stores and by removing premature locals optimization that relied on broken support for callee-saved registers (removed).
      
      Refactored the code for marking live objects during garbage collection and the code for allocating objects in paged spaces. Introduced an abstraction for the map word of a heap-allocated object and changed the memory allocator to allocate executable memory only for spaces that may contain code objects.
      
      Moved StringBuilder to utils.h and ScopedLock to platform.h, where they can be used by debugging and logging modules. Added thread-safe message queues for dealing with debugger events.
      
      Fixed the source code reported by toString for certain builtin empty functions and made sure that the prototype property of a function is enumerable.
      
      Improved performance of converting values to condition flags in generated code.
      
      Merged disassembler-{arch} files.
      
      
      git-svn-id: http://v8.googlecode.com/svn/trunk@8 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      7276f14c
  27. 03 Jul, 2008 1 commit