• marja@chromium.org's avatar
    Refactor Parser to make it usable on a background thread. · 7955937d
    marja@chromium.org authored
    - Background Parsers cannot get the following data from Isolate (pass it to the
    ctor instead): stack limit (background Parsers need a different stack limit),
    UnicodeCache (background parsers need a separate UnicodeCache), hash seed
    (Parser cannot access the Heap to get it). The Parser::Parse API won't change.
    
    - Make the internalization phase (where Parser interacts with the heap) more
    explicit. Previously, Parser was interacting with the heap here and there.
    
    - Move HandleSourceURLComments out of DoParseProgram, so that background parsing
    can use DoParseProgram too.
    
    BUG=
    R=rossberg@chromium.org
    
    Review URL: https://codereview.chromium.org/527763002
    
    git-svn-id: https://v8.googlecode.com/svn/branches/bleeding_edge@23600 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
    7955937d
parser.cc 162 KB