1. 22 Oct, 2009 1 commit
    • fschneider@chromium.org's avatar
      Fast compiler support for regexp literals. · ee9d2d6c
      fschneider@chromium.org authored
      For .result = /abc.*/g we generate the following IA-32 code:
      
         ...
         mov ebx,[edi+0x17]
         mov eax,[ebx+0xb]
         cmp eax, 0xf5d0e135         ;; object: 0xf5d0e135 <undefined>
         jnz done
         push ebx
         push 0x2
         push 0xf5d13805             ;; object: 0xf5d13805 <String[5]: abc.*>
         push 0xf5d13815             ;; object: 0xf5d13815 <String[1]: g>
         call RuntimeStub_MaterializeRegExpLiteral
       done:
         push eax
         pop [ebp+0xf4]
         ...
      
      This is very similar to the code previously generated except we do not 
      generate deferred code for the case where we call the runtime.
      
      On ARM we use the stm instruction to make pushing the arguments more compact.
      
      Review URL: http://codereview.chromium.org/300037
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3109 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      ee9d2d6c
  2. 21 Oct, 2009 10 commits
  3. 20 Oct, 2009 8 commits
  4. 19 Oct, 2009 2 commits
  5. 16 Oct, 2009 7 commits
  6. 15 Oct, 2009 9 commits
  7. 14 Oct, 2009 3 commits