- 05 Mar, 2018 2 commits
-
-
Benedikt Meurer authored
This changes the JSArrayIterator to always have only a single instance type, instead of the zoo of instance types that we had before, and which became less useful with the specification update to when "next" is loaded from the iterator now. This greatly simplifies the baseline implementation of the array iterator, which now only looks at the iterated object during %ArrayIteratorPrototype%.next invocations. In TurboFan we introduce a new JSCreateArrayIterator operator, that holds the IterationKind and get's the iterated object as input. When optimizing %ArrayIteratorPrototype%.next in the JSCallReducer, we check whether the receiver is a JSCreateArrayIterator, and if so, we try to infer maps for the iterated object from there. If we find any, we speculatively assume that these won't have changed during iteration (as we did before with the previous approach), and generate fast code for both JSArray and JSTypedArray iteration. Drive-by-fix: Drop the fast_array_iteration protector, it's not necessary anymore since we have the deoptimization guard bit in the JSCallReducer now. This addresses the performance cliff noticed in webpack 4. The minimal repro on the tracking bug goes from console.timeEnd: mono, 124.773000 console.timeEnd: poly, 670.353000 to console.timeEnd: mono, 118.709000 console.timeEnd: poly, 141.393000 so that's a 4.7x improvement. Also make presubmit happy by adding the missing #undef's. Bug: v8:7510, v7:7514 Change-Id: I79a46bfa2cd0f0710e09365ef72519b1bbb667b5 Reviewed-on: https://chromium-review.googlesource.com/946098Reviewed-by:
Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#51725}
-
jgruber authored
This enables the v8_enable_embedded_builtins gn flag on non-ia32 builds and adds a new --stress-off-heap-code test mode to fyi bots. v8_enable_embedded_builtins=true changes accesses to constants and external references to go through the root list in builtins code. --stress-off-heap-code copies builtins code off-heap on isolate creation. A few drive-by-fixes: - ensure that we actually inspect the correct builtin during isolate-independence testing. - relax tests to decrease maintenance (now we only fail if a builtin should be isolate-independent but isn't). - switch to a different off-heap-trampoline register on arm due to conflicts with custom stub linkages. Cq-Include-Trybots: luci.v8.try:v8_linux64_fyi_rel_ng Bug: v8:6666 Change-Id: I09ad3c75cb4342f4c548ea780f275993730896c8 Reviewed-on: https://chromium-review.googlesource.com/934281 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Michael Hablich <hablich@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51717}
-
- 02 Mar, 2018 6 commits
-
-
Georg Neis authored
... and use it in the implementation of array literal spreads, replacing calls to %AppendElement. Array spreads in destructuring will be taken care of in a separate CL. Bug: v8:5940, v8:7446 Change-Id: Idec52398902a7fd3c1244852cf73246f142404f0 Reviewed-on: https://chromium-review.googlesource.com/915364 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by:
Igor Sheludko <ishell@chromium.org> Reviewed-by:
Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#51709}
-
Camillo Bruni authored
Bug: v8:7266 Change-Id: I2835ec79aaa2821aca288685a3f230a7f8029186 Reviewed-on: https://chromium-review.googlesource.com/941948 Commit-Queue: Camillo Bruni <cbruni@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#51696}
-
Camillo Bruni authored
- Add B/KiB/MiB units to histograms - Auto select fileReader to open dialog when pressing enter Bug: v8:7266 Change-Id: I6fa56d2fa112f6ddbd541304cd26a1f6bd9322ce No-Try: true Reviewed-on: https://chromium-review.googlesource.com/946128Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#51693}
-
Camillo Bruni authored
- Categorize more instance types - Fix GC selection dropdown labels - Show GC times in seconds - Collapse file reader after loading Bug: v8:7266 Change-Id: If967ebdb887105e808cfc8fb3bc92f9da5c91fd2 No-Try: true Reviewed-on: https://chromium-review.googlesource.com/945908Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#51690}
-
Michael Starzinger authored
This makes sure that the object can be identified by a unique instance type and hence is not accidentally confused with other FixedArrays on the heap. R=clemensh@chromium.org BUG=v8:7509 Change-Id: Ib3dcdb4559821d0ad9ca8cced37754e0e3c1d578 Reviewed-on: https://chromium-review.googlesource.com/943781 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#51687}
-
Camillo Bruni authored
Bug: v8:7266 Change-Id: Ifd3feedb0338fff9f442d6bb44c0dab5c1ac9fc6 R: mlippautz@chromium.orgA No-Try: true Reviewed-on: https://chromium-review.googlesource.com/943110Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#51677}
-
- 01 Mar, 2018 3 commits
-
-
Michael Starzinger authored
This makes sure that the object can be identified by a unique instance type and hence is not accidentally confused with other FixedArrays on the heap. R=clemensh@chromium.org BUG=v8:7509 Change-Id: I66e3d779ff9a323b64f5464bdd5fe02aefe468c6 Reviewed-on: https://chromium-review.googlesource.com/943442 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#51665}
-
Igor Sheludko authored
This is a first step towards using Maps as store transition handlers. It is expected for this CL to noticeably regress memory consumption but most of it should be recovered by the next CL. Bug: v8:5988 Change-Id: Ic2e301f9ccebc36e699383ded8c8cd284a906ce1 Reviewed-on: https://chromium-review.googlesource.com/928646 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by:
Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#51663}
-
Ilija Pavlovic authored
Introducing a new status-file variable: mips_arch_variant. With this variable, in status files will be possible to define selections which are based on MIPS architecture revisions/variants. TEST= BUG= Change-Id: Ifd682552db2f26be4e56dc94ad50bed063ff14c5 Reviewed-on: https://chromium-review.googlesource.com/941212Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Ivica Bogosavljevic <ivica.bogosavljevic@mips.com> Cr-Commit-Position: refs/heads/master@{#51647}
-
- 27 Feb, 2018 1 commit
-
-
Camillo Bruni authored
Change-Id: I809b10935c92a129bd633c98759ba9d800aaa91c Reviewed-on: https://chromium-review.googlesource.com/934503Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#51587}
-
- 24 Feb, 2018 3 commits
-
-
Michael Achenbach authored
TBR=yangguo@chromium.org NOTRY=true Bug: chromium:813833 Change-Id: If9694bebc6576549feb00cbf035c4a5e92a70976 Reviewed-on: https://chromium-review.googlesource.com/936442Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51542}
-
Michael Achenbach authored
Fuzzers after switching to ToT mjsunit.js, which accesses Date.prototype, while for correctness fuzzing it's mocked out as a proxy. This makes the proxy return the property correctly. TBR=yangguo@chromium.org NOTRY=true Bug: chromium:813833 Change-Id: Ic4b6412063f42c4e75905fbd568b7f81bc54daff Reviewed-on: https://chromium-review.googlesource.com/936046 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51539}
-
Michael Achenbach authored
TBR=yangguo@chromium.org NOTRY=true Bug: chromium:813833 Change-Id: I8f687d27981a54234c37ba2e4b22060696f6dee7 Reviewed-on: https://chromium-review.googlesource.com/936006Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51538}
-
- 23 Feb, 2018 3 commits
-
-
Michael Achenbach authored
This adds printing on failures to compare output when correctness fuzzing. TBR=yangguo@chromium.org NOTRY=true Bug: chromium:813833 Change-Id: I0280561392f6614960608db4e93341552c716142 Reviewed-on: https://chromium-review.googlesource.com/934843 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51529}
-
Sigurd Schneider authored
A.p.includes can now replace monkey-patched A.p.contains. Bug: v8:7310, v8:7327 Change-Id: Ibbd6c5526322599c06f5485471cf6a6361b082b9 Reviewed-on: https://chromium-review.googlesource.com/934265 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by:
Daniel Clifford <danno@chromium.org> Cr-Commit-Position: refs/heads/master@{#51521}
-
Michael Achenbach authored
NOTRY=true TBR=gsathya@chromium.org Bug: chromium:800651 Change-Id: I9e978c430cbeef0fcf004d1cfbd1e64f15983155 Reviewed-on: https://chromium-review.googlesource.com/933294Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51490}
-
- 22 Feb, 2018 3 commits
-
-
Michael Achenbach authored
This migrates harness adjustments, to be loaded after mjsunit.js on fuzzers for correctness fuzzing. This is the first step adding deeper pretty printing. Other adjustments will be added in follow ups. Bug: chromium:813833 Change-Id: I51168a31e733d54808cb8853a1c90e897acf3791 Reviewed-on: https://chromium-review.googlesource.com/930565 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#51481}
-
Michael Achenbach authored
We'll soon also host other configurations for general fuzzing, not only correctness fuzzing in the new tools/clusterfuzz folder. TBR=yangguo@chromium.org Bug: chromium:813833 Change-Id: Icd966bfec91cc547522bad5d1a842500b554754f Reviewed-on: https://chromium-review.googlesource.com/930331Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51480}
-
Benedikt Meurer authored
This is preparatory cleanup work for eventually tracking the functions (rather than concrete closures) in the CALL_IC, also for builtins like the default PromiseCapability [[Resolve]] and [[Reject]] functions. It adds a new FeedbackCell type, which is used by JSFunctions consistently now to reference the feedback vector (or undefined if not the function is not compiled yet or is a native/asm.js function). This also changes the calling convention for FastNewClosure builtin and the JSCreateClosure operator in TurboFan to carry the FeedbackCell here instead of the parent FeedbackVector and the slot index. In addition we eliminate the now unused %InterpreterNewClosure runtime function. Bug: v8:2206, v8:7253, v8:7310 Change-Id: Ib4ce456e276e0273e57c163dcdd0b33abf863656 Reviewed-on: https://chromium-review.googlesource.com/928403 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by:
Michael Stanton <mvstanton@chromium.org> Reviewed-by:
Michael Starzinger <mstarzinger@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#51474}
-
- 21 Feb, 2018 3 commits
-
-
Mythri authored
We don't use parser caches anymore and request code caches explicitly using ScriptCompiler::CreateCodeCache. Hence removing the support for both parser cache and code cache options. They are still retained in CompileOptions for backwards compatibility. Apart from the api.cc, no other part should see this option. Bug: chromium:779254, chromium:783124 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: Ic8ad9afe3fa44bbb5adc71bdde59c0b4057a523d Reviewed-on: https://chromium-review.googlesource.com/916261 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Reviewed-by:
Yang Guo <yangguo@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#51416}
-
Sigurd Schneider authored
Bug: v8:7327 Change-Id: Id1dbe6ad2cbf790075e360c5d0b5422d2ca4271b Reviewed-on: https://chromium-review.googlesource.com/928221Reviewed-by:
Daniel Clifford <danno@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#51413}
-
Michael Achenbach authored
Before, configurations were chosen on clusterfuzz side. This migrates the choice to the V8 repo, to enable easier changing it and to allow sharing it between different fuzzers. NOTRY=true TBR=sergiyb@chromium.org Bug: chromium:813833 Change-Id: I9890a36fd6aab171d3e13172fc55b274f189e532 Reviewed-on: https://chromium-review.googlesource.com/927681Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51410}
-
- 20 Feb, 2018 1 commit
-
-
Michael Achenbach authored
This is a partial revert of: https://crrev.com/c/890938 and https://crrev.com/c/893982 Before this CL, the test runner blocked on ongoing tests in order to process their results after an internal timeout. However, the logic required for this feature was overly complicated and prevented an acceptable implementation for fast aborts. Furthermore, also the fuzzers suffered from timeouts on swarming due to hanging tests. Instead, we now abort immediately on internal timeout (used on fuzzers), SIGINT (Ctrl-C) and SIGTERM. Ongoing tests are immediately terminated and their results are disregarded. On SIGTERM and SIGINT, we return with non-zero exit codes, and zero on internal timeout. This will also properly return json output, when the external hard timeout is reached on swarming (causes SIGTERM). TBR=sergiyb@chromium.org Bug: v8:7423, chromium:813065 Change-Id: Ib20f835f58a0970693bdd3b21dc5d766d8e115d8 Reviewed-on: https://chromium-review.googlesource.com/924852Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51399}
-
- 19 Feb, 2018 2 commits
-
-
Jakob Kummerow authored
This is a reland of dda0419e. Originally reviewed-on: https://chromium-review.googlesource.com/914513 and landed as refs/heads/master@{#51342}. Bug: v8:6791 Change-Id: I3b3a069da7a0e64c38a81b3110dc5ece4887cb19 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/924665Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#51352}
-
Yang Guo authored
Use tools/node/update_node.py instead. TBR=machenbach@chromium.org Change-Id: Ib6f7b93e92b27e967627517a0afe2fedd533f6c4 Reviewed-on: https://chromium-review.googlesource.com/924153Reviewed-by:
Yang Guo <yangguo@chromium.org> Commit-Queue: Yang Guo <yangguo@chromium.org> Cr-Commit-Position: refs/heads/master@{#51351}
-
- 17 Feb, 2018 3 commits
-
-
Sergiy Byelozyorov authored
TBR=sergiyb@chromium.org No-Try: true Bug: chromium:616879 Change-Id: I5023040d3ce7753d39345033f91848e4f0ed36d9 Reviewed-on: https://chromium-review.googlesource.com/921101 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by:
Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#51345}
-
Michael Achenbach authored
This reverts commit dda0419e. Reason for revert: msvc unhappy: https://build.chromium.org/p/client.v8/builders/V8%20Win64%20-%20msvc/builds/1434 Original change's description: > [bigint] Add BigInt64Array, BigUint64Array > > Bug: v8:6791 > Tbr: hpayer@chromium.org > Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng > Change-Id: I637e9084d2fe4869ad0be2fb996149ab9940f346 > Reviewed-on: https://chromium-review.googlesource.com/914513 > Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Cr-Commit-Position: refs/heads/master@{#51342} TBR=jkummerow@chromium.org,neis@chromium.org,hpayer@chromium.org Change-Id: I49237fa323f0d3ea70e744d92d5cbdd4d5c4b39f No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:6791 Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Reviewed-on: https://chromium-review.googlesource.com/924663Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51344}
-
Jakob Kummerow authored
Bug: v8:6791 Tbr: hpayer@chromium.org Cq-Include-Trybots: master.tryserver.chromium.linux:linux_chromium_rel_ng Change-Id: I637e9084d2fe4869ad0be2fb996149ab9940f346 Reviewed-on: https://chromium-review.googlesource.com/914513 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#51342}
-
- 16 Feb, 2018 5 commits
-
-
Michael Achenbach authored
Depends on: https://crrev.com/c/924114 TBR=yangguo@chromium.org Bug: chromium:756691 Change-Id: Ibbc3bd35e8727296c1539edc961e3184830575ff Reviewed-on: https://chromium-review.googlesource.com/924609Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51341}
-
Michael Achenbach authored
NOTRY=true Bug: v8:7455 Change-Id: Icb82e8196bc16b4c8b0eebb3c5820e6b3d581735 Reviewed-on: https://chromium-review.googlesource.com/924309Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51336}
-
Sergiy Byelozyorov authored
TBR=sergiyb@chromium.org No-Try: true Bug: chromium:616879 Change-Id: Id0de15718308b3ed5d5c47be6959513b9a95dc34 Reviewed-on: https://chromium-review.googlesource.com/916762 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by:
Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#51331}
-
Camillo Bruni authored
Bug: v8:7310 Change-Id: I82e7ada4c0f7e415887a859719eb01bb45fd3012 Reviewed-on: https://chromium-review.googlesource.com/921742Reviewed-by:
Michael Lippautz <mlippautz@chromium.org> Reviewed-by:
Peter Marshall <petermarshall@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#51324}
-
Michael Achenbach authored
Change-Id: I9420be73a48db83b622e40f1c2b0dc4364a8d5d0 Reviewed-on: https://chromium-review.googlesource.com/923120Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51319}
-
- 15 Feb, 2018 5 commits
-
-
Michael Achenbach authored
TBR=easterbunny Change-Id: I22f05b717ecdf4e480d6edc09937f2a69544d9f9 Reviewed-on: https://chromium-review.googlesource.com/922901Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51316}
-
Michael Achenbach authored
Change-Id: Idb8fd2593f65a74f4f8fd71129f9780bfb08219a Reviewed-on: https://chromium-review.googlesource.com/920650Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51302}
-
Michael Achenbach authored
TBR=easterbunny Change-Id: Iac8be5eb68c99ad953960b4776181c4ba305d3b8 Reviewed-on: https://chromium-review.googlesource.com/920767Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51301}
-
Sergiy Byelozyorov authored
R=machenbach@chromium.org NOTRY=true Bug: chromium:616879 Change-Id: Ie732c5432cc0b69a28b4e356d9cead5855d00a7c Reviewed-on: https://chromium-review.googlesource.com/915361 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51300}
-
Michael Achenbach authored
TBR=easterbunny Change-Id: I9b2ada2fe81319c0344a8b5d416a82d5fa64af17 Reviewed-on: https://chromium-review.googlesource.com/919684Reviewed-by:
Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#51298}
-