- 16 Dec, 2016 30 commits
-
-
gsathya authored
BUG=v8:5343 Review-Url: https://codereview.chromium.org/2583753002 Cr-Commit-Position: refs/heads/master@{#41770}
-
clemensh authored
E.g. https://build.chromium.org/p/client.v8/builders/V8%20Win64%20-%20debug/builds/14083/steps/Check/logs/RunWasmCompiledWithTr.. This also reverts CL http://crrev.com/2584833002 which disabled the tests on windows. R=ahaas@chromium.org, titzer@chromium.org Review-Url: https://codereview.chromium.org/2579213004 Cr-Commit-Position: refs/heads/master@{#41769}
-
mythria authored
Transform LdaNull/LdaUndefined followed by StrictEquality to TestNull/TestUndefined. This would avoid a call to the compare IC. In the bytecode-graph builder these are mapped to StrictEqual javascript operator. When reducing this operator, we already optimize the cases for null/undefined. BUG=v8:4280 Review-Url: https://codereview.chromium.org/2554723004 Cr-Commit-Position: refs/heads/master@{#41768}
-
jochen authored
BUG=v8:5215 R=rmcilroy@chromium.org,marja@chromium.org,vogelheim@chromium.org Review-Url: https://codereview.chromium.org/2573493002 Cr-Commit-Position: refs/heads/master@{#41767}
-
cbruni authored
This CL adds inlineable fast-cases for the above conversion functions in objects-inl.h and a slower conversion function in objects.cc. BUG= Review-Url: https://codereview.chromium.org/2579023002 Cr-Commit-Position: refs/heads/master@{#41766}
-
yangguo authored
R=jgruber@chromium.org, kozyatinskiy@chromium.org BUG=v8:5530 Review-Url: https://codereview.chromium.org/2568083002 Cr-Commit-Position: refs/heads/master@{#41765}
-
rossberg authored
- Implement new WebAssembly.LinkError exception - Implement stricter checks for glboal imports - Add tests - Refactor handling of import names - Add TODOs for empty import names R=titzer@chromium.org BUG= Review-Url: https://codereview.chromium.org/2584843002 Cr-Commit-Position: refs/heads/master@{#41764}
-
clemensh authored
It's failing nondeterministically. Disable trap-if tests on windows until this issue is fixed. R=ahaas@chromium.org, titzer@chromium.org Review-Url: https://codereview.chromium.org/2584833002 Cr-Commit-Position: refs/heads/master@{#41763}
-
marja authored
Especially, make non-declaration type inner functions eagerly parsed. Then we still have a chance to compile them eagerly if we see () after the function. BUG=v8:5501 Review-Url: https://codereview.chromium.org/2583843002 Cr-Commit-Position: refs/heads/master@{#41762}
-
yangguo authored
R=jochen@chromium.org, peria@chromium.org BUG=chromium:617892 Review-Url: https://codereview.chromium.org/2582623003 Cr-Commit-Position: refs/heads/master@{#41761}
-
cbruni authored
Many websites use simple calls to String.prototype.indexOf with either a one character ASCII needle or needles bigger than the search string. This CL adds a TFJ builtin for these simple cases, giving up to factor 5 speedup. Drive-by-fix: Add default Object type to Arguments.at BUG= Review-Url: https://codereview.chromium.org/2539093002 Cr-Commit-Position: refs/heads/master@{#41760}
-
ishell authored
[interpreter] Avoid allocation of temporary array of Nodes when generating dispatch to bytecode handler. BUG= Review-Url: https://codereview.chromium.org/2576213007 Cr-Commit-Position: refs/heads/master@{#41759}
-
vegorov authored
This allows to share source dumping infrastructure between CS and TF and opens a possibility for external tools like IRHydra to perform deoptimization to source mapping for TF generated code based on --trace-deopt --print-opt-code --code-comments output. This CL also restores an old TraceInlinedFunction behavior which was lost during source positions refactoring - originally TraceInlinedFunction dumped source code only once per-SFI to avoid large traces whenever some helper function is inlined multiple times. This CL also adds --print-opt-source flag that would in the future replace obsolete --hydrogen-track-positions. BUG= Review-Url: https://codereview.chromium.org/2575703003 Cr-Commit-Position: refs/heads/master@{#41758}
-
verwaest authored
BUG= Review-Url: https://codereview.chromium.org/2579983002 Cr-Commit-Position: refs/heads/master@{#41757}
-
yangguo authored
If a context snapshot includes the global proxy constructor function, we expect the incoming global proxy to have the correct instance size so that we can reinitialize it with said constructor. However, when the bootstrapper allocates a new global proxy, we need to know the expected size. We solve this by storing the size on the to-be-serialized isolate. R=jochen@chromium.org, peria@chromium.org BUG=chromium:617892 Review-Url: https://codereview.chromium.org/2585693002 Cr-Commit-Position: refs/heads/master@{#41756}
-
ishell authored
.. by using variadic templates in CodeAssembler. BUG= Review-Url: https://codereview.chromium.org/2584743003 Cr-Commit-Position: refs/heads/master@{#41755}
-
jochen authored
BUG=v8:5394 R=mstarzinger@chromium.org,rmcilroy@chromium.org Review-Url: https://codereview.chromium.org/2579973002 Cr-Commit-Position: refs/heads/master@{#41754}
-
ishell authored
... by using variadic templates in CodeAssembler. BUG= Review-Url: https://codereview.chromium.org/2579163003 Cr-Commit-Position: refs/heads/master@{#41753}
-
mstarzinger authored
This introduces an explicit struct for the communication channel between the {ArrayLiteral} AST node and the corresponding runtime methods. Those methods take a pair of {ElementsKind} as well as an array (can either be a FixedArray or a FixedDoubleArray) of constant values. For bonus points it also reduces the size of the involved heap object by one word (i.e. length field of FixedArray not needed anymore). R=mvstanton@chromium.org Review-Url: https://codereview.chromium.org/2581683003 Cr-Commit-Position: refs/heads/master@{#41752}
-
rmcilroy authored
When mark-shared-funtion-for-tier-up is enabled, a function could be marked for optimization, then the baseline (FCG) code is flushed by the GC. The next time the function is executed, we shouldn't optimize the code if there isn't baseline code. BUG=chromium:673242 Review-Url: https://codereview.chromium.org/2575333003 Cr-Commit-Position: refs/heads/master@{#41751}
-
ishell authored
... as they are no longer needed. BUG= Review-Url: https://codereview.chromium.org/2582593005 Cr-Commit-Position: refs/heads/master@{#41750}
-
ishell authored
.. by using variadic templates in CodeAssembler. BUG= Review-Url: https://codereview.chromium.org/2577913003 Cr-Commit-Position: refs/heads/master@{#41749}
-
jarin authored
Revert of [turbofan] Remove value numbering from late optimization pass. (patchset #1 id:1 of https://codereview.chromium.org/2570813002/ ) Reason for revert: Tanks Kraken astar benchmark. Original issue's description: > [turbofan] Remove value numbering from late optimization pass. > > Committed: https://crrev.com/e32535af5a5f4776a58ef434ea77d56528ded427 > Cr-Commit-Position: refs/heads/master@{#41672} TBR=bmeurer@chromium.org # Not skipping CQ checks because original CL landed more than 1 days ago. Review-Url: https://codereview.chromium.org/2579273002 Cr-Commit-Position: refs/heads/master@{#41748}
-
clemensh authored
The WasmRunner now always holds a TestingModule, and allows to add several functions to it. The prepares a change to always run wasm code with a full module behind it, removing the special handling for "no wasm instance" at runtime (http://crrev.com/2551053002). This CL here also templatizes the WasmRunner such that the Call method must be called with the same signature specified for the WasmRunner. This already catched several mismatches there. R=titzer@chromium.org, ahaas@chromium.org BUG=v8:5620 Review-Url: https://codereview.chromium.org/2551043002 Cr-Original-Commit-Position: refs/heads/master@{#41728} Committed: https://chromium.googlesource.com/v8/v8/+/2ff59062314e9b86bcc28dfaa53cedf2d98e3a13 Review-Url: https://codereview.chromium.org/2551043002 Cr-Commit-Position: refs/heads/master@{#41747}
-
ishell authored
.. by using variadic templates in CodeAssembler. BUG= Review-Url: https://codereview.chromium.org/2577013003 Cr-Commit-Position: refs/heads/master@{#41746}
-
neis authored
TC39 decided at their last meeting to remove this feature. R=adamk@chromium.org TBR=ulan@chromium.org BUG=v8:1569 Review-Url: https://codereview.chromium.org/2578053003 Cr-Commit-Position: refs/heads/master@{#41745}
-
machenbach authored
Revert of Disallow passing a SharedArrayBuffer in the transfer list. (patchset #4 id:60001 of https://codereview.chromium.org/2570433005/ ) Reason for revert: Breaks layout tests: https://build.chromium.org/p/client.v8.fyi/builders/V8-Blink%20Linux%2064/builds/12098 See: https://github.com/v8/v8/wiki/Blink-layout-tests Original issue's description: > Disallow passing a SharedArrayBuffer in the transfer list. > > This behavior changed recently. SharedArrayBuffers should not be put in the > transfer list, because they are not detached, and that is the meaning of being > in the transfer list. > > This is the V8 side of the change, the Blink side will come next. > > Review-Url: https://codereview.chromium.org/2570433005 > Cr-Commit-Position: refs/heads/master@{#41740} > Committed: https://chromium.googlesource.com/v8/v8/+/1c5e1504e0305363cd262f1706cbd63f9a62ae46 TBR=jbroman@chromium.org,jkummerow@chromium.org,binji@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true Review-Url: https://codereview.chromium.org/2579963002 Cr-Commit-Position: refs/heads/master@{#41744}
-
mtrofin authored
BUG=643595 Review-Url: https://codereview.chromium.org/2582583002 Cr-Original-Commit-Position: refs/heads/master@{#41738} Committed: https://chromium.googlesource.com/v8/v8/+/cb433bed0b940a7073b5215e6684b940eec54edd Review-Url: https://codereview.chromium.org/2582583002 Cr-Commit-Position: refs/heads/master@{#41743}
-
v8-autoroll authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/d4ca00b..3983535 Rolling v8/third_party/catapult: https://chromium.googlesource.com/external/github.com/catapult-project/catapult/+log/ab73453..eb5390d TBR=machenbach@chromium.org,vogelheim@chromium.org,hablich@chromium.org Review-Url: https://codereview.chromium.org/2578413002 Cr-Commit-Position: refs/heads/master@{#41742}
-
jyan authored
Add vfa/vfs/vfm/vfd support on s390 R=joransiu@ca.ibm.com, bjaideep@ca.ibm.com, danno@chromium.org, jkummerow@chromium.org, jochen@chromium.org BUG= Review-Url: https://codereview.chromium.org/2582683002 Cr-Commit-Position: refs/heads/master@{#41741}
-
- 15 Dec, 2016 10 commits
-
-
binji authored
This behavior changed recently. SharedArrayBuffers should not be put in the transfer list, because they are not detached, and that is the meaning of being in the transfer list. This is the V8 side of the change, the Blink side will come next. Review-Url: https://codereview.chromium.org/2570433005 Cr-Commit-Position: refs/heads/master@{#41740}
-
mtrofin authored
Revert of [wasm] simpler detection if we compiled asm-wasm (patchset #1 id:1 of https://codereview.chromium.org/2582583002/ ) Reason for revert: https://build.chromium.org/p/client.v8/builders/V8%20Mac%20GC%20Stress/builds/10384 Original issue's description: > [wasm] simpler detection if we compiled asm-wasm > > BUG=643595 > > Review-Url: https://codereview.chromium.org/2582583002 > Cr-Commit-Position: refs/heads/master@{#41738} > Committed: https://chromium.googlesource.com/v8/v8/+/cb433bed0b940a7073b5215e6684b940eec54edd TBR=yangguo@chromium.org,bradnelson@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=643595 Review-Url: https://codereview.chromium.org/2582623002 Cr-Commit-Position: refs/heads/master@{#41739}
-
mtrofin authored
BUG=643595 Review-Url: https://codereview.chromium.org/2582583002 Cr-Commit-Position: refs/heads/master@{#41738}
-
bbudge authored
- Adds NEON instructions to assembler, disassembler, simulator. - Adds ExtractLane, ReplaceLane functions to macro assembler. LOG=N BUG=v8:4124 Review-Url: https://codereview.chromium.org/2546933002 Cr-Commit-Position: refs/heads/master@{#41737}
-
alph authored
This should speed up trace generation for cpu profile as it eliminates creation of temporary std::string objects. Review-Url: https://codereview.chromium.org/2555043003 Cr-Commit-Position: refs/heads/master@{#41736}
-
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 Review-Url: https://codereview.chromium.org/2571813002 Cr-Commit-Position: refs/heads/master@{#41735}
-
jochen authored
Original CL description: > Store SharedFunctionInfos of a Script in a FixedArray indexed by their ID > > Now that SharedFunctionInfos have a unique ID (and the IDs are dense), > we can use them as an index into an array, instead of using a > WeakFixedArray where we have to do a linear scan. > > Hooking up liveedit is a bit more involved, see > https://docs.google.com/presentation/d/1FtNa3U7WsF5bPhY9uGoJG5Y9hnz5VBDabfOWpb4unWI/edit > for an overview > > BUG=v8:5589 > R=verwaest@chromium.org,jgruber@chromium.org > > Review-Url: https://codereview.chromium.org/2547483002 BUG=v8:5589 TBR=verwaest@chromium.org,jgruber@chromium.org Review-Url: https://codereview.chromium.org/2577063002 Cr-Commit-Position: refs/heads/master@{#41734}
-
ishell authored
.. by using variadic templates in CodeAssembler and RawMachineAssembler. BUG= Review-Url: https://codereview.chromium.org/2580823002 Cr-Commit-Position: refs/heads/master@{#41733}
-
clemensh authored
Revert of [wasm] Make WasmRunner the central test structure (patchset #5 id:80001 of https://codereview.chromium.org/2551043002/ ) Reason for revert: Win64 dbg failures Original issue's description: > [wasm] Make WasmRunner the central test structure > > The WasmRunner now always holds a TestingModule, and allows to add > several functions to it. The prepares a change to always run wasm code > with a full module behind it, removing the special handling for "no wasm > instance" at runtime (http://crrev.com/2551053002). > This CL here also templatizes the WasmRunner such that the Call method must > be called with the same signature specified for the WasmRunner. This > already catched several mismatches there. > > R=titzer@chromium.org, ahaas@chromium.org > BUG=v8:5620 > > Review-Url: https://codereview.chromium.org/2551043002 > Cr-Commit-Position: refs/heads/master@{#41728} > Committed: https://chromium.googlesource.com/v8/v8/+/2ff59062314e9b86bcc28dfaa53cedf2d98e3a13 TBR=ahaas@chromium.org,titzer@chromium.org # Skipping CQ checks because original CL landed less than 1 days ago. NOPRESUBMIT=true NOTREECHECKS=true NOTRY=true BUG=v8:5620 Review-Url: https://codereview.chromium.org/2583543002 Cr-Commit-Position: refs/heads/master@{#41732}
-
neis authored
Instead of unconditionally setting maybe_assigned for parameters, treat parameters like other variables except that at the end we set maybe_assigned if the function has a sloppy arguments object. R=adamk@chromium.org, mstarzinger@chromium.org BUG=v8:5636 Review-Url: https://codereview.chromium.org/2578103002 Cr-Commit-Position: refs/heads/master@{#41731}
-