- 17 Aug, 2020 1 commit
-
-
Thibaud Michaud authored
Temporarily disable multi-value until the launch is approved. R=ahaas@chromium.org Bug: chromium:1097717 Change-Id: Ifb2370d87ec5e531257852bc5fc5259386a022d8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2358675Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#69419}
-
- 14 Aug, 2020 1 commit
-
-
Manos Koukoutos authored
Drive-by: Add flag implications for wasm experimental features: gc -> typed_funcref, typed_funcref -> reftypes. Bug: v8:9495 Change-Id: Ia6054886935d68e79b8f463289aa9e1e9d6484f2 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2352777Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/master@{#69403}
-
- 13 Aug, 2020 2 commits
-
-
Shu-yu Guo authored
This reached consensus in the March 2020 TC39. https://github.com/tc39/ecma262/pull/1908 This aligns JS with wasm, which allows atomics operations on non-shared linear memory. Bug: v8:10687, v8:9921 Change-Id: I7b60473b271cee6bccb342e97a4fd3781aedddb4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2330802 Commit-Queue: Shu-yu Guo <syg@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#69392}
-
Clemens Backes authored
TurboFan generates significantly less code than Liftoff for this test, and depending on timing it can happen that we need to generate thousands of functions, which takes some time and occasionally runs into timeouts. Thus disable tier-up for this test, such that we stick with the much longer Liftoff code, and reach the four separate code spaces quicker. R=ahaas@chromium.org Change-Id: I8e9a0cb466c1bdfef29aceeb5dd31aa96d05b70b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2352490Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#69369}
-
- 11 Aug, 2020 4 commits
-
-
Ng Zhi An authored
This is a reland of 57242a05 no-sse4.1 builds were failing due to missing simd-scalar-lowering for s128.const, this reland adds that implementation. Original change's description: > [wasm-simd][arm] Use vmov to move all ones to register > > vceq(dst, dst, dst) does not seem to always set the register to all > ones. The right way should be be to use vmov (immediate) anyway. This > was not supported in the assembler yet, so we need changes to the > assembler, diassembler, and simulator. > > There is an unfortunate fork in logic in the simulator, due to the way > the switches are set up, vmov (imm) logic is duplicated across two > different cases, because the switch looks at the top bit of the > immediate. Refactoring this will be a bigger change that is irrelevant > for this bug, so I'm putting that off for now. Instead we extract the > core of vmov (imm) into helpers and call it in the two cases. > > Bug: chromium:1112124 > Change-Id: I283dbcd86cb0572e5ee720835f897b51fae96701 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2337503 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#69315} Bug: chromium:1112124 Change-Id: Id450e5cea41f7a569e49be8386a7788ca8f00658 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2346937Reviewed-by:
Bill Budge <bbudge@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#69346}
-
Bill Budge authored
This reverts commit 0ba115e6. Reason for revert: Breaks test on TSAN - block-conflicts https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20TSAN%20-%20concurrent%20marking/14230 Original change's description: > Reland^2 "[flags] warn about contradictory flags" > > This is a reland of d8f8a7e2 > Change compared to last reland: > - Do not check for d8 flag contradictions in the presence of --fuzzing > - Allow identical re-declaration of --cache=* > > Original change's description: > > Reland "[flags] warn about contradictory flags" > > > > This is a reland of b8f91666 > > Difference to previous CL: Additional functionality to specify > > incompatible flags based on GN variables and extra-flags, used > > to fix the issues that came up on the waterfall. > > > > This also changes the rules regarding repeated flags: While > > explicitly repeated flags are allowed for boolean values as long > > as they are identical, repeated flags or explicit flags in the > > presence of an active implication are disallowed for non-boolean > > flags. The latter simplifies specifying conflict rules in > > variants.py. Otherwise a rule like > > > > INCOMPATIBLE_FLAGS_PER_EXTRA_FLAG = { > > "--gc-interval=*": ["--gc-interval=*"], > > } > > > > wouldn't work because specifying the same GC interval twice > > wouldn't actually count as a conflict. This was an issue with > > test/mjsunit/wasm/gc-buffer.js, which specifies > > --gc-interval=500 exactly like the extra flag by the stress bot. > > > > Also, this now expands contradictory flags checking to d8 flags > > for consistency. > > > > Original change's description: > > > [flags] warn about contradictory flags > > > > > > Design Doc: https://docs.google.com/document/d/1lkvu8crkK7Ei39qjkPCFijpNyxWXsOktG9GB-7K34jM/ > > > > > > Bug: v8:10577 > > > Change-Id: Ib9cfdffa401c48c895bf31caed5ee03545beddab > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2154792 > > > Reviewed-by: Clemens Backes <clemensb@chromium.org> > > > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > > > Reviewed-by: Georg Neis <neis@chromium.org> > > > Reviewed-by: Tamer Tas <tmrts@chromium.org> > > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > > > Cr-Commit-Position: refs/heads/master@{#68168} > > > > Bug: v8:10577 > > Change-Id: I268e590ee18a535b13dee14eeb15ddd0a9ee8341 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2235115 > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > > Reviewed-by: Tamer Tas <tmrts@chromium.org> > > Reviewed-by: Clemens Backes <clemensb@chromium.org> > > Reviewed-by: Georg Neis <neis@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#68989} > > Bug: v8:10577 > Change-Id: I31d2794d4f9ff630f3444210100c64d67d881276 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2339464 > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#69339} TBR=machenbach@chromium.org,neis@chromium.org,clemensb@chromium.org,tebbi@chromium.org,tmrts@chromium.org Change-Id: I1454a05e357ddd704db7fb79e51be65d45a9a16e No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:10577 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2348365Reviewed-by:
Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#69341}
-
Tobias Tebbi authored
This is a reland of d8f8a7e2 Change compared to last reland: - Do not check for d8 flag contradictions in the presence of --fuzzing - Allow identical re-declaration of --cache=* Original change's description: > Reland "[flags] warn about contradictory flags" > > This is a reland of b8f91666 > Difference to previous CL: Additional functionality to specify > incompatible flags based on GN variables and extra-flags, used > to fix the issues that came up on the waterfall. > > This also changes the rules regarding repeated flags: While > explicitly repeated flags are allowed for boolean values as long > as they are identical, repeated flags or explicit flags in the > presence of an active implication are disallowed for non-boolean > flags. The latter simplifies specifying conflict rules in > variants.py. Otherwise a rule like > > INCOMPATIBLE_FLAGS_PER_EXTRA_FLAG = { > "--gc-interval=*": ["--gc-interval=*"], > } > > wouldn't work because specifying the same GC interval twice > wouldn't actually count as a conflict. This was an issue with > test/mjsunit/wasm/gc-buffer.js, which specifies > --gc-interval=500 exactly like the extra flag by the stress bot. > > Also, this now expands contradictory flags checking to d8 flags > for consistency. > > Original change's description: > > [flags] warn about contradictory flags > > > > Design Doc: https://docs.google.com/document/d/1lkvu8crkK7Ei39qjkPCFijpNyxWXsOktG9GB-7K34jM/ > > > > Bug: v8:10577 > > Change-Id: Ib9cfdffa401c48c895bf31caed5ee03545beddab > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2154792 > > Reviewed-by: Clemens Backes <clemensb@chromium.org> > > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > > Reviewed-by: Georg Neis <neis@chromium.org> > > Reviewed-by: Tamer Tas <tmrts@chromium.org> > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > > Cr-Commit-Position: refs/heads/master@{#68168} > > Bug: v8:10577 > Change-Id: I268e590ee18a535b13dee14eeb15ddd0a9ee8341 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2235115 > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Tamer Tas <tmrts@chromium.org> > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Reviewed-by: Georg Neis <neis@chromium.org> > Cr-Commit-Position: refs/heads/master@{#68989} Bug: v8:10577 Change-Id: I31d2794d4f9ff630f3444210100c64d67d881276 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2339464 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#69339}
-
Clemens Backes authored
This is a reland of 60ee70bb. The wasm c-api flakes were fixed in https://crrev.com/c/2349293. Original change's description: > [wasm] Ensure that only TurboFan code is serialized > > We have the implicit assumption that Liftoff code will never be > serialized, and we start relying on that when implementing new features > (debugging, dynamic tiering). > > This CL makes the serializer fail if the module contains any Liftoff > code. Existing tests are changed to ensure that we fully tiered up > before serializing a module (similar to the logic in Chromium). > The "wasm-clone-module" test needs to serialize the module before > enabling the debugger. > > Note that chrome currently only serializes a module after it fully > tiered up, so that should be fine. If other embedders need the ability > to serialize a module in an arbitrary state, we will have to fix this > later. With this CL we will be on the safe side though and (gracefully) > fail serialization instead of accidentally serializing Liftoff code. > > R=ahaas@chromium.org > > Bug: v8:10777 > Change-Id: I1245e5f7fda3447a544c1e3525e1239cde759174 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2336799 > Commit-Queue: Clemens Backes <clemensb@chromium.org> > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Cr-Commit-Position: refs/heads/master@{#69276} Bug: v8:10777 Change-Id: I2a7c1429812ca46d88a2902b8e0a7b7e3d638b56 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2349290Reviewed-by:
Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#69335}
-
- 10 Aug, 2020 6 commits
-
-
Shu-yu Guo authored
The Intent to Deprecate and Remove was sent in March 2019: https://groups.google.com/a/chromium.org/forum/#!topic/blink-dev/_zPuM7ETNSE Current use of Atomics.wake is at <0.0002% of page loads: https://chromestatus.com/metrics/feature/timeline/popularity/2556 Bug: v8:7883 Change-Id: I4534df6cb88e0afbeae655254d6ce48ad7b462e7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2333349 Commit-Queue: Shu-yu Guo <syg@chromium.org> Reviewed-by:
Ben Smith <binji@chromium.org> Reviewed-by:
Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/master@{#69317}
-
Bill Budge authored
This reverts commit 57242a05. Reason for revert: regression tests fails: https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20debug/31477 Original change's description: > [wasm-simd][arm] Use vmov to move all ones to register > > vceq(dst, dst, dst) does not seem to always set the register to all > ones. The right way should be be to use vmov (immediate) anyway. This > was not supported in the assembler yet, so we need changes to the > assembler, diassembler, and simulator. > > There is an unfortunate fork in logic in the simulator, due to the way > the switches are set up, vmov (imm) logic is duplicated across two > different cases, because the switch looks at the top bit of the > immediate. Refactoring this will be a bigger change that is irrelevant > for this bug, so I'm putting that off for now. Instead we extract the > core of vmov (imm) into helpers and call it in the two cases. > > Bug: chromium:1112124 > Change-Id: I283dbcd86cb0572e5ee720835f897b51fae96701 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2337503 > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Reviewed-by: Bill Budge <bbudge@chromium.org> > Cr-Commit-Position: refs/heads/master@{#69315} TBR=bbudge@chromium.org,jkummerow@chromium.org,v8-arm-ports@googlegroups.com,zhin@chromium.org Change-Id: I5d9d1dcb81771f71001d959ec5a03a43a11c4233 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: chromium:1112124 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2347211Reviewed-by:
Bill Budge <bbudge@chromium.org> Commit-Queue: Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#69316}
-
Ng Zhi An authored
vceq(dst, dst, dst) does not seem to always set the register to all ones. The right way should be be to use vmov (immediate) anyway. This was not supported in the assembler yet, so we need changes to the assembler, diassembler, and simulator. There is an unfortunate fork in logic in the simulator, due to the way the switches are set up, vmov (imm) logic is duplicated across two different cases, because the switch looks at the top bit of the immediate. Refactoring this will be a bigger change that is irrelevant for this bug, so I'm putting that off for now. Instead we extract the core of vmov (imm) into helpers and call it in the two cases. Bug: chromium:1112124 Change-Id: I283dbcd86cb0572e5ee720835f897b51fae96701 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2337503 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Reviewed-by:
Bill Budge <bbudge@chromium.org> Cr-Commit-Position: refs/heads/master@{#69315}
-
Andreas Haas authored
This CL adds an API function that tells the embedder if there is ongoing background work that will eventually post foreground tasks. Design doc: https://docs.google.com/document/d/18vaABH1mR35PQr8XPHZySuQYgSjJbWFyAW63LW2m8-w R=adamk@chromium.org Bug: v8:10787 Change-Id: I9060c5cdc9dbafeb7ea7c5c26d09c2dc744800bd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2342847Reviewed-by:
Adam Klein <adamk@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#69312}
-
Mythri Alle authored
This reverts commit 07815e87. Reason for revert: Dynamic map checks for Turboprop was temporarily disabled to measure impact. Enabling it again. Original change's description: > [tuboprop] Disable dynamic map checks for TurboProp > > Temporarily turnoff dynamic map checks for TurboProp to measure the > impact after changing OSR heuristics. > > Bug: v8:10582, v8:9684 > Change-Id: Ia458be139bf7c281bda40cbcd76e7a0c3fa5d60b > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2343070 > Reviewed-by: Ross McIlroy <rmcilroy@chromium.org> > Reviewed-by: Sathya Gunasekaran <gsathya@chromium.org> > Commit-Queue: Mythri Alle <mythria@chromium.org> > Cr-Commit-Position: refs/heads/master@{#69294} TBR=rmcilroy@chromium.org,mythria@chromium.org,gsathya@chromium.org # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:10582 Bug: v8:9684 Change-Id: If985b6ff2641f33d0f53cbff6cc668d8c77d2bda Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2345965Reviewed-by:
Mythri Alle <mythria@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#69303}
-
evih authored
A new field for signature type was added to WasmExportedFunctionData. It is set to 0 or 1 depending on the parameter count. (It's set and being used only in 0 and 1 parameter cases.) Added new JS tests for 1 parameter wasm functions. Bug: v8:10701 Change-Id: I349d881a2860f1a50b91e08d0126ca71c5f6483b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2339622 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/master@{#69302}
-
- 07 Aug, 2020 6 commits
-
-
Mythri A authored
Temporarily turnoff dynamic map checks for TurboProp to measure the impact after changing OSR heuristics. Bug: v8:10582, v8:9684 Change-Id: Ia458be139bf7c281bda40cbcd76e7a0c3fa5d60b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2343070Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#69294}
-
Michael Achenbach authored
Bug: v8:10788 Change-Id: Iebc3f8dd892fd0f8123feaf11333eae6832589dc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2342852Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#69292}
-
Andreas Haas authored
Up until now. we only checked the size of tables defined in a module at instantiation time. For imported tables we only checked if the imported table matched the declared import in size. This causes a problem because we allocate function tables also for imported tabled before we actually look at the imported table. With this CL we first check the size of all tables, and only then start to initialize and load them. R=jkummerow@chromium.org Bug: chromium:1114006 Change-Id: Iaf194ed21fb83304fe3a7f0f7ba7b282396e3954 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2339473 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#69291}
-
Andreas Haas authored
The cast from uint32_t to int caused an integer overflow that let a bounds check succeed that should have failed. R=jkummerow@chromium.org Bug: chromium:1114005 Change-Id: Iea1af70af300be54c2a33d7dd10b3faa34d56eaa Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2339472Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#69289}
-
Marja Hölttä authored
The test have been rewritten to be more robust -> maybe they're robust enough for the GC fuzzer (DelayedTasksPlatform)? Bug: v8:10239 Change-Id: I743cc2f804357aaef888bff7985dfb68a7feec5f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2342848Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#69287}
-
Leszek Swirski authored
This reverts commit 60ee70bb. Reason for revert: wasm-api-tests/WasmCapiTest.Serialize starts flaking: https://crbug.com/v8/10784 Original change's description: > [wasm] Ensure that only TurboFan code is serialized > > We have the implicit assumption that Liftoff code will never be > serialized, and we start relying on that when implementing new features > (debugging, dynamic tiering). > > This CL makes the serializer fail if the module contains any Liftoff > code. Existing tests are changed to ensure that we fully tiered up > before serializing a module (similar to the logic in Chromium). > The "wasm-clone-module" test needs to serialize the module before > enabling the debugger. > > Note that chrome currently only serializes a module after it fully > tiered up, so that should be fine. If other embedders need the ability > to serialize a module in an arbitrary state, we will have to fix this > later. With this CL we will be on the safe side though and (gracefully) > fail serialization instead of accidentally serializing Liftoff code. > > R=ahaas@chromium.org > > Bug: v8:10777 > Change-Id: I1245e5f7fda3447a544c1e3525e1239cde759174 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2336799 > Commit-Queue: Clemens Backes <clemensb@chromium.org> > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Cr-Commit-Position: refs/heads/master@{#69276} TBR=ahaas@chromium.org,clemensb@chromium.org Change-Id: Ic1349375bd562bb0a2724c39c27ef3247461c97b No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:10777 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2342845Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#69284}
-
- 06 Aug, 2020 7 commits
-
-
Georg Neis authored
The test relies on certain maps not dying but didn't ensure that. Bug: v8:10783 Change-Id: I708f7fc027ee0bf5656be9bb4f29130f5b924597 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2340912Reviewed-by:
Marja Hölttä <marja@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Auto-Submit: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#69282}
-
Clemens Backes authored
We have the implicit assumption that Liftoff code will never be serialized, and we start relying on that when implementing new features (debugging, dynamic tiering). This CL makes the serializer fail if the module contains any Liftoff code. Existing tests are changed to ensure that we fully tiered up before serializing a module (similar to the logic in Chromium). The "wasm-clone-module" test needs to serialize the module before enabling the debugger. Note that chrome currently only serializes a module after it fully tiered up, so that should be fine. If other embedders need the ability to serialize a module in an arbitrary state, we will have to fix this later. With this CL we will be on the safe side though and (gracefully) fail serialization instead of accidentally serializing Liftoff code. R=ahaas@chromium.org Bug: v8:10777 Change-Id: I1245e5f7fda3447a544c1e3525e1239cde759174 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2336799 Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#69276}
-
Marja Hölttä authored
This is a reland of 28ead054 The failure is a test that is sensitive to adding a function in a FunctionTemplate in d8: https://bugs.chromium.org/p/v8/issues/detail?id=10783 Original change's description: > [Atomics.waitAsync] Fix removing multiple nodes when Isolate deinits > > RemoveNode already nullifies the next_ pointer of FutexWaitListNode, > and DeleteAsyncNode was trying to retrieve it. > > Bug: v8:10239 > Change-Id: I595885de87f433d263eeacfc825a689efd467f5e > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2332812 > Commit-Queue: Marja Hölttä <marja@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Shu-yu Guo <syg@chromium.org> > Cr-Commit-Position: refs/heads/master@{#69259} Bug: v8:10239 Tbr: leszeks@chromium.org Change-Id: Icec590354886433a0b41c8f9b7af7101b54b7690 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2339469Reviewed-by:
Marja Hölttä <marja@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/master@{#69275}
-
Marja Hölttä authored
Bug: v8:10783 No-Try: true Change-Id: I605813842af639158909bce13e162869b3cfc6db Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2339621 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/master@{#69273}
-
Leszek Swirski authored
This reverts commit 28ead054. Reason for revert: mjsunit/compiler/serializer-transition-propagation failure seems to bisect to this (despite looking unrelated): https://ci.chromium.org/p/v8/builders/ci/V8%20Linux64%20GC%20Stress%20-%20custom%20snapshot/32532 Original change's description: > [Atomics.waitAsync] Fix removing multiple nodes when Isolate deinits > > RemoveNode already nullifies the next_ pointer of FutexWaitListNode, > and DeleteAsyncNode was trying to retrieve it. > > Bug: v8:10239 > Change-Id: I595885de87f433d263eeacfc825a689efd467f5e > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2332812 > Commit-Queue: Marja Hölttä <marja@chromium.org> > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > Reviewed-by: Shu-yu Guo <syg@chromium.org> > Cr-Commit-Position: refs/heads/master@{#69259} TBR=ulan@chromium.org,marja@chromium.org,syg@chromium.org Change-Id: I5db179aec5a04f59770903b17d059a7150c7efbd No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:10239 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2339466Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#69271}
-
Andreas Haas authored
We used to check the size of tables at compile time, and threw a CompilationError if a given size exceeded the implementation-defined limit. However, the spec defines that an error should only be thrown when the implementation-defined limit is reached, which is either at instantiation time of during runtime at a table.grow. With this CL the V8 implementation becomes spec compliant in this regard. R=jkummerow@chromium.org Bug: v8:10556 Change-Id: I7d0e688b385a65e4060a569e5ab1dec68947ceea Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2326331 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by:
Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#69267}
-
Marja Hölttä authored
RemoveNode already nullifies the next_ pointer of FutexWaitListNode, and DeleteAsyncNode was trying to retrieve it. Bug: v8:10239 Change-Id: I595885de87f433d263eeacfc825a689efd467f5e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2332812 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Ulan Degenbaev <ulan@chromium.org> Reviewed-by:
Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/master@{#69259}
-
- 05 Aug, 2020 1 commit
-
-
Jakob Gruber authored
Just like the optimized code cache, the compiler should check the isolate cache for NCI code objects and return them if they exist. Drive-by: Skip additional tests to fix the nci_as_highest_tier test variant. These are related to interactions with deoptimization, which NCI code doesn't fully support yet. Bug: v8:8888 Change-Id: I6253811f96993796cfc38fff0da7ffb4f1a5eb24 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2339095 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by:
Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#69251}
-
- 04 Aug, 2020 2 commits
-
-
Ng Zhi An authored
This test uses a i64x2.shr_s to shift a v128 with all bits set by 1, resulting in v128 with all bits set (no change). This value is then dropped, and param[2] (3), is returned. Without the fix, -1 is returned, since i64x2.shr_s overwrites the register for param[2] with 0xffffffff. Bug: v8:10752 Bug: chromium:1111522 Change-Id: I0310bf6039be780a6738689069cdbcfa3a24bbdb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2335779 Commit-Queue: Zhi An Ng <zhin@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#69233}
-
Mythri A authored
Change-Id: I0117b0c2b646cb1005b63e9648d604b26581d977 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2335187Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#69229}
-
- 03 Aug, 2020 2 commits
-
-
Michael Achenbach authored
No-Try: true Change-Id: If5ed824ad3ea1a2815a0a48ed2668281733ac533 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2332603Reviewed-by:
Zhi An Ng <zhin@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Auto-Submit: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#69209}
-
Shu-yu Guo authored
This reached consensus in the July 2020 TC39: https://github.com/tc39/ecma262/pull/2054 Bug: v8:10769 Change-Id: Iecea1d9d9c9be5c2fbfb820aed2285719c4e6382 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2333350 Commit-Queue: Shu-yu Guo <syg@chromium.org> Reviewed-by:
Marja Hölttä <marja@chromium.org> Reviewed-by:
Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#69206}
-
- 31 Jul, 2020 2 commits
-
-
Mythri A authored
If incoming map is deprecated, generate code to migrate the map. Since this involves generating additional code and a call to runtime, we only do this if one of the receiver maps was a migration target when optimizing this function. If not, we deoptimize and discard the optimized code if we see a deprecated map. This is to avoid bailout loops when we see deprecated maps. This change does the following: // We generated code to migrate deprecated maps only if one of the maps // in feedback vector is a migration target. if ( there are migration targets in feedback) { if (checkMaps fails) { if (incoming map is deprecated) { migrate the map checkMaps with the new map } else { bailout } } } else { if (checkMaps fails) bailout; } Bug: v8:10582, v8:9684 Change-Id: I8a04c77ed209dd2fb0300a783d844f2335a678c8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2292231Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#69179}
-
Clemens Backes authored
If we are near the stack limit, calling the proxy method might not work any more. Instead of crashing because of an empty MaybeLocal, handle this gracefully. Drive-by: Minor refactoring in TryGetValue. R=tebbi@chromium.org Bug: chromium:1110001 Change-Id: I07e7773768166b3dbea2e6b75a3ab8b24bfeee53 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2332156Reviewed-by:
Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#69161}
-
- 29 Jul, 2020 2 commits
-
-
Georg Neis authored
The bug was that the allocation of the result array (before the loop) was using the outer frame state, thus returning the allocation's result (an array full of holes) as the return value of the map operation in case the allocation triggers a lazy deopt. Bug: chromium:1104514 Change-Id: I9a6db8a5860472e1b438b6b54414938d61e166c1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2324249Reviewed-by:
Jakob Gruber <jgruber@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#69129}
-
Mythri A authored
Bug: v8:10582, v8:9684 Change-Id: Ib29e9b56d4c722cb572e86def7eeb3f588dc9c2d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2316079Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Ross McIlroy <rmcilroy@chromium.org> Commit-Queue: Mythri Alle <mythria@chromium.org> Cr-Commit-Position: refs/heads/master@{#69128}
-
- 28 Jul, 2020 3 commits
-
-
Mythri A authored
This cl also 1. Fixes a bug in effect-control-linearizer where we should have converted fixed array length from Smi to integer 2. Also prints deopt location for the new "bailout" deopt type on --trace-deopt. Bug: v8:10582, v8:9684 Change-Id: Iafc5e8abbca5252a8783a5a1184a1667a7f708a4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2297460 Commit-Queue: Mythri Alle <mythria@chromium.org> Reviewed-by:
Georg Neis <neis@chromium.org> Reviewed-by:
Sathya Gunasekaran <gsathya@chromium.org> Cr-Commit-Position: refs/heads/master@{#69115}
-
Georg Neis authored
Bug: chromium:1109174 Change-Id: I25924afe9ad9c147e7f89299983032c82f74626d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2320668 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@{#69106}
-
evih authored
This generic wrapper builtin is currently used only when the wasm function has no parameters and no return value. Added a new V8 flag to use this generic wrapper. Also added a JS test function for this generic wrapper. Bug: v8:10701 Change-Id: Id8cd1771f26922927363b715d8a6ffd384a143ce Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2307240Reviewed-by:
Andreas Haas <ahaas@chromium.org> Reviewed-by:
Thibaud Michaud <thibaudm@chromium.org> Reviewed-by:
Clemens Backes <clemensb@chromium.org> Commit-Queue: Eva Herencsárová <evih@google.com> Cr-Commit-Position: refs/heads/master@{#69097}
-
- 27 Jul, 2020 1 commit
-
-
Marja Hölttä authored
This test should've been rewritten in the last batch rewrite but wasn't. Bug: v8:10239 Change-Id: Ic2949e6282f72975898ab7e9aefe3210bba71fbf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2319988 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by:
Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#69072}
-