1. 22 Jun, 2011 1 commit
  2. 09 Jun, 2011 1 commit
  3. 06 Jun, 2011 1 commit
  4. 10 May, 2011 1 commit
  5. 06 May, 2011 1 commit
  6. 22 Feb, 2011 1 commit
  7. 04 Feb, 2011 1 commit
    • fschneider@chromium.org's avatar
      Remove instruction summaries. · 17da434b
      fschneider@chromium.org authored
      Instead of constructing a temporary container for all LOperands of each
      instruction, the register works directly on the LIR instructions that
       provide an abstract interface for input/output/temp operands.
      
      This saves allocation of zone memory and speeds up LIR construction,
      but makes iterating over all uses in the register allocator slightly
      more expensive because environment uses are stored in a linked list of
      environments. We can fix this by using a flat representation of LOperands.
      
      
      Review URL: http://codereview.chromium.org/6352006
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6638 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      17da434b
  8. 19 Jan, 2011 1 commit
  9. 17 Jan, 2011 1 commit
    • kmillikin@chromium.org's avatar
      Change the algorithm and generated code for parallel moves on IA32. · 437914da
      kmillikin@chromium.org authored
      Instead of spilling and then immediately restoring eax to resolve
      memory to memory moves, the gap move resolver now tracks registers
      that are known to be free and uses one if available.  If not it spills
      but restores lazily when the spilled value is needed or at the end of
      the algorithm.
      
      Instead of using esi for resolving cycles and assuming it is free to
      overwrite because it can be rematerialized, the gap move resolver now
      resolves cycles using swaps, possibly using a free register as above.
      
      The algorithm is also changed to be simpler: a recursive depth-first
      traversal of the move dependence graph.  It uses a list of moves to be
      performed (because it mutates the moves themselves), but does not use
      any auxiliary structure other than the control stack.  It does not
      build up a separate list of scheduled moves to be interpreted by the
      code generate, but emits code on the fly.
      
      Review URL: http://codereview.chromium.org/6263005
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6344 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      437914da
  10. 14 Jan, 2011 1 commit
  11. 11 Jan, 2011 2 commits
  12. 10 Jan, 2011 1 commit
  13. 07 Jan, 2011 1 commit
  14. 07 Dec, 2010 3 commits
  15. 20 Oct, 2010 1 commit
  16. 08 Jul, 2010 1 commit
  17. 08 Apr, 2010 2 commits
  18. 04 Feb, 2010 1 commit
  19. 27 May, 2009 1 commit
  20. 31 Mar, 2009 3 commits
  21. 27 Mar, 2009 1 commit
  22. 16 Jan, 2009 1 commit
  23. 14 Jan, 2009 1 commit
  24. 26 Sep, 2008 1 commit
  25. 09 Sep, 2008 1 commit
  26. 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
  27. 03 Jul, 2008 1 commit