- 20 Aug, 2018 12 commits
-
-
Michael Starzinger authored
R=titzer@chromium.org Change-Id: If3d6843b7e7542799d8be5a9ecea9ad2f96a8c5a Reviewed-on: https://chromium-review.googlesource.com/1181021Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55213}
-
Andreas Haas authored
R=titzer@chromium.org Bug: chromium:875556 Change-Id: I989dbaaec1eac3b7d0c761f25efec043cdeb9d71 Reviewed-on: https://chromium-review.googlesource.com/1180964Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#55212}
-
Benedikt Meurer authored
The CheckedInt32Mod lowering in the EffectControlLinearizer wasn't playing well with subsequent optimizations in the MachineOperatorReducer especially due to the use of Int32Mod, which introduces another (floating) diamond in the MachineOperatorReducer. Switching to Uint32Mod and explicit sign handling fixes the problem, plus we also do the mask trick in the case where the left hand side is negative now. With this change the performance on the benchmark mentioned in the bug report goes from console.timeEnd: binary, 1872.346000 console.timeEnd: modulo, 5967.464000 console.timeEnd: binary, 6006.789000 console.timeEnd: modulo, 6293.496000 console.timeEnd: binary, 5969.264000 console.timeEnd: modulo, 6291.874000 to console.timeEnd: binary, 1876.464000 console.timeEnd: modulo, 5846.643000 console.timeEnd: binary, 5962.545000 console.timeEnd: modulo, 5972.639000 console.timeEnd: binary, 5958.221000 console.timeEnd: modulo, 5973.171000 so even the peak performance of the modulus is now mostly the same as the binary bitwise and. Bug: v8:8069 Change-Id: Iaf3828fc0f6c53352367e8bf6c42534f8b13bfb3 Reviewed-on: https://chromium-review.googlesource.com/1180971Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#55211}
-
Michael Starzinger authored
R=titzer@chromium.org BUG=v8:7424 Change-Id: Ic0b8088402a4f64d1a285298a16285bdca4a7167 Reviewed-on: https://chromium-review.googlesource.com/1180897Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55210}
-
Dan Elphick authored
Small clean up to create a BUILTIN_LIST_INTL to include in BUILTIN_LIST rather than having two definitions of BUILTIN_LIST depending on whether V8_INTL_SUPPORT is enabled. Change-Id: I05ce83fe478049398392c5204b22961d29eb3622 Reviewed-on: https://chromium-review.googlesource.com/1180967Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#55209}
-
Georg Neis authored
Since the number of properties is always 0, we can just directly use the Object function's initial map. Bug: v8:7790 Change-Id: I061bd522f5bce1c059cd82f5946d8bc572dbfb27 Reviewed-on: https://chromium-review.googlesource.com/1180887Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#55208}
-
jgruber authored
The RegExp replace implementation is a bit of a mess. Here, we first try to handle parts of RegExp.p.exec, and then call directly into the raw irregexp code (skipping RegExp.p.exec). We got parts of this wrong: when lastIndex > string.length and the regexp instance is sticky, two things should happen. 1. The match should fail, and 2. lastIndex should be reset to 0. On the fast path, we did the latter but not the former, instead running exec with a lastIndex of 0. This CL omits the irregexp call in this case, and defaults to a failed match instead. Bug: chromium:875493 Change-Id: I8c959610d267575e37686076a3fd5dfde322f0ca Reviewed-on: https://chromium-review.googlesource.com/1180889 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Mathias Bynens <mathias@chromium.org> Cr-Commit-Position: refs/heads/master@{#55207}
-
Georg Neis authored
R=jarin@chromium.org Bug: v8:7790 Change-Id: I06ace1a150d7c9a7eff1cd49e7eb38596bf0a188 Reviewed-on: https://chromium-review.googlesource.com/1180895Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#55206}
-
Michael Starzinger authored
This makes sure the aforementioned predicate is independent of the current context (aka. Realm) and only uses the instance type of the given object to determine whether it is a WebAssembly module object. R=titzer@chromium.org TEST=mjsunit/regress/wasm/regress-8059 BUG=v8:8059 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Icc8e400f8412483f2a3883ca65c58b7ef938ef23 Reviewed-on: https://chromium-review.googlesource.com/1180886Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55205}
-
Kanghua Yu authored
This optimizes ChangeNumberToFloat64/BuildFastLoop for better code generation. Change-Id: I54c1a07dfe237d4596f91dd6bab7f1d857bdd8a4 Reviewed-on: https://chromium-review.googlesource.com/1180730Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Kanghua Yu <kanghua.yu@intel.com> Cr-Commit-Position: refs/heads/master@{#55204}
-
Florian Sattler authored
Bug: v8:7926 Change-Id: I32bfb4399d588b48ba3d00ff02ac0133dbd33e8b Reviewed-on: https://chromium-review.googlesource.com/1179673 Commit-Queue: Florian Sattler <sattlerf@google.com> Reviewed-by: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#55203}
-
Michael Starzinger authored
This is a reland of f991465b Original change's description: > [wasm] Publish new code from the background threads. > > R=clemensh@chromium.org > BUG=v8:7921 > > Change-Id: Ib86cb5f742907b6e54365827facfc765867ca22e > Reviewed-on: https://chromium-review.googlesource.com/1156384 > Reviewed-by: Clemens Hammacher <clemensh@chromium.org> > Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#54985} Bug: v8:7921 Change-Id: Ic99f59410b6f26593f4bd4b47209e9cce56481fc Reviewed-on: https://chromium-review.googlesource.com/1179861Reviewed-by: Ben Titzer <titzer@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55202}
-
- 18 Aug, 2018 2 commits
-
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/78faf69..cbc08db Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/3d85a23..f62079a Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/ed0d273..dd765da TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: Ibb59904423a115f82a07b4e1b1eda6badf2b511b Reviewed-on: https://chromium-review.googlesource.com/1180602 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: V8 Autoroller <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#55201}
-
Frank Tang authored
Bug: v8:8066 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I9d86577540cf227e038354d9661c60fcdc644b3f Reviewed-on: https://chromium-review.googlesource.com/1179467Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#55200}
-
- 17 Aug, 2018 21 commits
-
-
Frank Tang authored
Bug: v8:7961 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: Ic414a51a64040f253da1d7ccf03c558ea70ad2bf Reviewed-on: https://chromium-review.googlesource.com/1155271 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#55199}
-
Alexei Filippov authored
Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I99b98fc131e90788902662e6cb837d93168c93fc Reviewed-on: https://chromium-review.googlesource.com/1169921Reviewed-by: Ali Ijaz Sheikh <ofrobots@google.com> Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Alexei Filippov <alph@chromium.org> Cr-Commit-Position: refs/heads/master@{#55198}
-
Sergiy Byelozyorov authored
TBR=machenbach@chromium.org No-Try: true Bug: chromium:616879 Change-Id: Icdd2489b64a4b29beb6d561eee8cb2f9c22a96ba Reviewed-on: https://chromium-review.googlesource.com/1180201 Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#55197}
-
Ben L. Titzer authored
This is a cleanup CL that is preparation for making the byte length and offsets of typed arrays into unboxed size_t fields. R=mstarzinger@chromium.org BUG=v8:7881 Change-Id: Iee8bb2142124c88c71cec7343149ae3f08b40c6c Reviewed-on: https://chromium-review.googlesource.com/1179829Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#55196}
-
Michael Starzinger authored
This makes sure that a tier-up from Ignition to TurboFan (or any other code publishing) preserves redirections to the Interpreter. Currently an interpreted function never switches back to compiled. R=titzer@chromium.org TEST=mjsunit/wasm/interpreter-mixed BUG=v8:7921,v8:8018 Change-Id: Ifca479953509708c998c11cc00b481c232678e00 Reviewed-on: https://chromium-review.googlesource.com/1179661 Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#55195}
-
Sergiy Byelozyorov authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/7679962..78faf69 Rolling v8/third_party/android_ndk: https://chromium.googlesource.com/android_ndk/+log/5cd8631..4e2cea4 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/f5981fb..3d85a23 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/421bc3f..ed0d273 Rolling v8/third_party/fuchsia-sdk: https://chromium.googlesource.com/chromium/src/third_party/fuchsia-sdk/+log/74c827a..454f3b2 Rolling v8/third_party/proguard: https://chromium.googlesource.com/chromium/src/third_party/proguard/+log/d901b76..67ad7bd TBR=machenbach@chromium.org,hablich@chromium.org,sergiyb@chromium.org Change-Id: Ifa11c8924c7571c141ec265d8ca1b8c017c59c8c Reviewed-on: https://chromium-review.googlesource.com/1179374Reviewed-by: V8 Autoroller <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: Sergiy Byelozyorov <sergiyb@chromium.org> Cr-Commit-Position: refs/heads/master@{#55194}
-
Ben L. Titzer authored
This is a reland of 5d69010e Original change's description: > [asmjs] Properly validate asm.js heap sizes > > Enforce both engine limitations and spec (http://asmjs.org/spec/latest/) > limitations on the size of asm.js heaps. > > R=clemensh@chromium.org > CC=mstarzinger@chromium.org > > Bug: chromium:873600 > Change-Id: I104c23bbd0a9a7c494f97f8f9e83ac5a37496dfd > Reviewed-on: https://chromium-review.googlesource.com/1174411 > Commit-Queue: Ben Titzer <titzer@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Cr-Commit-Position: refs/heads/master@{#55163} Bug: chromium:873600 Change-Id: Id24070bda3aafb9e1a32af0732a1b18f633ef932 Reviewed-on: https://chromium-review.googlesource.com/1179681 Commit-Queue: Ben Titzer <titzer@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#55193}
-
Georg Neis authored
R=jarin@chromium.org Bug: v8:7790 Change-Id: I69dd63e0f2e42591c53fa49899bd44d05b03b852 Reviewed-on: https://chromium-review.googlesource.com/1179154 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#55192}
-
Georg Neis authored
Change-Id: I31cf082abae120dc4f5aa7eadce6513e933d942b Reviewed-on: https://chromium-review.googlesource.com/1178042 Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#55191}
-
Benedikt Meurer authored
Use CheckBounds and reduce the number of checks required to sanitize the indices for DataView accesses in optimized code. Also constant-fold the [[ByteLength]] if the DataView is a known compile-time constant (similar to what we do for TypedArrays already). This further improves performance of DataViews by 2-7% depending on the exact test case. With this change DataView and TypedArray accesses themselves are mostly on par performance wise. Bug: chromium:225811 Change-Id: I6838339108b8a4dcf9b13ddecab40f1c3632967c Reviewed-on: https://chromium-review.googlesource.com/1179741 Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#55190}
-
jgruber authored
Bug: v8:6666 Change-Id: I9a9c6779138f7ee601a5061401ef0c777ba2b7ca Reviewed-on: https://chromium-review.googlesource.com/1179678 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#55189}
-
Sigurd Schneider authored
This reduced the number of targets depending on assembler.h from ~900 to ~350. Bug: v8:8054 Change-Id: I74ae2ce7a4b27791d0ee25542ee0b2175bedf5f7 Reviewed-on: https://chromium-review.googlesource.com/1174534 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#55188}
-
jgruber authored
Now that we pass in assembler options during builtin setup, we can be more precise in assembler configuration. Isolate-independent generation is only requested for isolate-independent builtins. And pc-relative jumps additionally need a valid code range. Bug: v8:6666 Change-Id: I64dfb414549a2f1e87610244c48d9405e63a1b12 Reviewed-on: https://chromium-review.googlesource.com/1177707Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#55187}
-
Marja Hölttä authored
This way the snapshot will contain only old space objects. BUG=v8:7308 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: Ib19642795b1e8c7cbeda5162be86909c1a777767 Reviewed-on: https://chromium-review.googlesource.com/1177384Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#55186}
-
Ulan Degenbaev authored
This moves write-barrier for writes into code to heap-write-barrier.h and adds four new functions: - WriteBarrierForCode(host, rinfo, object) - combined generational and marking write barrier. - WriteBarrierForCode(host) - combined write barrier that rescans all pointers in the host (former RecordWritesIntoCode). - GenerationalWriteBarrierForCode. - MarkingWriteBarrierForCode. Bug: v8:8054,v8:7490 Change-Id: Ib1e07cfa1d5998fca2fa44e2ad08c52305f1373f Reviewed-on: https://chromium-review.googlesource.com/1174436Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#55185}
-
Dan Elphick authored
When printing the number and size of the instance types in each snapshot, break out each line into the number for each AllocationSpace. (This removes the specific RO_SPACE path that just broke out its stats). Change-Id: I9d5bcecc4f0e8e1ec5c83409f54164f9bf83c5be Reviewed-on: https://chromium-review.googlesource.com/1175826Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#55184}
-
Ben L. Titzer authored
JSArrays and JSArrayBuffers are very different animals. As such, split the js-array.h header into two parts. R=ulan@chromium.org,mstarzinger@chromium.org Bug: v8:5402 Cq-Include-Trybots: luci.chromium.try:linux_chromium_rel_ng Change-Id: I82f987ecea3e2e1ceaf8f8962a2b88165558c57e Reviewed-on: https://chromium-review.googlesource.com/1177760Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Ben Titzer <titzer@chromium.org> Cr-Commit-Position: refs/heads/master@{#55183}
-
Hai Dang authored
Change-Id: Ib53ebb8372bd952f038edc06166e7d1c8b05abc2 Reviewed-on: https://chromium-review.googlesource.com/1174549 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#55182}
-
Jaroslav Sevcik authored
Bug: v8:7790 Change-Id: I268e8673ca5c8f6737cae8190d78caf325e864bd Reviewed-on: https://chromium-review.googlesource.com/1177604Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Jaroslav Sevcik <jarin@chromium.org> Cr-Commit-Position: refs/heads/master@{#55181}
-
Andrey Lushnikov authored
R=dgozman Cq-Include-Trybots: luci.chromium.try:linux_chromium_headless_rel;master.tryserver.blink:linux_trusty_blink_rel Change-Id: I5fd64b95772ed061c0a432431a6e5273e5d44790 Reviewed-on: https://chromium-review.googlesource.com/1149321 Commit-Queue: Andrey Lushnikov <lushnikov@chromium.org> Reviewed-by: Dmitry Gozman <dgozman@chromium.org> Cr-Commit-Position: refs/heads/master@{#55180}
-
Kanghua Yu authored
This CL refactors the CodeAssembler::Branch(condition, true_body, false_body) which was introduced by https://crrev.com/c/1175488, and this reduces snapshot by 864 bytes. Change-Id: Ifde7d6f39bd7f265e71fef5bdcc6e69d8ab5be85 Reviewed-on: https://chromium-review.googlesource.com/1175488Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Kanghua Yu <kanghua.yu@intel.com> Cr-Commit-Position: refs/heads/master@{#55179}
-
- 16 Aug, 2018 5 commits
-
-
Brian Stell authored
Bug: v8:7955, v8:5751 Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: I2dbba859472059e684ec2c631b7e96d1289f39f0 Reviewed-on: https://chromium-review.googlesource.com/1173165Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Brian Stell <bstell@chromium.org> Cr-Commit-Position: refs/heads/master@{#55178}
-
Frank Tang authored
Previously, FormatDate implemented two functions: (a) "DateTime Format Functions" as in ecma402/#sec-datetime-format-functions (b) "FormatDateTime( dateTimeFormat, x )" as in ecma402/#sec-formatdatetime This patch split FormatDate into two separate functions exactly as they are specified. Cq-Include-Trybots: luci.v8.try:v8_linux_noi18n_rel_ng Change-Id: Iae47f4d992f1767968e5a6df7d1a45a95bc33192 Reviewed-on: https://chromium-review.googlesource.com/1178886 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#55177}
-
Georg Neis authored
Bug: v8:7790 Change-Id: I1834893f05229834289bc368b00dc314e7de1b65 Reviewed-on: https://chromium-review.googlesource.com/1177746Reviewed-by: Jaroslav Sevcik <jarin@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#55176}
-
Deepti Gandluri authored
Change-Id: I24893d2db441282df8ac3267b0daf8f163e0edb5 Reviewed-on: https://chromium-review.googlesource.com/1177198Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#55175}
-
Deepti Gandluri authored
Change-Id: I55d15fd15cc714732139e4bf12bd75f21f922048 Reviewed-on: https://chromium-review.googlesource.com/1174013Reviewed-by: Ben Titzer <titzer@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#55174}
-