- 15 Jul, 2019 6 commits
-
-
Georg Neis authored
This test no longer fails with concurrent inlining. (Concurrent inlining is actually disabled in 'future' at the moment but will be turned on again soon.) Bug: v8:9094 Change-Id: I4d3f8021a7accff8cd670f3fef95a7995f1a9ba7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1700076Reviewed-by: Michael Stanton <mvstanton@chromium.org> Commit-Queue: Michael Stanton <mvstanton@chromium.org> Auto-Submit: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#62702}
-
Georg Neis authored
Bug: v8:9429 Change-Id: I4274206875edd61f36ac51c05d53158b6c1e17fd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1700072 Auto-Submit: Georg Neis <neis@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#62701}
-
Georg Neis authored
Bug: v8:9429 Change-Id: I48ae73fbd32b0ea4694bea738c42e34bd921c3c6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1700074 Auto-Submit: Georg Neis <neis@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#62700}
-
Nico Hartmann authored
This CL introduces new non-speculative operators BigIntAdd and BigIntNegate. Instead of keeping speculative operators until effect-control-linearization phase, they are now lowered to non-speculative variants in the simplified lowering and surrounded by the necessary checks. This adapts BigInt operators to the common style of other operators (like Numbers). Bug: v8:9407 Change-Id: I89ea7aef0d78c67b103971f8f63525b196ad3c0c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1695467 Commit-Queue: Nico Hartmann <nicohartmann@google.com> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#62699}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/3454c48..0998f8c TBR=machenbach@chromium.org,sergiyb@chromium.org,tmrts@chromium.org Change-Id: I821c7151d57d8b67daa49b1ed35198692c292fc1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1698440Reviewed-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@{#62698}
-
jiepan authored
Problem description: For prefixed WASM opcode, opcode prefix is printed as Unknown, not the opcode itself. Take v128.load as an example: before fix -> after fix Unknown, 0x00, 0x04, 0x00, -> kExprS128LoadMem, 0x04, 0x00, Change-Id: Id0cc5c723d19f60ad4f4f6c6ca338b5658c98c7e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1694613 Commit-Queue: Jie Pan <jie.pan@intel.com> Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#62697}
-
- 14 Jul, 2019 1 commit
-
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/2c98e63..3454c48 TBR=machenbach@chromium.org,sergiyb@chromium.org,tmrts@chromium.org Change-Id: Iae143d41177d135ca2d0b4a49bd83ef8563a72b4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1698427Reviewed-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@{#62696}
-
- 13 Jul, 2019 3 commits
-
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/c989268..2c98e63 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/1abe66f..982e952 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/78dec04..d3af699 Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/7cefad2..efd0971 TBR=machenbach@chromium.org,sergiyb@chromium.org,tmrts@chromium.org Change-Id: If8b78b71bc89c03f3b87e87868e363eed85eb63f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1698815Reviewed-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@{#62695}
-
Leszek Swirski authored
This reverts commit 13a04aba. Reason for revert: Breaks v8 roll (https://chromium-review.googlesource.com/c/chromium/src/+/1698024) Original change's description: > fix: move V8_EXPORT_PRIVATE marks to prevent unresolvable references > > This change fixes missing symbol errors in the Windows 10 on ARM build > of Node.js. > > When a whole class is marked for export, all of its members are marked > as well. This can be a problem when inline members call undefined yet > inline members of other classes: the exported function will contain a > reference to the undefined inline function that should be satisfied at > link time, but because the other function is inline no symbol will be > produced that will satisfy that reference. > > Clang gets around this by masking inlined class members from export > using /Fc:dllexportInlines-. This is why b0a2a567 worked. > > Node.js' Windows builds use MSVC and so do not have access to this > flag. This results in unresolved symbols at link time. > > Bug: v8:9465 > Change-Id: Ief9c7ab6ba35d22f995939eb62a64d6f1992ed85 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1696771 > Reviewed-by: Sigurd Schneider <sigurds@chromium.org> > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > Commit-Queue: Sigurd Schneider <sigurds@chromium.org> > Cr-Commit-Position: refs/heads/master@{#62660} TBR=sigurds@chromium.org,jgruber@chromium.org,ishell@chromium.org,jkunkee@microsoft.com Change-Id: Ief2ccb35fc19b00975e78a63791a558525d49ee9 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9465 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1700069Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#62694}
-
Deepti Gandluri authored
Change-Id: I9e9cc357cdadf81e8689b54626cff5ccdda2aa41 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1700437Reviewed-by: Bill Budge <bbudge@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#62693}
-
- 12 Jul, 2019 30 commits
-
-
Jakob Kummerow authored
...from the Store constructor/destructor. They were preventing embedders from using several Stores with overlapping but non-nested lifetimes. Without Isolate::Enter, such use cases are supported; the only consequence is that Isolate::Current will not work and therefore must not be called; but it is deprecated and not called from the Wasm C API anyway. Change-Id: I65eda00243126e189febb0fd8b38a953c4ee078f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1698387 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#62692}
-
Jakob Kummerow authored
The code to create wrapper modules on the fly was dead already. The code to read wire bytes has been replaced with accesses to V8's internal decoded form of the same data. Change-Id: I736c8467df3ded9de08f2d567dbfd5e695dcfb0e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1698384 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#62691}
-
Santiago Aboy Solanes authored
Reorganized folder as well. Bug: v8:9451 Change-Id: I65203aa88791dd05d6ca0127d5b832ccd898aa52 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1695901 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#62690}
-
Frank Tang authored
Move to stage for harmony_intl_dateformat_day_period harmony_intl_dateformat_fractional_second_digits after ECMA402 SC reach consensus July 11 2019 to treat them as Stage 3. Aiming to flip to ship for m78. Just get ready before sending out I2S after m77 branch off in end of July. Bug: v8:9283, v8:9284 Change-Id: I9bb145827157af9debc75cc4fc3859a60a5a023c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1699301Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#62689}
-
Jakob Kummerow authored
Change-Id: I51c25c3e41d11ac2419aac1041fe92192f8fdb9e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1698382 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#62688}
-
Dan Elphick authored
Make stress mode collect source positions for functions that weren't lazily compiled. Bug: v8:8510 Change-Id: I632f4b39746a7500ced3b7de9840601c4681856e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1700063 Auto-Submit: Dan Elphick <delphick@chromium.org> Commit-Queue: Ross McIlroy <rmcilroy@chromium.org> Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> Cr-Commit-Position: refs/heads/master@{#62687}
-
Jeremy Roman authored
Bug: chromium:982304 Change-Id: I1a313ca67d6e3a9430f74f519a236c7dd4f88418 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1698923 Commit-Queue: Jeremy Roman <jbroman@chromium.org> Reviewed-by: Simon Zünd <szuend@chromium.org> Cr-Commit-Position: refs/heads/master@{#62686}
-
Jakob Kummerow authored
Change-Id: Ie7a8b7fe22bed8092135c0e48cb681fbdd14b9fd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1698381 Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#62685}
-
Nico Hartmann authored
This CL adds a speculative operator for BigInt negation that is lowered to the respective builtin call and is optimized to native 64 bit machine operations if truncated. In particular, this change allows negative BigInt constants (e.g. -5n) to be lowered. Bug: v8:9407 Change-Id: Ia98fd6dee18a31ce56efbe537f4352b1582539e7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1695463 Commit-Queue: Nico Hartmann <nicohartmann@google.com> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#62684}
-
Nico Hartmann authored
The code generated for ChangeUint64ToBigInt in the EffectControlLinearizer did not initialize the optional padding field of newly allocated BigInts. This padding field is present on 64 bit builds without pointer compression enabled. This CL fixes this by 0-filling the padding field if present. Bug: v8:9407 Change-Id: I511e163e676dc966a3eb6dfb92b5065e36329225 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1695464Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Nico Hartmann <nicohartmann@google.com> Cr-Commit-Position: refs/heads/master@{#62683}
-
Michael Achenbach authored
Bug: v8:9476 Change-Id: Id3660d40fe219ee0816ac8550ee8affd1be4b95b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1698399Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#62682}
-
Mike Stanton authored
The bytecode graph builder currently creates the tagged template if it hasn't yet been done. This CL moves that work to serialization time. Bug: v8:7790 Change-Id: I9571c5ad2f553584869056fb0cf501e03563d6f0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1687670 Commit-Queue: Michael Stanton <mvstanton@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#62681}
-
Andreas Haas authored
This reverts commit 9a9aa71f. Reason for revert: https://ci.chromium.org/p/v8/builders/ci/V8-Blink%20Linux%2064/33101 Original change's description: > [wasm] Compile JS to WASM wrappers asynchronously > > R=mstarzinger@chromium.org, ahaas@chromium.org > > Bug: v8:9231 > Change-Id: I9e18073bbe25bf8c9c5f9ace102316e6209d0459 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1669699 > Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> > Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Cr-Commit-Position: refs/heads/master@{#62672} TBR=mstarzinger@chromium.org,ahaas@chromium.org,thibaudm@chromium.org Change-Id: I4c66663ca8a3f12f578c451f3c25705cebc753a7 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9231 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1700066Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#62680}
-
Michael Achenbach authored
This reverts commit a10a1a65. Reason: Huge test time regression, see https://crbug.com/v8/9402. Bug: v8:9402 Change-Id: Ia71309d255ed8d9c3e96a90cc5bf6cb3ad77beaf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1698400 Auto-Submit: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#62679}
-
Santiago Aboy Solanes authored
Similar to https://chromium-review.googlesource.com/c/v8/v8/+/1697246 but for the Pointer case. The three CLs combined bring good improvements to the code generation, both in code size and then in runtime. Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng Bug: v8:7703 Change-Id: I0903df55f3e19d3ee4dddb3c069ddc27b3265cd3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1698395Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#62678}
-
Santiago Aboy Solanes authored
Similar to https://chromium-review.googlesource.com/c/v8/v8/+/1697246 but for the Any case. Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng Bug: v8:7703 Change-Id: I99f839faad17da35adac8a084289b1553530d4a2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1698394Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#62677}
-
Santiago Aboy Solanes authored
In essence, it simplifies the pattern (in x64): movl register, ___ movlsxlq register, register into: movlsxlq register, ___ This makes the code smaller and run faster, without compromising. We can do something similar for Arm64 too. The cases for Pointer and Any seem to be trickier but there seems to be room to improve as well. Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng Bug: v8:7703 Change-Id: I583bdfafdae9330be0a08ad1dd4c196e7de2f0d5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1697246Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#62676}
-
Mu Tao authored
This CL removes Assember::stop invoking's dead argument accordingly (https://chromium-review.googlesource.com/c/v8/v8/+/1692925). R=clemensh@chromium.org, xwafish@gmail.com Change-Id: I9f4d91f15e3bc9e56815a328326997a273e42fee Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1699841Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Clemens Hammacher <clemensh@chromium.org> Cr-Commit-Position: refs/heads/master@{#62675}
-
Igor Sheludko authored
Bug: chromium:979401 Change-Id: I99ab2fd04bd2e23b4d7a494cecc056ec74cb9d04 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1687422 Auto-Submit: Igor Sheludko <ishell@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/master@{#62674}
-
Ulan Degenbaev authored
The serializer clears JSFunctions together with feedback vectors assuming that there is one to one correspondence between them. That does not work in the case when there are multiple JSFunctions sharing the same feedback vector. This patch ensures that all such JSFunctions are properly cleared. Bug: v8:7857 Change-Id: Ie441089e12bda5a8be7f9bed90f7be9499938609 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1698383Reviewed-by: Yang Guo <yangguo@chromium.org> Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#62673}
-
Thibaud Michaud authored
R=mstarzinger@chromium.org, ahaas@chromium.org Bug: v8:9231 Change-Id: I9e18073bbe25bf8c9c5f9ace102316e6209d0459 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1669699 Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#62672}
-
Sathya Gunasekaran authored
Bug: v8:9449 Change-Id: I7c50db92459df2a8a7da7b0bd2efdd2f3bed3e46 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1690952Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Auto-Submit: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#62671}
-
Peter Marshall authored
Everyone was getting a copy of this through debug.h. Bug: v8:9396 Change-Id: I5189cb4bf27a3381768b0be479d7b3d60dec20bb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1695472 Commit-Queue: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#62670}
-
Sam Clegg authored
I noticed the indentation was off in one function, but also fixed all the other flake8 issues in this file. Change-Id: I2303ed87da7154484a872315f8355f57621514c4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1697054Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Sam Clegg <sbc@chromium.org> Cr-Commit-Position: refs/heads/master@{#62669}
-
Sathya Gunasekaran authored
Previously, we didn't have access checks for the megamorphic case cause we'd never get to this IC state for a receiver that doesn't hold the right private field. But now with lazy feedback allocation we share the megamorphic case code paths for the uninitialized loads as well, which exposes our bug. Bug: chromium:982702 Change-Id: I419406bcfc52575260a85d05520c1662735e15f8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1697256Reviewed-by: Mythri Alle <mythria@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#62668}
-
Darius Mercadier authored
This CL adds a new FreeList strategy, that can be turned on by using flag `--gc-freelist-strategy=1`. It is inspired by FreeListLegacy, and differs from it in the following ways: - Only has 3 categories: Medium, Large and Huge. - Any block that would have belong to tiniest, tiny or small in FreeListLegacy is considered wasted. - Allocation is done only in Huge, Medium and Large (in that order), using a first-fit strategy (only the first block of each freelist is ever considered though). - Performances is supposed to be better than FreeListLegacy, but memory usage should be higher (because fragmentation will probably be higher). Bug: v8:9329 Change-Id: Ib399196788f1dfaa1aeddc3dc721375dd7da65f1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1697248 Commit-Queue: Darius Mercadier <dmercadier@google.com> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#62667}
-
Michael Starzinger authored
R=clemensh@chromium.org BUG=v8:9429,v8:9396 Change-Id: I1d8b5b67e5cd1b1788e6c0dcb45762c555b6f0e0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1695471Reviewed-by: Clemens Hammacher <clemensh@chromium.org> Commit-Queue: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#62666}
-
Nico Hartmann authored
This change implements lowering of speculative BigInt addition as well as BigInt heap constants to corresponding int64 versions, if they are used in a context where the result is truncated to the least significant 64 bits (e.g. using asUintN). The JSHeapBroker is extended to provide access to the BigInt's least significant digit during concurrent compilation. The BigInt context (required to introduce correct conversions) is recognized in the RepresentationChanger by either the output type propagated downward or the TypeCheckKind propagated upward. This is necessary, because the TypeCheckKind may only be set by nodes that may potentially deopt (and sit in the effect chain). This is the case for SpeculativeBigIntAdd, but not for BigIntAsUintN. This CL contains a simple fix to prevent int64-lowered BigInts to flow into state values as the deoptimizer cannot handle them yet. A more sophisticated solution to allow the deoptimizer to materialize truncated BigInts will be added in a following CL. Bug: v8:9407 Change-Id: I96a293e9077962f53e5f199857644f004e3ae56e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1684183 Commit-Queue: Nico Hartmann <nicohartmann@google.com> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#62665}
-
Georg Schmid authored
This CL adds the --assert-types flag to d8, which is intended to insert additional runtime checks after typed nodes, verifying the validity of our typing rules. So far, only range types are checked. Thanks to Neil Patil for suggesting something similar. R=neis@chromium.org, tebbi@chromium.org Change-Id: I5eb2c482235ec8cd07ee802ca7c12c86c2d3dc40 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1678372 Commit-Queue: Georg Schmid <gsps@google.com> Reviewed-by: Georg Neis <neis@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#62664}
-
Frank Tang authored
https://chromium.googlesource.com/external/github.com/tc39/test262/+log/1ef21eb..6cb0a5 Bug: v8:7834 Change-Id: I809d7ddc0c579cf3fa8c9563d8f0ef59d4cc708b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1699302 Auto-Submit: Frank Tang <ftang@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#62663}
-