Go to file
fschneider@chromium.org ee9d2d6cee Fast compiler support for regexp literals.
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
2009-10-22 09:29:03 +00:00
benchmarks Remove svn:executable flag from run.html and style.css and change the mime-type of style.css to text/css. 2009-07-15 10:37:10 +00:00
include Added infrastructure for optimizing new CanvasArray types in WebGL 2009-10-20 15:26:17 +00:00
samples Add a "read" extension to the shell programs. This global function 2009-04-17 21:04:34 +00:00
src Fast compiler support for regexp literals. 2009-10-22 09:29:03 +00:00
test Add "Version" command 2009-10-21 17:07:43 +00:00
tools Added first support for tracking locations of expressions in the 2009-10-15 16:42:22 +00:00
.gitignore X64: Fix bugs affecting Win64. 2009-10-13 10:56:13 +00:00
AUTHORS Land change by Jan de Mooij to change the toString behavior of 2009-09-17 11:11:01 +00:00
ChangeLog Preparing to push to trunk. Now working on 1.3.17. 2009-10-16 11:33:39 +00:00
LICENSE Get rid of duplicate LICENSE entry for the Valgrind 2009-09-27 09:33:11 +00:00
SConstruct X64: Fix bugs affecting Win64. 2009-10-13 10:56:13 +00:00