1. 03 Jan, 2011 1 commit
  2. 20 Dec, 2010 1 commit
  3. 17 Dec, 2010 1 commit
  4. 16 Dec, 2010 1 commit
  5. 09 Dec, 2010 1 commit
  6. 07 Dec, 2010 4 commits
  7. 10 Nov, 2010 1 commit
  8. 29 Oct, 2010 1 commit
  9. 19 Oct, 2010 1 commit
    • vitalyr@chromium.org's avatar
      Support profiling based on linux kernel performance events. · e6b33bd2
      vitalyr@chromium.org authored
      Since 2.6.31 perf_events interface has been available in the
      kernel. There's a nice tool called "perf" (linux-2.6/tools/perf) that
      uses this interface and provides capabilities similar to oprofile. The
      simplest form of its usage is just dumping the raw log (trace) of
      events generated by the kernel. In this patch I'm adding a script
      (tools/ll_prof.py) to build profiles based on perf trace and our code
      log. All the heavy-lifting is done by perf. Compared to oprofile agent
      this approach does not require recompilation and supports code moving
      garbage collections.
      
      Expected usage is documented in the ll_prof's help. Basically one
      should run V8 under perf passing --ll-prof flag and then the produced
      logs can be analyzed by tools/ll_prof.py.
      
      The new --ll-prof flag enables logging of generated code object
      locations and names (like --log-code), and also of their bodies, which
      can be later disassembled and annotated by the script.
      
      Review URL: http://codereview.chromium.org/3831002
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5663 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      e6b33bd2
  10. 30 Sep, 2010 1 commit
  11. 28 Sep, 2010 3 commits
  12. 15 Sep, 2010 1 commit
  13. 02 Sep, 2010 1 commit
  14. 13 Aug, 2010 1 commit
  15. 23 Jun, 2010 1 commit
  16. 17 Jun, 2010 1 commit
  17. 11 Jun, 2010 1 commit
  18. 08 Jun, 2010 1 commit
    • sgjesse@chromium.org's avatar
      More precise break points and stepping when debugging · 634fb915
      sgjesse@chromium.org authored
      Added support for more precise break points when debugging and stepping. To achieve that additional nop instructions are inserted where breaking would otherwise be impossible. The number of nop instructions inserted are sufficient to make place for patching with a call to a debug break code stub. On Intel that is 5 nop's for 32-bit and 13 for 64-bit. Om ARM 3 nop instructions (12 bytes) are required.
      
      In order to avoid inserting nop's in to many places a simple ast checker have been added to check whether there are breakable code in a statement or expression. If it is possible to break in an expression no additional break enabeling code is inserted.
      
      Added break locations to the true and false part of a conditional expression.
      
      Added stepping tests to cover more constructs.
      
      These changes are only in the full compiler.
      
      Changed the default value for the option --debugger in teh d8 shell from true to false. The reason for this is that with --debugger turned on the full compiler will be used for all code in when running d8, which can be unexpeceted.
      
      Review URL: http://codereview.chromium.org/2693002
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4820 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      634fb915
  19. 27 May, 2010 1 commit
  20. 26 May, 2010 1 commit
  21. 25 May, 2010 2 commits
    • sgjesse@chromium.org's avatar
      ARM: Update the full compiler to handle all code · 22e4847f
      sgjesse@chromium.org authored
      The full compiler is now complete on ARM as well. The syntax checker is still used to determine whether to use it for top level code or not during normal execution. When debugging is enabled all code will be compiled with the full compiler.
      
      This change removes the temporary flag --force-full-compiler and now the flag --always-full-compiler enables the full compiler for all code on all platforms.
      
      This also fixes building on Intel platform without debugger support (ENABLE_DEBUGGER_SUPPORT not defined) and adds full check for the full compiler for lazily compiled code.
      Review URL: http://codereview.chromium.org/2163006
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4716 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      22e4847f
    • vegorov@chromium.org's avatar
      Cardmarking writebarrier. · 675e711f
      vegorov@chromium.org authored
      - New сardmarking write barrier handles large objects and normal objects in a similar fashion (no more additional space for pointer tracking is required, no conditional branches in WB code).
      - Changes to enable oldspaces iteration without maps decoding:
      -- layout change for FixedArrays: length is stored as a smis (initial patch by
      Kevin Millikin)
      -- layout change for SharedFunctionInfo: integer fields are stored as smi on
      arm, ia32 and rearranged on x64.
      -- layout change for String: meaning of LSB bit is fliped (1 now means hash not
      computed); on x64 padding is added.
      -- layout of maps is _not_ changed. Map space is currently iterated in a special
      way.
      
      Review URL: http://codereview.chromium.org/2144006
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4715 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      675e711f
  22. 21 May, 2010 2 commits
  23. 20 May, 2010 4 commits
  24. 19 May, 2010 1 commit
  25. 18 May, 2010 1 commit
  26. 17 May, 2010 2 commits
  27. 28 Apr, 2010 1 commit
  28. 15 Apr, 2010 1 commit
    • sgjesse@chromium.org's avatar
      Ensure stack alignment in ARM port · 09aa20da
      sgjesse@chromium.org authored
      In the CEntryStub keep track of the actual skew from the correct alignment to ensure proper alignment before calling the runtime. Add checks to test the expected skew when running on hardware.
      
      Use the PrepareCallCFunction/CallCFunction in a few other places.
      
      Add check to the ARM simulator for correct alignment.
      
      Add option --sim-stack-alignment to set the stack alignment in the simulator. Currntly only values 4 and 8 makes sense. 8 is the default to make snapshots generated with the simulator work on hardware requiring 8 byte stack alignment.
      Review URL: http://codereview.chromium.org/1530043
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4425 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      09aa20da
  29. 12 Apr, 2010 1 commit