- 23 Feb, 2021 4 commits
-
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/d6803e2..ac7b73c Rolling v8/buildtools: https://chromium.googlesource.com/chromium/src/buildtools/+log/fe293b0..80d14c9 Rolling v8/buildtools/third_party/libunwind/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind/+log/d999d54..a2cc4f8 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/011cc41..e71d028 Rolling v8/third_party/googletest/src: https://chromium.googlesource.com/external/github.com/google/googletest/+log/5e0cf72..1e315c5 Rolling v8/third_party/icu: https://chromium.googlesource.com/chromium/deps/icu/+log/dc4ceac..e05b663 Rolling v8/third_party/zlib: https://chromium.googlesource.com/chromium/src/third_party/zlib/+log/bf44340..348acca Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/6cf138c..bf8c8f3 TBR=v8-waterfall-sheriff@grotations.appspotmail.com Change-Id: I9450ca401a16b96ffbeac0e08e39eeacd72d6f36 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2713575Reviewed-by: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/master@{#72939}
-
LiuYu authored
Port: fd244de2 Bug: v8:11416 Change-Id: I8f2840337d77ddfa430f57737360fb0b679f2f33 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2713574 Auto-Submit: Liu yu <liuyu@loongson.cn> Reviewed-by: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Cr-Commit-Position: refs/heads/master@{#72938}
-
Bill Budge authored
This reverts commit 9da4e363. Reason for revert: Fuzzers revealed that Liftoff doesn't use the CallDescriptor when pushing arguments, breaking linkage. tbr=ahaas@chromium.org,neis@chromium.org,jgruber@chromium.org Original change's description: > Reland "Reland "Reland "[compiler][wasm] Align Frame slots to value size""" > > This is a reland of 352b9ecb > > The test/fix CL has been merged in, as the fixes to return slot > accounting are needed to fix Arm64 issues turned up by the fuzzers: > > https://chromium-review.googlesource.com/c/v8/v8/+/2644139 > > Original change's description: > > Reland "Reland "[compiler][wasm] Align Frame slots to value size"" > > > > This is a reland of 1694925c > > > > Minor fix to linkage for constexpr. > > > > TBR=ahaas@chromium.org,neis@chromium.org > > > > Original change's description: > > > Reland "[compiler][wasm] Align Frame slots to value size" > > > > > > This is a reland of cddaf66c > > > > > > Original change's description: > > > > [compiler][wasm] Align Frame slots to value size > > > > > > > > - Adds an AlignedSlotAllocator class and tests, to unify slot > > > > allocation. This attempts to use alignment holes for smaller > > > > values. > > > > - Reworks Frame to use the new allocator for stack slots. > > > > - Reworks LinkageAllocator to use the new allocator for stack > > > > slots and for ARMv7 FP register aliasing. > > > > - Fixes the RegisterAllocator to align spill slots. > > > > - Fixes InstructionSelector to align spill slots. > > > > > > > > Bug: v8:9198 > > > > > > > > Change-Id: Ida148db428be89ef95de748ec5fc0e7b0358f523 > > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2512840 > > > > Commit-Queue: Bill Budge <bbudge@chromium.org> > > > > Reviewed-by: Georg Neis <neis@chromium.org> > > > > Reviewed-by: Andreas Haas <ahaas@chromium.org> > > > > Cr-Commit-Position: refs/heads/master@{#71644} > > > > > > Bug: v8:9198 > > > Change-Id: Ib91fa6746370c38496706341e12d05c7bf999389 > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2633390 > > > Commit-Queue: Bill Budge <bbudge@chromium.org> > > > Reviewed-by: Andreas Haas <ahaas@chromium.org> > > > Reviewed-by: Georg Neis <neis@chromium.org> > > > Cr-Commit-Position: refs/heads/master@{#72195} > > > > Bug: v8:9198 > > Change-Id: I91e02b823af8ec925dacf075388fb22e3eeb3384 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2640890 > > Reviewed-by: Bill Budge <bbudge@chromium.org> > > Commit-Queue: Bill Budge <bbudge@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#72209} > > Bug: v8:9198 > Change-Id: I8258f87463f66417c7028b9a1fed4b9b6d82a3be > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2669892 > Reviewed-by: Georg Neis <neis@chromium.org> > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Commit-Queue: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#72506} Bug: v8:9198 Change-Id: I7f344e4d018ce3c02333b0b08efeecdd8cddf082 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2713207Reviewed-by: Bill Budge <bbudge@chromium.org> Reviewed-by: Zhi An Ng <zhin@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#72937}
-
Ng Zhi An authored
Load lanes require that dst == src1 when AVX is not supported, add that constraint to the instruction selector. For Liftoff, we change the macro defintions of Movlps and Movhps to do the move if dst != src1. Bug: v8:10975 Change-Id: Ic4f499845f0728db250ea23b1b053e0a9fbe99b5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2708825Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#72936}
-
- 22 Feb, 2021 36 commits
-
-
Ng Zhi An authored
Bug: v8:11086 Change-Id: Id7ec472d5311c3a1e4e54d9df65fee9c87ae6ec7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2707777Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#72935}
-
Bill Budge authored
This reverts commit 0818d138. Reason for revert: Rolling back to previous greedy slot allocator. tbr=ahaas@chromium.org Original change's description: > [compiler][wasm] Fix Wasm linkage > > - Fixes a problem when constructing Wasm CallDescriptors, where the > allocation tries to treat parameters and returns as if they are in the > same frame. This doesn't work when slots may be aligned in their > frame. Instead, allocate parameters and returns separately and offset > return slots by the number of parameter slots. > - Adds argument slot padding in the CallDescriptor lowering case, to > prepare for when 32 bit targets align stack frames and require > padding. > - Adds a regression test. > > Bug: chromium:1174500 > Change-Id: I60d96a94b171a0d27ff61cbab35623976b0c6da8 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2683024 > Commit-Queue: Bill Budge <bbudge@chromium.org> > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Cr-Commit-Position: refs/heads/master@{#72588} Bug: chromium:1174500 Change-Id: I1d1c389acde43bd56e6d2a27e1a3eb8ea4d6073c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2713206 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#72934}
-
Ng Zhi An authored
This is essentially a revert of 3 commits: - a1d39bba - 5a0938e5 - 74362ae3 with merge conflicts fixed. These instructions were not merged into the SIMD proposal. Bug: v8:11297 Change-Id: Ifffe7c61cae10fadc345d0faa1b0ba45ce74e946 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2704950Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#72933}
-
Ng Zhi An authored
Bug: v8:11471 Change-Id: Ie09f1f8e7b52b22e232bf382381c40037cf00986 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2708755Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#72932}
-
Bill Budge authored
This reverts commit 8cf4eec7. Reason for revert: Rolling back to previous greedy slot allocator. tbr=neis@chromium.org,jgruber@chromium.org Original change's description: > [codegen][frames] Generalize argument padding slot code > > - Removes kPadArguments boolean. > - Changes ShouldPadArguments to ArgumentPaddingSlots to reflect > that on some architectures more than 1 padding slot may be needed. > - Adds AddArgumentPaddingSlots and ShouldPadArguments convenience > functions. > > Bug: v8:9198 > > Change-Id: Iba87518e071a75fb951b490d3f75a87ca715cc23 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2679109 > Commit-Queue: Bill Budge <bbudge@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Cr-Commit-Position: refs/heads/master@{#72605} Bug: v8:9198 Change-Id: Ie93d32d4b93c67840e4792acb017f28a826bd030 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2713205 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#72931}
-
Bill Budge authored
This reverts commit b18bc221. Reason for revert: Rolling back to previous greedy slot allocator. tbr=jgruber@chromium.org Original change's description: > [compiler][linkage] No allocation of slots after aligning a frame > > - Adds DCHECKs to make sure no stack slots are allocated after > aligning a frame. > - Changes Arm64 CodeGenerator::FinishFrame to align the frame after > allocating callee-saved registers, and relaxes the constraints on > the number of callee-saved registers. > > Bug: v8:9198 > Change-Id: Iacb0518b57fa3ea2ff801eda69719f4c32733850 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2694104 > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Commit-Queue: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#72781} Bug: v8:9198 Change-Id: I53f415b7b0f73b57db24859d1199c6a44f911035 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2713204 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#72930}
-
Zhi An Ng authored
This reverts commit 0ef2eea7. Reason for revert: broke noavx https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux%20-%20debug/34035/overview Original change's description: > [wasm-simd][ia32] Optimize some signed integer widening sequences > > Optimize ia32 code sequences. This is the same sequences as x64, which > have been optimized based on supported extensions. > > Bug: v8:11464 > Change-Id: I10396a928a431cdd2de9b22bb8a395bc0adb4694 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2704897 > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#72926} Bug: v8:11464 Change-Id: Ibeaf35b5f6aa75d10e24f1fb57843dbc0791d37a No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2713208 Auto-Submit: Zhi An Ng <zhin@chromium.org> Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#72929}
-
Milad Fa authored
Port 8136e399 Original Commit Message: Extract code sequence into macro-assembler for reuse between Liftoff and TurboFan. Small tweaks to macro-assembler functions Pmaddwd and Pmaddubsw to move src1 to dst on SSE when src != dst. TurboFan codegen won't be affected by this since it sets the right restrictions in instruction-selector. R=zhin@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: Idaff4944dbb1ec5e6d7e798b6255a90744155006 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2713842Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72928}
-
Milad Fa authored
Original change on arm: https://crrev.com/c/2463222 Change-Id: Ifb99b4dd1825814865ef2647ba3df3b3ab343cc4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2712394Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72927}
-
Ng Zhi An authored
Optimize ia32 code sequences. This is the same sequences as x64, which have been optimized based on supported extensions. Bug: v8:11464 Change-Id: I10396a928a431cdd2de9b22bb8a395bc0adb4694 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2704897Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#72926}
-
Ng Zhi An authored
Extract code sequence into macro-assembler for reuse between Liftoff and TurboFan. Similar to x64, there is a bit of register-aliasing checking due to the rather strict requirements for the code sequence depending on the CpuFetures that are supported. Bug: v8:11415 Change-Id: I3f855da25493941d158383020fbcafee8d18095f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2698066 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#72925}
-
Ng Zhi An authored
Extract code sequence into macro-assembler for reuse between Liftoff and TurboFan. Small tweaks to macro-assembler functions Pmaddwd and Pmaddubsw to move src1 to dst on SSE when src != dst. TurboFan codegen won't be affected by this since it sets the right restrictions in instruction-selector. Bug: v8:11086 Change-Id: I6c206dec332c8195a6a4d419d11a28e7058c905a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2707253Reviewed-by: Clemens Backes <clemensb@chromium.org> Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#72924}
-
Toon Verwaest authored
Bug: v8:11429 Change-Id: I98b65613dc05f593644af45388b1f2c2a7df34a1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2712567 Auto-Submit: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#72923}
-
Georg Neis authored
These appear to be consistent with the pow implementation in ieee754.cc. Bug: v8:11371 Change-Id: I1b695facb5ba7dc1a7bd28914bdb535966e080c7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2710432 Auto-Submit: Georg Neis <neis@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Reviewed-by: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#72922}
-
Junliang Yan authored
Change-Id: I838bf9f9c0d83fc3cb96f7fb47b0fba3498680c1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2709950Reviewed-by: Milad Fa <mfarazma@redhat.com> Commit-Queue: Junliang Yan <junyan@redhat.com> Cr-Commit-Position: refs/heads/master@{#72921}
-
Seth Brenith authored
This is a partial reland of https://crrev.com/c/v8/v8/+/2601880 . This change improves readability and helps prepare for when ScopeInfo will not be convertible to FixedArrayBase. Change-Id: I8de453c2b72ced51e98161e3d9e6426cd6ff7267 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2707250Reviewed-by: Mythri Alle <mythria@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/master@{#72920}
-
Leszek Swirski authored
Now that we create a full frame for interrupts during the baseline out-of-line prologue, we shouldn't consider the out-of-line prologue builtin's frames as BASELINE, but rather have the frame above be the baseline frame. Change-Id: Icf96a6be4cf4bff0e482964bece12d397a26c268 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2712789 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#72919}
-
Milad Fa authored
Port 1c507667 Original Commit Message: There is no need for write barriers if the stored value is known to be a Smi. R=clemensb@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: I2b79511b7f2789e6fc95ae5cb349b0f2288822fc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2712787Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72918}
-
gengjiawen authored
Fixes compilation with msvc 2019 toolchain. See: https://github.com/nodejs/node/pull/37330#issuecomment-783000812 Change-Id: I3b658d9ef49889c0a0467a1146e8d16b50fca65d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2711152Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/master@{#72917}
-
Almothana Athamneh authored
Bug: chromium:1126457 Change-Id: I3faa690d8b5d1fefcba7b75c38fb5d2c8570c3aa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2707165Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Almothana Athamneh <almuthanna@chromium.org> Cr-Commit-Position: refs/heads/master@{#72916}
-
Milad Fa authored
Port a3776a63 Original Commit Message: Backends do not care about the concrete type, they only need to know the "kind" (e.g. "ref" or "i32"). In order to prepare Liftoff to use the value kind instead of the value type for all stored data, this CL moves the kind out of the ValueType and makes it a top-level enum. R=clemensb@chromium.org, joransiu@ca.ibm.com, junyan@redhat.com, midawson@redhat.com BUG= LOG=N Change-Id: Ia4111941313037aa1a77f2a0a1536d492ae9dc0b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2712392Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Milad Fa <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/master@{#72915}
-
Toon Verwaest authored
Bug: v8:11429 Change-Id: I626a30d44eca5e2b636d528a9fe0824b8608f4fc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2712568 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#72914}
-
Yang Guo authored
This problem was found by Mathieu Schroeter <gamesover.ch@gmail.com>, who also suggested this fix. Kudos! R=cbruni@chromium.org Change-Id: I8865d1ea6dea29514c69296145cf72958ea8acb1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2712566 Commit-Queue: Yang Guo <yangguo@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Auto-Submit: Yang Guo <yangguo@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/master@{#72913}
-
Dan Elphick authored
Also add v8_config_headers dependency to cctest_headers. This reduces the number of gn check failures from 194 to 178. Bug: v8:7330 Change-Id: I6453b9789503c9d8ca3ed6bbe94bce3e2a69653f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2712564 Auto-Submit: Dan Elphick <delphick@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#72912}
-
Jakob Gruber authored
This method used to be defined on Object and handled Strings and JSObjects; but only the object hierarchy rooted at JSObject has 'elements', and Strings are handled slightly differently. Thus it makes sense to split up into JSObject::GetOwnConstantElement String::GetCharAsString This way, we can also separate future work on making JSObjects and Strings never-serialized. Bug: v8:7790 Change-Id: I8e0f142fbd9cbf8e8abe1e9a189bcd948c2f1fa8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2704080 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Auto-Submit: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#72911}
-
Toon Verwaest authored
Bug: v8:11429 Change-Id: Ib85f759a763640a55e5e6dcaf350b3ed1629bbf1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2712563 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#72910}
-
Toon Verwaest authored
Using StackFrame::MANUAL was a bit of a hack to avoid frame markers to be pushed, but manual in FrameScope means Enter/LeaveFrame aren't called at all. This decouples those things. Bug: v8:11429 Change-Id: Ie1603bb3c6858f0b97a75e4bb0b9bd1244de6cce Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2707205 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#72909}
-
Dan Elphick authored
Currently if gn check is enabled (with v8/third_party ignored), there are many errors due to headers being used without adding the proper dependency in BUILD.gn (or because it's being used transitively without a public_deps chain). This makes the number of errors go from 2114 to 195. Apart from adding dependencies, it also moves _v8_internal_Node_Print from objects-printer.cc to node.cc so it can see the Node::Print method which wouldn't otherwise be possible without a circular dependency. Also removes the previously deleted compiler/graph-builder-tester.h file. Bug: v8:7330 Change-Id: Icb34585fbef621588265cf4267cfc88ecbcf0a72 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2702331Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#72908}
-
LiuYu authored
Besides, fix i64x2 widen i32x4 instructions in mips32. Change-Id: I85e3f8f4ab16c268a5b17189f67c78ef45762e39 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2711737Reviewed-by: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Commit-Queue: Zhao Jiazhong <zhaojiazhong-hf@loongson.cn> Auto-Submit: Liu yu <liuyu@loongson.cn> Cr-Commit-Position: refs/heads/master@{#72907}
-
Mythri A authored
Earlier we used the same interrupt budget always and waited for higher number of ticks when tiering up from Turboprop to TurboFan. On some of the real world pages this adds a reasonable overhead for processing these interrupts. This cl sets the interrupt budget to a higher value so there are fewer interrupts. This cl: 1. Sets the interrupt budget on feedback cell to FLAG_interrupt_budget * scale factor when we install optimized code. 2. Resets the budget to FLAG_interrupt_budget when there is a deoptimization. 3. Updates the runtime profiler to remove the scaling of number of ticks needed for optimization when tiering up from TP to TF. On sheets benchmark, we spend 40-50ms when servicing interrupts from Turboprop code. This change brings it down to ~7ms. We also see improvements on other pages. Bug: v8:9684 Change-Id: Ia3e5e998d1fff44f2e08a240a8769b7ebe794da2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2696661 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#72906}
-
Clemens Backes authored
If webassembly is disabled via a gn arg, we will not be able to enable it via command-line switch. Hence make this flag read-only in that configuration. R=ecmziegler@chromium.org Bug: v8:11238 Change-Id: Ib93a55f74d4f018477f110b8b52aa9b645e86553 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2710426Reviewed-by: Andreas Haas <ahaas@chromium.org> Reviewed-by: Emanuel Ziegler <ecmziegler@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#72905}
-
Jakob Gruber authored
This is a reland of 76a2ab06 Changes since the original CL: - Handle unserialized elements (optional result in getter). - Merge should_access_heap and --turbo-direct-heap-access paths. - Slightly update the serialized path in GetOwnCowElement. - Fix the cctest, add a regression test. Atomic JSObject::elements/JSArray::length setters are addressed in this CL: crrev.com/c/2704076. Original change's description: > [compiler] Direct heap reads for JSArrayRef > > There are two aspects to the non-JSObject parts of JSArrayRef: > > - JSArrayRef::length. Relevant only in two spots, 1. when reading > (immutable) array boilerplates and 2. for GetOwnCowElement. > > - JSArrayRef::GetOwnCowElement. May read into a copy-on-write backing > store. Relies on the invariant that cow backing stores are immutable. > > This CL renames the length accessor to length_unsafe to make the > danger explicit at callsites. > > For GetOwnCowElement the refactor is slightly larger, since we now > need to read into the backing store while keeping full control of > object reads (e.g. JSArray::length and JSArray::elements_kind). We > make all reads explicit at the call site by requiring that elements, > elements kind, and length are passed in as arguments to > GetOwnCowElement. Inside GetOwnCowElement, consistency between these > is *not* guaranteed due to concurrency. At runtime, consistency *is* > guaranteed through the reference-equality check on the elements seen > during compilation. The actual elements read is implemented in > ConcurrentLookupIterator::GetOwnCowElement. > > Bug: v8:7790 > Change-Id: I9aa169ce4f2b1e2bfe1e9232007669eb7654a995 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2695403 > Commit-Queue: Jakob Gruber <jgruber@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Cr-Commit-Position: refs/heads/master@{#72834} Bug: v8:7790 Change-Id: I7577ad554992cafff81099a28c34f27db9bd8042 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2710431 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#72904}
-
Clemens Backes authored
There is no need for write barriers if the stored value is known to be a Smi. R=thibaudm@chromium.org Bug: v8:11453 Change-Id: Id1cf306b246686c245d1be5f72c46b54ba9829ca Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2707172Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#72903}
-
Clemens Backes authored
The section might be the first EH-related part being found, and then it makes sense to include the hint about the flag in the error message. R=thibaudm@chromium.org Bug: v8:8091 Change-Id: I1680090f6ff3d9496a11db51f45d990d34f234ca Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2707204Reviewed-by: Thibaud Michaud <thibaudm@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#72902}
-
Omer Katz authored
Bug: chromium:1056170 Change-Id: Ifb5a2cfa5f3fd2fbfecb84b1bf8f3dc464a823ef Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2711264Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Omer Katz <omerkatz@chromium.org> Cr-Commit-Position: refs/heads/master@{#72901}
-
Clemens Backes authored
This moves all asm.js tests (tests that use "%IsAsmWasmCode") into a separate directory. This will make it easier to skip them all in the v8_enable_webassembly=false configuration. R=ahaas@chromium.org Bug: v8:11238 Change-Id: I805f222b7977f5508f7dbee1f1bd61a88ccd34aa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2710427 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#72900}
-