Reviewers: Sven Panne,

Message:
svenpanne, ptal, {dcarney,ulan,dslomov,mstarzinger}, you might also want to have
a look.

Try jobs are in patch set 25.


Description:
Two-threaded parser

This is how it works:
- The background thread runs PreParser to find lazy functions. The main thread runs Parser, and uses the data produced by the background thread to skip over
  lazy functions.

- This can only work for external strings, since they're stored inside the V8
  heap. ExternalTwoByteStringUtf16CharacterStream and
ExternalOneByteStringUtf16CharacterStream keep a Handle<String> but they are safe to use in the background thread, since they don't access the Handle after
  the constructor.

- The "cached data" is still produced by Parser like before, and stored like
  before.

BUG=

Please review this at https://codereview.chromium.org/214883002/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files (+490, -23 lines):
  M src/flag-definitions.h
  M src/parser.cc
  A src/parser-thread.h
  A src/parser-thread.cc
  M src/preparse-data.h
  M src/preparser.h
  M src/preparser.cc
  M src/scanner-character-streams.h
  M src/scanner-character-streams.cc
  M test/cctest/test-parsing.cc
  M tools/gyp/v8.gyp
  M tools/parser-shell.cc


--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to