1. 21 Jul, 2010 2 commits
  2. 01 Jul, 2010 1 commit
  3. 24 Jun, 2010 1 commit
  4. 16 Jun, 2010 1 commit
  5. 26 May, 2010 1 commit
    • vitalyr@chromium.org's avatar
      Custom call IC-s for String.prototype.{charAt,charCodeAt}. · ad0e3890
      vitalyr@chromium.org authored
      These string methods can be composed from two basic blocks: charCodeAt
      and fromCharCode, both of which have fast cases for certain types of
      inputs. In this patch these two blocks are refactored to allow
      generating the fast cases without having to jump around the slow
      cases. In the slow cases since they can now be invoked both from
      inline runtime functions and from IC stubs we either have to
      save/restore state of the current frame or enter/leave a new internal
      frame. This is handled by new RuntimeCallHelper interface. Its
      implementation for virtual frame is based on FrameRegisterState class
      extracted from DeferredCode class.
      
      Review URL: http://codereview.chromium.org/2087009
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4733 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      ad0e3890
  6. 20 May, 2010 1 commit
  7. 18 May, 2010 1 commit
  8. 10 May, 2010 1 commit
    • erik.corry@gmail.com's avatar
      First step towards making JumpTarget work on ARM. Instead · fa7c92ea
      erik.corry@gmail.com authored
      of having a list of virtual frame pointers in the jump
      target we have one virtual frame, which is the frame that
      all have to merge to to branch to that frame.  The virtual
      frame in the JumpTarget is inside the JumpTarget, rather than
      being an allocated object that is pointed to.  Unfortunately
      this means that the JumpTarget class has to be able to see
      the size of a VirtualFrame object to compile, which in turn
      lead to a major reorganization of related .h files.  The
      actual change of functionality in this change is intended
      to be minimal (we now assert that the virtual frames match
      when using JumpTarget instead of just assuming that they do).
      Review URL: http://codereview.chromium.org/1961004
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4631 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      fa7c92ea
  9. 30 Apr, 2010 1 commit
  10. 12 Apr, 2010 1 commit
  11. 25 Mar, 2010 2 commits
  12. 22 Mar, 2010 1 commit
  13. 11 Mar, 2010 1 commit
  14. 10 Mar, 2010 2 commits
  15. 05 Mar, 2010 1 commit
  16. 26 Feb, 2010 2 commits
  17. 15 Feb, 2010 1 commit
    • fschneider@chromium.org's avatar
      Introduce number type information in the virtual frame. · dbe99e40
      fschneider@chromium.org authored
      Each frame element gets a new attribute with number type information. A frame element can be: 
      
      - smi 
      - heap number 
      - number (i.e. either of the above) 
      - or something else. 
      
      The type information is propagated along with all virtual frame operations. 
      Results popped from the frame carry the number information with them.
      
      Two optimizations in the code generator make use of the new 
      information: 
      - GenericBinaryOpSyub omits map checks if input operands are numbers. 
      - Boolean conversion for numbers: Emit inline code for converting a number (smi or heap number) to boolean. Do not emit call to ToBoolean stub in this case.
      
      
      Review URL: http://codereview.chromium.org/545007
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3861 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      dbe99e40
  18. 12 Feb, 2010 1 commit
  19. 08 Feb, 2010 1 commit
  20. 18 Jan, 2010 1 commit
  21. 23 Dec, 2009 1 commit
  22. 08 Oct, 2009 1 commit
  23. 31 Aug, 2009 1 commit
  24. 25 Jun, 2009 1 commit
  25. 24 Jun, 2009 2 commits
  26. 22 Jun, 2009 1 commit
  27. 11 Jun, 2009 1 commit
  28. 05 Jun, 2009 1 commit
    • kmillikin@chromium.org's avatar
      Simplify the processing of deferred code in the code generator. Our · bd82b972
      kmillikin@chromium.org authored
      deferred code snippets are highly stylized.  They always make a call
      to a stub or the runtime and then return.  This change takes advantage
      of that.
      
      Creating a deferred code object now captures a snapshot of the
      registers in the virtual frame.  The registers are automatically saved
      on entry to the deferred code and restored on exit.
      
      The clients of deferred code must ensure that there is no change to
      the registers in the virtual frame (eg, by allocating which can cause
      spilling) or to the stack pointer.  That is currently the case.
      
      As a separate change, I will add either code to verify this constraint
      or else code to forbid any frame effect.
      
      The deferred code itself does not use the virtual frame or register
      allocator (or even the code generator).  It is raw macro assembler
      code.
      Review URL: http://codereview.chromium.org/118226
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2112 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      bd82b972
  29. 27 May, 2009 1 commit
  30. 25 May, 2009 1 commit
  31. 20 May, 2009 1 commit
  32. 19 May, 2009 1 commit
  33. 18 May, 2009 1 commit
  34. 15 May, 2009 1 commit
  35. 14 May, 2009 1 commit