Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(54)

Issue 212983011: Use the V8 one-pass compilation API in Blink. (Closed)

Created:
6 years, 9 months ago by marja
Modified:
6 years, 9 months ago
Reviewers:
haraken
CC:
blink-reviews, Nils Barth (inactive), kojih, arv+blink, jsbell+bindings_chromium.org, sof, kouhei+bindings_chromium.org, abarth-chromium, marja+watch_chromium.org, adamk+blink_chromium.org, haraken, Nate Chapin, Inactive
Visibility:
Public.

Description

Use the V8 one-pass compilation API in Blink. With this API, we can get rid of the precompilation phase. When the script is compiled the first time, the compilation will produce the lazy function data (the same data which the precompilation used to produce). This data is then cached and used when the script is compiled again. Note that the caching only happens inside one renderer, and the data is not stored on disk. Getting rid of the separate precompilation phase enables various improvements on the V8 side, for example, using multiple threads for parsing: one will run a fast parser to produce the lazy function data, another will run the real (slower) parser and use the lazy function data to skip over functions. Perf note: This doesn't regress morejs warm times. That means that the data is generated and used correctly. BUG= R=haraken@chromium.org Committed: https://src.chromium.org/viewvc/blink?view=rev&revision=170183

Patch Set 1 #

Patch Set 2 : . #

Total comments: 6

Patch Set 3 : code review (haraken) #

Unified diffs Side-by-side diffs Delta from patch set Stats (+43 lines, -36 lines) Patch
M Source/bindings/v8/ScriptController.cpp View 1 chunk +1 line, -6 lines 0 comments Download
M Source/bindings/v8/V8LazyEventListener.cpp View 1 chunk +1 line, -1 line 0 comments Download
M Source/bindings/v8/V8ScriptRunner.h View 1 chunk +4 lines, -3 lines 0 comments Download
M Source/bindings/v8/V8ScriptRunner.cpp View 1 2 3 chunks +37 lines, -26 lines 0 comments Download

Messages

Total messages: 11 (0 generated)
marja
jochen, ptal
6 years, 9 months ago (2014-03-27 12:45:30 UTC) #1
haraken
https://codereview.chromium.org/212983011/diff/10001/Source/bindings/v8/V8ScriptRunner.cpp File Source/bindings/v8/V8ScriptRunner.cpp (right): https://codereview.chromium.org/212983011/diff/10001/Source/bindings/v8/V8ScriptRunner.cpp#newcode77 Source/bindings/v8/V8ScriptRunner.cpp:77: v8::ScriptCompiler::Source source(code, origin, cachedData.release().leakPtr()); Just help me understand: Does ...
6 years, 9 months ago (2014-03-27 12:55:59 UTC) #2
marja
haraken: Thx for comments! Since you're already at it, could you review this instead of ...
6 years, 9 months ago (2014-03-27 13:07:28 UTC) #3
haraken
Thanks for the clarification. LGTM.
6 years, 9 months ago (2014-03-27 13:23:08 UTC) #4
marja
Thanks for review!
6 years, 9 months ago (2014-03-27 13:28:40 UTC) #5
marja
The CQ bit was checked by marja@chromium.org
6 years, 9 months ago (2014-03-27 13:28:43 UTC) #6
commit-bot: I haz the power
CQ is trying da patch. Follow status at https://chromium-status.appspot.com/cq/marja@chromium.org/212983011/30001
6 years, 9 months ago (2014-03-27 13:28:45 UTC) #7
commit-bot: I haz the power
The CQ bit was unchecked by commit-bot@chromium.org
6 years, 9 months ago (2014-03-27 14:36:51 UTC) #8
commit-bot: I haz the power
Try jobs failed on following builders: tryserver.blink on linux_blink_dbg
6 years, 9 months ago (2014-03-27 14:36:51 UTC) #9
marja
On 2014/03/27 14:36:51, I haz the power (commit-bot) wrote: > Try jobs failed on following ...
6 years, 9 months ago (2014-03-27 14:59:10 UTC) #10
marja
6 years, 9 months ago (2014-03-27 15:01:21 UTC) #11
Message was sent while issue was closed.
Committed patchset #3 manually as r170183 (presubmit successful).

Powered by Google App Engine
This is Rietveld 408576698