- 12 Jan, 2017 11 commits
-
-
mvstanton authored
Literal arrays and feedback vectors for a function can be garbage collected if we don't have a rooted closure for the function, which happens often. It's expensive to come back from this (recreating boilerplates and gathering feedback again), and the cost is disproportionate if the function was inlined into optimized code. To guard against losing these arrays when we need them, we'll now create literal arrays when creating the feedback vector for the outer closure, and root them strongly in that vector. BUG=v8:5456 Review-Url: https://codereview.chromium.org/2620753003 Cr-Commit-Position: refs/heads/master@{#42258}
-
hablich authored
Revert of Pull define for version out into v8-version.h and separate build target (patchset #1 id:1 of https://codereview.chromium.org/2621983002/ ) Reason for revert: Blocks roll: https://codereview.chromium.org/2633463002/ Original issue's description: > Pull define for version out into v8-version.h and separate build target > > This is part of removing the dependency of the Chromium browser DLL on > Windows on V8. > > R=jochen@chromium.org > BUG=chromium:581766 > > Review-Url: https://codereview.chromium.org/2621983002 > Cr-Commit-Position: refs/heads/master@{#42243} > Committed: https://chromium.googlesource.com/v8/v8/+/45938454177f53fa24cfc08ad97ccbc162c3ba6d TBR=jochen@chromium.org,machenbach@chromium.org,scottmg@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:581766 Review-Url: https://codereview.chromium.org/2627713008 Cr-Commit-Position: refs/heads/master@{#42257}
-
alph authored
BUG=5820 LOG=N Review-Url: https://codereview.chromium.org/2628463002 Cr-Commit-Position: refs/heads/master@{#42256}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/91344e6..497761f Rolling v8/buildtools: https://chromium.googlesource.com/chromium/buildtools/+log/0ef8010..7e08d33 Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/8b10e78..d71b471 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/b644731..c30c6ff TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Review-Url: https://codereview.chromium.org/2627933004 Cr-Commit-Position: refs/heads/master@{#42255}
-
bradnelson authored
Revert of [wasm][asm.js] Disable success messages for asm.js (patchset #2 id:20001 of https://codereview.chromium.org/2628703003/ ) Reason for revert: Trigger flaky test. Original issue's description: > [wasm][asm.js] Disable success messages for asm.js > > These interfere with layout tests. > > BUG=v8:4203 > R=titzer@chromium.org,jochen@chromium.org > > Review-Url: https://codereview.chromium.org/2628703003 > Cr-Commit-Position: refs/heads/master@{#42241} > Committed: https://chromium.googlesource.com/v8/v8/+/9e60e7ac365d45f3211314f1ecff395f418de770 TBR=jochen@chromium.org,titzer@chromium.org,bradnelson@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4203 Review-Url: https://codereview.chromium.org/2629033003 Cr-Commit-Position: refs/heads/master@{#42254}
-
bradnelson authored
Revert of [wasm][asm.js] Enable --validate-asm by default. (patchset #2 id:20001 of https://codereview.chromium.org/2624813002/ ) Reason for revert: Triggers flaky tests. Original issue's description: > [wasm][asm.js] Enable --validate-asm by default. > > This directs all asm.js traffic via the Wasm backend. > > R=titzer@chromium.org,aseemgarg@chromium.org > BUG=v8:4203 > > Review-Url: https://codereview.chromium.org/2624813002 > Cr-Original-Commit-Position: refs/heads/master@{#42194} > Committed: https://chromium.googlesource.com/v8/v8/+/946cc371ed4b34d1a9f5cc615b14c41b652562ad > Review-Url: https://codereview.chromium.org/2624813002 > Cr-Commit-Position: refs/heads/master@{#42244} > Committed: https://chromium.googlesource.com/v8/v8/+/3169fb94c98953f002908974a606b51a35178046 TBR=aseemgarg@chromium.org,titzer@chromium.org,bradnelson@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4203 Review-Url: https://codereview.chromium.org/2627893003 Cr-Commit-Position: refs/heads/master@{#42253}
-
bradnelson authored
Revert of [wasm][asm.js] Do same work even when not printing asm info. (patchset #1 id:1 of https://codereview.chromium.org/2629043002/ ) Reason for revert: Triggers flaky tests. Original issue's description: > [wasm][asm.js] Do same work even when not printing asm info. > > Skipping this work seems to perturb a gc-stress issue. > More investigation is likely needed. > > BUG=v8:4203 > R=danno@chromium.org > > Review-Url: https://codereview.chromium.org/2629043002 > Cr-Commit-Position: refs/heads/master@{#42248} > Committed: https://chromium.googlesource.com/v8/v8/+/785cedf1ee6671399c2b2b7f6c6a8119f55195b4 TBR=danno@chromium.org,bradnelson@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4203 Review-Url: https://codereview.chromium.org/2623383002 Cr-Commit-Position: refs/heads/master@{#42252}
-
bradnelson authored
Reland of [wasm][asm.js] Do same work even when not printing asm info. (patchset #1 id:1 of https://codereview.chromium.org/2627223002/ ) Reason for revert: Triggers flaky tests. Original issue's description: > Revert of [wasm][asm.js] Do same work even when not printing asm info. (patchset #1 id:1 of https://codereview.chromium.org/2629043002/ ) > > Reason for revert: > Triggers flaky tests. > > Original issue's description: > > [wasm][asm.js] Do same work even when not printing asm info. > > > > Skipping this work seems to perturb a gc-stress issue. > > More investigation is likely needed. > > > > BUG=v8:4203 > > R=danno@chromium.org > > > > Review-Url: https://codereview.chromium.org/2629043002 > > Cr-Commit-Position: refs/heads/master@{#42248} > > Committed: https://chromium.googlesource.com/v8/v8/+/785cedf1ee6671399c2b2b7f6c6a8119f55195b4 > > TBR=danno@chromium.org,bradnelson@chromium.org > # Skipping CQ checks because original CL landed less than 1 days ago. > NOPRESUBMIT=true > NOTREECHECKS=true > NOTRY=true > BUG=v8:4203 > > Review-Url: https://codereview.chromium.org/2627223002 > Cr-Commit-Position: refs/heads/master@{#42250} > Committed: https://chromium.googlesource.com/v8/v8/+/636df54873c966eceed4264cabc2360b76221e26 TBR=danno@chromium.org,bradnelson@google.com # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4203 Review-Url: https://codereview.chromium.org/2626953003 Cr-Commit-Position: refs/heads/master@{#42251}
-
bradnelson authored
Revert of [wasm][asm.js] Do same work even when not printing asm info. (patchset #1 id:1 of https://codereview.chromium.org/2629043002/ ) Reason for revert: Triggers flaky tests. Original issue's description: > [wasm][asm.js] Do same work even when not printing asm info. > > Skipping this work seems to perturb a gc-stress issue. > More investigation is likely needed. > > BUG=v8:4203 > R=danno@chromium.org > > Review-Url: https://codereview.chromium.org/2629043002 > Cr-Commit-Position: refs/heads/master@{#42248} > Committed: https://chromium.googlesource.com/v8/v8/+/785cedf1ee6671399c2b2b7f6c6a8119f55195b4 TBR=danno@chromium.org,bradnelson@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:4203 Review-Url: https://codereview.chromium.org/2627223002 Cr-Commit-Position: refs/heads/master@{#42250}
-
littledan authored
This patch changes the test262 infrastructure to pass individual flags, specified in the status file, for tests for experimental features, rather than passing --harmony for all runs. With this change, it should be easier to run test262 tests in automation when developing new features. The new workflow would be, when adding a flag, include the flag in the test expectations file, and when removing the flag, remove the lines from the test expectations file. This way, the status file does not have to change when staging or unstaging, and you get the benefit of the automated tests before staging starts. R=adamk CQ_INCLUDE_TRYBOTS=master.tryserver.v8:v8_linux_noi18n_rel_ng Review-Url: https://codereview.chromium.org/2601393002 Cr-Commit-Position: refs/heads/master@{#42249}
-
bradnelson authored
Skipping this work seems to perturb a gc-stress issue. More investigation is likely needed. BUG=v8:4203 R=danno@chromium.org Review-Url: https://codereview.chromium.org/2629043002 Cr-Commit-Position: refs/heads/master@{#42248}
-
- 11 Jan, 2017 29 commits
-
-
adamk authored
Revert of [crankshaft] Also inline Math.ceil. (patchset #1 id:1 of https://codereview.chromium.org/2621903002/ ) Reason for revert: Suspected of causing crashes on Canary: https://crbug.com/680108 Original issue's description: > [crankshaft] Also inline Math.ceil. > > Inline calls to Math.ceil(x) as -Math.floor(-x) via the existing fast > path in Crankshaft. > > R=ishell@chromium.org > BUG=v8:5782 > > Review-Url: https://codereview.chromium.org/2621903002 > Cr-Commit-Position: refs/heads/master@{#42161} > Committed: https://chromium.googlesource.com/v8/v8/+/a3859e48c3c5c1c4f8a0c76b65a389b6063eba89 TBR=ishell@chromium.org,bmeurer@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. BUG=v8:5782, chromium:680108 Review-Url: https://codereview.chromium.org/2629493002 Cr-Commit-Position: refs/heads/master@{#42247}
-
jshin authored
Move the language code checking for 4 languages requiring special case mapping to C++ from JavaScript. This is a speculative fix for crashes reported from Windows and Mac Chrome canary builds when icu-case-mapping is enabled by default. (see crbug.com/676643) In addition, tighten up comparision operators in a couple of places in i18n.js (=== and !== instead of == and !=). BUG=v8:4477, v8:4476, chromium:676643 TEST=test262/{built-ins,intl402}/Strings/*, webkit/fast/js/*, mjsunit/string-case, intl/general/case* Review-Url: https://codereview.chromium.org/2621393002 Cr-Commit-Position: refs/heads/master@{#42246}
-
petermarshall authored
Review-Url: https://codereview.chromium.org/2623023003 Cr-Commit-Position: refs/heads/master@{#42245}
-
bradnelson authored
This directs all asm.js traffic via the Wasm backend. R=titzer@chromium.org,aseemgarg@chromium.org BUG=v8:4203 Review-Url: https://codereview.chromium.org/2624813002 Cr-Original-Commit-Position: refs/heads/master@{#42194} Committed: https://chromium.googlesource.com/v8/v8/+/946cc371ed4b34d1a9f5cc615b14c41b652562ad Review-Url: https://codereview.chromium.org/2624813002 Cr-Commit-Position: refs/heads/master@{#42244}
-
scottmg authored
This is part of removing the dependency of the Chromium browser DLL on Windows on V8. R=jochen@chromium.org BUG=chromium:581766 Review-Url: https://codereview.chromium.org/2621983002 Cr-Commit-Position: refs/heads/master@{#42243}
-
clemensh authored
Also, add a runtime function to call the interpreter, passing a stack-allocated buffer holding the arguments. The WASM_INTERPRETER_ENTRY stub allocates the stack slot for the arguments, fills it, and calls to the wasm interpreter. It's abi is compatible with WASM functions, such that we can just replace a call to a WASM_FUNCTION with a call to WASM_INTERPRETER_ENTRY. See tracking bug to get the overall picture. BUG=v8:5822 R=titzer@chromium.org Review-Url: https://codereview.chromium.org/2619803004 Cr-Commit-Position: refs/heads/master@{#42242}
-
bradnelson authored
These interfere with layout tests. BUG=v8:4203 R=titzer@chromium.org,jochen@chromium.org Review-Url: https://codereview.chromium.org/2628703003 Cr-Commit-Position: refs/heads/master@{#42241}
-
ahaas authored
R=titzer@chromium.org BUG=chromium:679352 TEST=cctest/test-run-wasm-interpreter/GrowMemory Review-Url: https://codereview.chromium.org/2627943002 Cr-Commit-Position: refs/heads/master@{#42240}
-
clemensh authored
This will be used to pass parameters of wasm functions to the wasm interpreter. All of them need to be packed into one buffer, which is then passed to the interpreter. R=ahaas@chromium.org, titzer@chromium.org BUG=v8:5822 Review-Url: https://codereview.chromium.org/2624183002 Cr-Commit-Position: refs/heads/master@{#42239}
-
ahaas authored
According to the latest spec changes the WasmToJS wrapper and the JSToWasm wrapper through a TypeError if the signature of the wrapper contains a I64 parameter or return value. Originally the TypeError was thrown when the parameter or return value was converted to or from JS. In addition I removed all special handling of I64 parameters and return values in the wrappers which was already dead code. R=titzer@chromium.org Review-Url: https://codereview.chromium.org/2626853003 Cr-Commit-Position: refs/heads/master@{#42238}
-
ahaas authored
Original commit message: [wasm] Introduce the TrapIf and TrapUnless operators to generate trap code. Some instructions in WebAssembly trap for some inputs, which means that the execution is terminated and (at least at the moment) a JavaScript exception is thrown. Examples for traps are out-of-bounds memory accesses, or integer divisions by zero. Without the TrapIf and TrapUnless operators trap check in WebAssembly introduces 5 TurboFan nodes (branch, if_true, if_false, trap-reason constant, trap-position constant), in addition to the trap condition itself. Additionally, each WebAssembly function has four TurboFan nodes (merge, effect_phi, 2 phis) whose number of inputs is linear to the number of trap checks in the function. Especially for functions with high numbers of trap checks we observe a significant slowdown in compilation time, down to 0.22 MiB/s in the sqlite benchmark instead of the average of 3 MiB/s in other benchmarks. By introducing a TrapIf common operator only a single node is necessary per trap check, in addition to the trap condition. Also the nodes which are shared between trap checks (merge, effect_phi, 2 phis) would disappear. First measurements suggest a speedup of 30-50% on average. This CL only implements TrapIf and TrapUnless on x64. The implementation is also hidden behind the --wasm-trap-if flag. Please take a special look at how the source position is transfered from the instruction selector to the code generator, and at the context that is used for the runtime call. R=titzer@chromium.org, v8-mips-ports@googlegroups.com Review-Url: https://codereview.chromium.org/2627003002 Cr-Commit-Position: refs/heads/master@{#42237}
-
leszeks authored
Since type feedback is stored as Smis, we can avoid a few shift instructions per bytecode handler by performing type feedback updates on Smis directly, rather than converting between Smi and Word32. Review-Url: https://codereview.chromium.org/2624753002 Cr-Commit-Position: refs/heads/master@{#42236}
-
jkummerow authored
using newly introduced ThinStrings, which store a pointer to the actual, internalized string they represent. BUG=v8:4520 (Previously landed as #42168 / af51befe) (Previously landed as #42193 / 4c699e34) Review-Url: https://codereview.chromium.org/2549773002 Cr-Commit-Position: refs/heads/master@{#42235}
-
rdevlin.cronin authored
The Local<Value> in the MessageCallback typedef is named "error", but should be "data" - it's referred to as "data" everywhere else, and that seems to be the canonical name for a curried-in value. BUG=None Review-Url: https://codereview.chromium.org/2621163003 Cr-Commit-Position: refs/heads/master@{#42234}
-
titzer authored
R=rossberg@chromium.org BUG=v8:5814,chromium:575167 Review-Url: https://codereview.chromium.org/2623183002 Cr-Commit-Position: refs/heads/master@{#42233}
-
machenbach authored
BUG=chromium:680110 TBR=clemensh@chromium.org, titzer@chromium.org, ahaas@chromium.org NOTRY=true Review-Url: https://codereview.chromium.org/2626073002 Cr-Commit-Position: refs/heads/master@{#42232}
-
titzer authored
R=rossberg@chromium.org BUG=v8:5813,chromium:575167 Review-Url: https://codereview.chromium.org/2620203005 Cr-Commit-Position: refs/heads/master@{#42231}
-
ahaas authored
Original commit message: [wasm] Introduce the TrapIf and TrapUnless operators to generate trap code. Some instructions in WebAssembly trap for some inputs, which means that the execution is terminated and (at least at the moment) a JavaScript exception is thrown. Examples for traps are out-of-bounds memory accesses, or integer divisions by zero. Without the TrapIf and TrapUnless operators trap check in WebAssembly introduces 5 TurboFan nodes (branch, if_true, if_false, trap-reason constant, trap-position constant), in addition to the trap condition itself. Additionally, each WebAssembly function has four TurboFan nodes (merge, effect_phi, 2 phis) whose number of inputs is linear to the number of trap checks in the function. Especially for functions with high numbers of trap checks we observe a significant slowdown in compilation time, down to 0.22 MiB/s in the sqlite benchmark instead of the average of 3 MiB/s in other benchmarks. By introducing a TrapIf common operator only a single node is necessary per trap check, in addition to the trap condition. Also the nodes which are shared between trap checks (merge, effect_phi, 2 phis) would disappear. First measurements suggest a speedup of 30-50% on average. This CL only implements TrapIf and TrapUnless on x64. The implementation is also hidden behind the --wasm-trap-if flag. Please take a special look at how the source position is transfered from the instruction selector to the code generator, and at the context that is used for the runtime call. R=titzer@chromium.org, v8-mips-ports@googlegroups.com Review-Url: https://codereview.chromium.org/2628433004 Cr-Commit-Position: refs/heads/master@{#42230}
-
jarin authored
Review-Url: https://codereview.chromium.org/2626013002 Cr-Commit-Position: refs/heads/master@{#42229}
-
ulan authored
for debugging. This function is needed to pass increased heap limit from the main DevTools isolate to the worker isolates it spawns. BUG=chromium:675911 Review-Url: https://codereview.chromium.org/2624973003 Cr-Commit-Position: refs/heads/master@{#42228}
-
hpayer authored
BUG=chromium:676635 Review-Url: https://codereview.chromium.org/2628853002 Cr-Commit-Position: refs/heads/master@{#42227}
-
jgruber authored
BUG= Review-Url: https://codereview.chromium.org/2621303002 Cr-Commit-Position: refs/heads/master@{#42226}
-
ulan authored
This API will allow DevTools to intercept out-of-memory condition, increase the heap limit and schedule heap snapshot. BUG=chromium:675911 Review-Url: https://codereview.chromium.org/2621873003 Cr-Commit-Position: refs/heads/master@{#42225}
-
mstarzinger authored
This changes the BytecodeGraphBuilder interface to make the fact that graph construction is independent of a closure explicit. A valid graph can be constructed by providing only the pair of statically known values for SharedFunctionInfo and TypeFeedbackVector. This is in preparation of inlining based on the SharedFunctionInfo. R=jarin@chromium.org BUG=v8:2206 Review-Url: https://codereview.chromium.org/2626623002 Cr-Commit-Position: refs/heads/master@{#42224}
-
jarin authored
This is mainly to catch a crash that we see in Canary with escape analysis on. Review-Url: https://codereview.chromium.org/2625893003 Cr-Commit-Position: refs/heads/master@{#42223}
-
machenbach authored
Revert of [wasm] Enable WASM by default (--expose-wasm=true). (patchset #3 id:40001 of https://codereview.chromium.org/2623743003/ ) Reason for revert: layout test breakages: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/12574 revert first to unblock rolling. otherwise please rebaseline. Original issue's description: > [wasm] Enable WASM by default (--expose-wasm=true). > > BUG=chromium:575167 > R=rossberg@chromium.org,ahaas@chromium.org,clemensh@chromium.org,bradnelson@chromium.org > > Review-Url: https://codereview.chromium.org/2623743003 > Cr-Original-Commit-Position: refs/heads/master@{#42197} > Committed: https://chromium.googlesource.com/v8/v8/+/34b63f050b1a247bb64ddc91c967501ce04e011f > Review-Url: https://codereview.chromium.org/2623743003 > Cr-Commit-Position: refs/heads/master@{#42214} > Committed: https://chromium.googlesource.com/v8/v8/+/71f5650828ffd0162fcd67d9c6ef570a346a8a84 TBR=clemensh@chromium.org,ahaas@chromium.org,bradnelson@chromium.org,rossberg@chromium.org,bradnelson@google.com,titzer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=chromium:575167 Review-Url: https://codereview.chromium.org/2621323002 Cr-Commit-Position: refs/heads/master@{#42222}
-
rmcilroy authored
This CL modifies the ast-numbering phase to collect function literals which should be compiled eagerly. This is then used to eagerly compile the inner functions before compiling the outer function. This will be used to queue compilation jobs on the CompilerDispatcher in a later CL. This CL moves the compilation of eager inner functions out of the GetSharedFunctionInfo function and instead compiles them explicitly. This simplifies GetSharedFunctionInfo and also means there is no need to pass a LazyCompilationMode to the function, so this concept has been removed. BUG=v8:5203,v8:5215 Review-Url: https://codereview.chromium.org/2618553004 Cr-Commit-Position: refs/heads/master@{#42221}
-
yangguo authored
R=jgruber@chromium.org BUG=v8:5530 Review-Url: https://codereview.chromium.org/2589203002 Cr-Original-Commit-Position: refs/heads/master@{#41911} Committed: https://chromium.googlesource.com/v8/v8/+/381082168d37d4f2794360ae31dc078f2a350113 Review-Url: https://codereview.chromium.org/2589203002 Cr-Commit-Position: refs/heads/master@{#42220}
-
jkummerow authored
This has been broken since forever. BUG=v8:5669 Review-Url: https://codereview.chromium.org/2610343002 Cr-Commit-Position: refs/heads/master@{#42219}
-