- 28 Mar, 2022 3 commits
-
-
Dominik Inführ authored
Define ctors for BasicMemoryChunk, ReadOnlyPage, MemoryChunk, Page and LargePage. We can use those with placement-new to initialize pages. We now initialize chunks at once either for ReadOnlyPage, Page or LargePage. Previously initialization happened in multiple locations starting with BasicMemoryChunk::Initialize. Adding ctors to these classes should improve debugging, since debug info for classes without ctors was removed with the compiler flag `-fuse-ctor-homing`. Change-Id: Ib842bb9b1e93a6576cad8299b7c5dbfe299baa33 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3545092Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/main@{#79638}
-
jameslahm authored
According to https://tc39.es/ecma262/#sec-InnerModuleLinking step 10 and https://tc39.es/ecma262/#sec-source-text-module-record-initialize-environment step 8-25, variables must be declared in Link. And according to https://tc39.es/ecma262/#sec-module-namespace-exotic-objects-get-p-receiver, accessing the exported variable with the hole value should throw uninitialized error. Bug: v8:12729 Change-Id: I6fd2fcc580f7bafca986448b37adb8ba8f077929 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3552281Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#79637}
-
Danylo Boiko authored
Bidirectional phase switching by shortcuts "n", "b". Improved selection of nodes when they are splitting or raising to a common ancestor. Fixed minor inconsistencies in some variable names with the project style. Added name and email to the AUTHORS file for first-time contribution. Change-Id: I0c903dbf81c3d1d75503004ce412a81aace06a61 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3537008Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/main@{#79636}
-
- 26 Mar, 2022 4 commits
-
-
Frank Tang authored
Spec Text: https://tc39.es/proposal-temporal/#sec-temporal.calendar.prototype.year Note- this is only the non-intl version. intl version in https://tc39.es/proposal-temporal/#sup-temporal.calendar.prototype.year will be implemented in later cl. Bug: v8:11544 Change-Id: Ifadcdb4efe00a9954d5ac4c1154420c4903f28d5 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3531553Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/main@{#79635}
-
Frank Tang authored
Spec Text: https://tc39.es/proposal-temporal/#sec-temporal.calendar.prototype.daysinyear Note- this is only the non-intl version. intl version in https://tc39.es/proposal-temporal/#sup-temporal.calendar.prototype.daysinyear will be implemented in later cl. Bug: v8:11544 Change-Id: I627fcf82641659c4697395057ee664a37f237228 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3531557Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/main@{#79634}
-
Frank Tang authored
Also add AO: CreateNegatedTemporalDuration Spec Text: https://tc39.es/proposal-temporal/#sec-temporal.duration.prototype.abs https://tc39.es/proposal-temporal/#sec-temporal.duration.prototype.negated https://tc39.es/proposal-temporal/#sec-temporal-createnegatedtemporalduration Bug: v8:11544 Change-Id: Ie522a7446f40c946c30f2e90c5f6c7fbc96c41eb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3380101Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/main@{#79633}
-
jameslahm authored
... with zero cost. Bug: v8:9357 Change-Id: I66985c3fd3e7b4efa354eb564c641562cf55ab49 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3518909Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#79632}
-
- 25 Mar, 2022 16 commits
-
-
Tobias Tebbi authored
This reverts commit 2ee36e4c. Reason for revert: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux64%20UBSan/20570/overview Original change's description: > [maglev] Remove input_count from Node constructors > > Change the NodeBase bitfield to be out-of-line, and initialised by > NodeBase::Allocate. This means that we don't have to thread the > input_count through the Derived constructor just to pass it back into > the NodeBase constructor, and so we can remove those arguments (plus the > opcode ones while we're at it). > > Bug: v8:7700 > Change-Id: I0c96db8cdd05ef106b3cfeb31c5e0d4770d13cc9 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3553103 > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Cr-Commit-Position: refs/heads/main@{#79627} Bug: v8:7700 Change-Id: Ice38908e85f2980dbbe66c61fab17326b3d0be41 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3553005 Owners-Override: Tobias Tebbi <tebbi@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/main@{#79631}
-
André Kempe authored
This patch enables PAC and BTI for runtime generated code when PAC is enabled. Additional BTI landing pads will resolve to NOOP when running on non BTI device and will not cause functional problems. Change-Id: I3993481df2c3c47e3e81bfb76a8c355f642cd572 Bug: chromium:919548, v8:10026 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3548457Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Andre Kempe <andre.kempe@arm.com> Cr-Commit-Position: refs/heads/main@{#79630}
-
Tobias Tebbi authored
This reverts commit f124b28d. Reason for revert: https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket/8818719400214419665/+/u/Check_-_stress_concurrent_allocation__flakes_/flush-baseline-code Original change's description: > [heap] Only start incremental marking when V8 is not in GC VM state. > > Bug: v8:12503 > Change-Id: Icda291d9770c46c7fee3c70dd4df97f320b1956a > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3398113 > Reviewed-by: Michael Lippautz <mlippautz@chromium.org> > Commit-Queue: Hannes Payer <hpayer@chromium.org> > Cr-Commit-Position: refs/heads/main@{#79623} Bug: v8:12503 Change-Id: I067b308cfc4511d89144d2bb65a1dba24db62179 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3553104 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Owners-Override: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/main@{#79629}
-
legendecas authored
Implement WrappedFunction properties name/length. Bug: v8:11989 Change-Id: I050af5814537552ef6c2077802ffc726f2e08fa3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3507201Reviewed-by: Shu-yu Guo <syg@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Chengzhong Wu <legendecas@gmail.com> Cr-Commit-Position: refs/heads/main@{#79628}
-
Leszek Swirski authored
Change the NodeBase bitfield to be out-of-line, and initialised by NodeBase::Allocate. This means that we don't have to thread the input_count through the Derived constructor just to pass it back into the NodeBase constructor, and so we can remove those arguments (plus the opcode ones while we're at it). Bug: v8:7700 Change-Id: I0c96db8cdd05ef106b3cfeb31c5e0d4770d13cc9 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3553103Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#79627}
-
Tobias Tebbi authored
This reverts commit 6819f75d. Reason for revert: https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket/8818719400214419665/+/u/Check_-_minor_mc/loop-unrolling Original change's description: > Reland "Reland "[baseline] Enable concurrent sparkplug"" > > This reverts commit 5d6a16fb. > > Reason for revert: it was a flake > > Original change's description: > > Revert "Reland "[baseline] Enable concurrent sparkplug"" > > > > This reverts commit fee91f9a. > > > > Reason for revert: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Mac64/44699/overview > > > > Original change's description: > > > Reland "[baseline] Enable concurrent sparkplug" > > > > > > Issue that cause the revert was fixed: v8:12713 > > > https://bugs.chromium.org/p/v8/issues/detail?id=12713 > > > > > > This is a reland of commit f01a6098 > > > > > > Original change's description: > > > > [baseline] Enable concurrent sparkplug > > > > > > > > Bug: v8:12054 > > > > Change-Id: I1b0ee1a9541a75412b882b259e421aa6e88317da > > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3259658 > > > > Auto-Submit: Victor Gomes <victorgomes@chromium.org> > > > > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > > > > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > > > > Cr-Commit-Position: refs/heads/main@{#79485} > > > > > > Bug: v8:12054 > > > Change-Id: Iafba22e3fa3b38eddb226db6cd5afdb7e3e6b435 > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3528992 > > > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > > > Commit-Queue: Victor Gomes <victorgomes@chromium.org> > > > Cr-Commit-Position: refs/heads/main@{#79618} > > > > Bug: v8:12054 > > Change-Id: I3ba60433fdbb5617900c83d022e4dd6f830695f9 > > No-Presubmit: true > > No-Tree-Checks: true > > No-Try: true > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3550271 > > Auto-Submit: Tobias Tebbi <tebbi@chromium.org> > > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > > Owners-Override: Tobias Tebbi <tebbi@chromium.org> > > Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> > > Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> > > Cr-Commit-Position: refs/heads/main@{#79619} > > Bug: v8:12054 > Change-Id: Ia0fe1df00f5e715ceda46fbcdc48aed0f0190362 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3550272 > Owners-Override: Tobias Tebbi <tebbi@chromium.org> > Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > Reviewed-by: Victor Gomes <victorgomes@chromium.org> > Cr-Commit-Position: refs/heads/main@{#79622} Bug: v8:12054 Change-Id: I5e75f0467d5617bb6e81d7d0031f298c09194685 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3553107 Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Tobias Tebbi <tebbi@google.com> Owners-Override: Tobias Tebbi <tebbi@google.com> Cr-Commit-Position: refs/heads/main@{#79626}
-
Igor Sheludko authored
Stores to undeclared global in strict mode should throw ReferenceError. Bug: chromium:1309225 Change-Id: Iac7c55da2ff9c16e488b4fc66408c5300469873e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3553099 Commit-Queue: Igor Sheludko <ishell@chromium.org> Auto-Submit: Igor Sheludko <ishell@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/main@{#79625}
-
Michael Achenbach authored
This is a reland of commit 1289704a Mac-arm64 problem fixed by: https://crrev.com/c/3550199 Original change's description: > [tools] Clean up py2 code > > Bug: chromium:1292013 > Change-Id: Ic2c3a197005a2136bb0eda4cbb36d8eb57f42a7c > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3523047 > Reviewed-by: Liviu Rau <liviurau@chromium.org> > Commit-Queue: Michael Achenbach <machenbach@chromium.org> > Cr-Commit-Position: refs/heads/main@{#79507} Bug: chromium:1292013 Change-Id: Iadf0ccf94c82012088b76a866296c8e008dff02f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3550274Reviewed-by: Liviu Rau <liviurau@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/main@{#79624}
-
Hannes Payer authored
Bug: v8:12503 Change-Id: Icda291d9770c46c7fee3c70dd4df97f320b1956a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3398113Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Hannes Payer <hpayer@chromium.org> Cr-Commit-Position: refs/heads/main@{#79623}
-
Tobias Tebbi authored
This reverts commit 5d6a16fb. Reason for revert: it was a flake Original change's description: > Revert "Reland "[baseline] Enable concurrent sparkplug"" > > This reverts commit fee91f9a. > > Reason for revert: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Mac64/44699/overview > > Original change's description: > > Reland "[baseline] Enable concurrent sparkplug" > > > > Issue that cause the revert was fixed: v8:12713 > > https://bugs.chromium.org/p/v8/issues/detail?id=12713 > > > > This is a reland of commit f01a6098 > > > > Original change's description: > > > [baseline] Enable concurrent sparkplug > > > > > > Bug: v8:12054 > > > Change-Id: I1b0ee1a9541a75412b882b259e421aa6e88317da > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3259658 > > > Auto-Submit: Victor Gomes <victorgomes@chromium.org> > > > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > > > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > > > Cr-Commit-Position: refs/heads/main@{#79485} > > > > Bug: v8:12054 > > Change-Id: Iafba22e3fa3b38eddb226db6cd5afdb7e3e6b435 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3528992 > > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > > Commit-Queue: Victor Gomes <victorgomes@chromium.org> > > Cr-Commit-Position: refs/heads/main@{#79618} > > Bug: v8:12054 > Change-Id: I3ba60433fdbb5617900c83d022e4dd6f830695f9 > No-Presubmit: true > No-Tree-Checks: true > No-Try: true > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3550271 > Auto-Submit: Tobias Tebbi <tebbi@chromium.org> > Commit-Queue: Tobias Tebbi <tebbi@chromium.org> > Owners-Override: Tobias Tebbi <tebbi@chromium.org> > Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> > Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> > Cr-Commit-Position: refs/heads/main@{#79619} Bug: v8:12054 Change-Id: Ia0fe1df00f5e715ceda46fbcdc48aed0f0190362 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3550272 Owners-Override: Tobias Tebbi <tebbi@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#79622}
-
jameslahm authored
We could optimize String#startsWith in JSCallReducer for three conditions: - If search_element is definitely not a string, we make no change. - If search_element is definitely a string and its length is less or equal than max inline matching sequence threshold, we could inline the entire matching sequence. - Else we try to inline, and have a runtime deopt if search_element is not a string. Bug: v8:8400 Change-Id: I505090b91d35fbc2c91cdf985717c68135cba807 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3517936Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/main@{#79621}
-
Anton Bikineev authored
Bug: chromium:1029379 Change-Id: Ia1de91ab0ffc63912ce26349d095881a7a141ff8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3550269Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Commit-Queue: Anton Bikineev <bikineev@chromium.org> Cr-Commit-Position: refs/heads/main@{#79620}
-
Tobias Tebbi authored
This reverts commit fee91f9a. Reason for revert: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Mac64/44699/overview Original change's description: > Reland "[baseline] Enable concurrent sparkplug" > > Issue that cause the revert was fixed: v8:12713 > https://bugs.chromium.org/p/v8/issues/detail?id=12713 > > This is a reland of commit f01a6098 > > Original change's description: > > [baseline] Enable concurrent sparkplug > > > > Bug: v8:12054 > > Change-Id: I1b0ee1a9541a75412b882b259e421aa6e88317da > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3259658 > > Auto-Submit: Victor Gomes <victorgomes@chromium.org> > > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > > Cr-Commit-Position: refs/heads/main@{#79485} > > Bug: v8:12054 > Change-Id: Iafba22e3fa3b38eddb226db6cd5afdb7e3e6b435 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3528992 > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Commit-Queue: Victor Gomes <victorgomes@chromium.org> > Cr-Commit-Position: refs/heads/main@{#79618} Bug: v8:12054 Change-Id: I3ba60433fdbb5617900c83d022e4dd6f830695f9 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3550271 Auto-Submit: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Owners-Override: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#79619}
-
Victor Gomes authored
Issue that cause the revert was fixed: v8:12713 https://bugs.chromium.org/p/v8/issues/detail?id=12713 This is a reland of commit f01a6098 Original change's description: > [baseline] Enable concurrent sparkplug > > Bug: v8:12054 > Change-Id: I1b0ee1a9541a75412b882b259e421aa6e88317da > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3259658 > Auto-Submit: Victor Gomes <victorgomes@chromium.org> > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > Commit-Queue: Toon Verwaest <verwaest@chromium.org> > Cr-Commit-Position: refs/heads/main@{#79485} Bug: v8:12054 Change-Id: Iafba22e3fa3b38eddb226db6cd5afdb7e3e6b435 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3528992Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#79618}
-
Lu Yahan authored
Change-Id: Iac021f8666058042f5c26cf07d0f3810a1d451fc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3528374 Auto-Submit: Yahan Lu <yahan@iscas.ac.cn> Reviewed-by: ji qiu <qiuji@iscas.ac.cn> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Yahan Lu <yahan@iscas.ac.cn> Cr-Commit-Position: refs/heads/main@{#79617}
-
Darshan Sen authored
This fixes the following compiler warning: ``` src/compiler/backend/mid-tier-register-allocator.cc:2046:26: warning: loop variable 'succ' of type 'const v8::internal::compiler::RpoNumber' creates a copy from type 'const v8::internal::compiler::RpoNumber' [-Wrange-loop-analysis] for (const RpoNumber succ : block->successors()) { ^ src/compiler/backend/mid-tier-register-allocator.cc:2046:10: note: use reference type 'const v8::internal::compiler::RpoNumber &' to prevent copying for (const RpoNumber succ : block->successors()) { ^~~~~~~~~~~~~~~~~~~~~~ & ``` Signed-off-by: Darshan Sen <raisinten@gmail.com> Change-Id: I41a9b6aa1ee16bf140f326410ae864b425509c2d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3538285Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/main@{#79616}
-
- 24 Mar, 2022 17 commits
-
-
Andrey Kosyakov authored
Bug: v8:1306483 Change-Id: I2f1baf1374e82418c117f9126db2388b84ef46ef Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3530110Reviewed-by: Almothana Athamneh <almuthanna@chromium.org> Commit-Queue: Andrey Kosyakov <caseq@chromium.org> Cr-Commit-Position: refs/heads/main@{#79615}
-
Marja Hölttä authored
They make assumptions which don't hold for API handlers. Bug: v8:9237,chromium:1308360 Change-Id: I9f122c4e75a24d83ef3653cbf7a223ed522e4d13 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3548899Reviewed-by: Igor Sheludko <ishell@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/main@{#79614}
-
Igor Sheludko authored
Bug: chromium:1309225 Change-Id: Ifd62639a2aa18b633e7cf36632677ee16c977afd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3548458Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#79613}
-
Milad Fa authored
P10 comes with prefixed instruction (2 x 4-byte instructions) which allow for using larger immediate values. `paddi` has been added in this CL which uses a 34-bit immediate. Prefixed instructions cannot cross 64-byte boundaries, i.e we cannot have the first 4-bytes on one side and the second 4-bytes emitted on the other side of the boundary. Therefore we need to align generated code to 64 bytes and emit a nop whenever the boundary is being crossed midway (check emit_prefix). Change-Id: I90e9953089214e15eeef0d70147ea5943fe05f45 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3528993Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#79612}
-
Darius M authored
Commit 0719ace6 improves the code generated for comparisons by avoiding the materalization of the comparison bit. Now, this commit aims at doing this same improvement for binary operations. Since binary operations set the ZF flag, there is no reason to insert a "== 0" comparison. Note that this commit might increase register pressure, which might actually reduce performance. It's hard to anticipate, so we'll land it, and revert it if it's actually bad for performance. Bug: v8:12484 Change-Id: I963f0c4afdd59b35b4bac468e47d987836433163 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3545165Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Darius Mercadier <dmercadier@chromium.org> Cr-Commit-Position: refs/heads/main@{#79611}
-
Shu-yu Guo authored
Add a test for the case where SlicedStrings of ThinStrings are looked up in the string table, testing the path that the original string's length differs from the actual string's length. Bug: chromium:1309767 Change-Id: I909c64397bf28ec33c3324d94882fbfe81ac4109 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3549837Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Shu-yu Guo <syg@chromium.org> Auto-Submit: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#79610}
-
Victor Gomes authored
Maglev compilation can currently fail, e.g with unsupported bytecodes. Bug: v8:7700 Change-Id: I837d69a5f9c27d4dc6fa9d03369f045fb5175d61 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3541921Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Victor Gomes <victorgomes@chromium.org> Auto-Submit: Victor Gomes <victorgomes@chromium.org> Cr-Commit-Position: refs/heads/main@{#79609}
-
Nico Hartmann authored
Bug: chromium:1309769, v8:12619 Change-Id: I880c7326f2ec91f1aa985d6b7ed67f8f5afc074b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3548897 Auto-Submit: Nico Hartmann <nicohartmann@chromium.org> Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Cr-Commit-Position: refs/heads/main@{#79608}
-
Leszek Swirski authored
Change Checkpoints from IR Nodes to just normal Zone objects, pointed to by the deopting Node. Also merge Checkpoint and DeoptimizationInfo -- this has the side effect that multiple Nodes that share a checkpoint will point to the exact same deopt call. Bug: v8:7700 Change-Id: Ib36aa13afe3af6a0a22d2cfe80a13fef4bea1227 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3545179 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/main@{#79607}
-
Anton Bikineev authored
Currently, OSB can not be safely accessed if sweeping is in progress. This can, however, be easily lifted with atomic stores. Having the consistent bitmap is needed for the generational barrier for source objects (to retrieve the source object beginning). Bug: chromium:1029379 Change-Id: I5fb8db579f881ddf240ce68ad51fa8264ee645dc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3545071Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Omer Katz <omerkatz@chromium.org> Commit-Queue: Anton Bikineev <bikineev@chromium.org> Cr-Commit-Position: refs/heads/main@{#79606}
-
Marja Hölttä authored
It's hitting unimplemented code paths. Bug: v8:11111, v8:12731 Change-Id: Icbffced6cbe207426363daa5f3b9ff5677b58b6c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3548816Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Marja Hölttä <marja@chromium.org> Cr-Commit-Position: refs/heads/main@{#79605}
-
Marja Hölttä authored
This reverts commit 9c3d4b35. Reason for revert: This is not the right fix (see bug). Original change's description: > [super IC] Fix receiver vs lookup start object confusion > > Bug: v8:9237,chromium:1308360 > Change-Id: I11e3c14a6cecb9d88a834711fb6252191494d5f7 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3545172 > Reviewed-by: Igor Sheludko <ishell@chromium.org> > Commit-Queue: Marja Hölttä <marja@chromium.org> > Cr-Commit-Position: refs/heads/main@{#79571} Bug: v8:9237,chromium:1308360 Change-Id: I0efa6ab561482ffc323b63500acfeb80598f3e7c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3548896 Auto-Submit: Marja Hölttä <marja@chromium.org> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Cr-Commit-Position: refs/heads/main@{#79604}
-
Joyee Cheung authored
- When the property being defined with DefineKeyedOwnIC or DefineNamedOwnIC already exists, we should use the slow path to check if the operation is allowed in case the property is non-configurable or Object.preventExtensions() has been called on the property. - Since KeyedStoreIC:Store() reuses StoreIC::Store() when the key is a name, we should use Runtime::DefineObjectOwnProperty() for DefineKeyedOwnIC too. - When dealing with public fields, Runtime::DefineObjectOwnProperty() should use JSReceiver::CreateDataProperty() instead of Object::SetProperty() for the specified semantics. This patch also adds JSReceiver::AddPrivateField() for it and StoreIC::Store to define private fields without triggering traps or checking extensibility. - To emit a more specific error message when redefining properties on non-extensible objects, Object::AddDataProperty() now also takes a EnforceDefineSemantics enum to distinguish between set and define. - Drive-by: fix JSReceiver::CheckIfCanDefine() which should check for extensibility even if the configurability check passes. Bug: chromium:1259950, v8:9888 Change-Id: Ib1bc851ffd4b9c3a0e98cac96dafe743c08ee37e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3517934Reviewed-by: Shu-yu Guo <syg@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Joyee Cheung <joyee@igalia.com> Cr-Commit-Position: refs/heads/main@{#79603}
-
Leszek Swirski authored
Remove StoreToFrame and the general diff encoding for checkpoints, and instead make all Checkpoints immediately copy the live part of the interpreter frame state. This means that we don't need to recreate the frame state during graph processing, and we don't have to copy the checkpoint's state for storing in the deferred DeoptimizationInfo. In theory the diff encoding was meant to save zone memory for unused checkpoints, and for checkpoints that don't differ much from each other. However, a) We expect to do most checkpoint elimination during graph building, so the assumption that many checkpoints will be unused seems less probable, and b) We need to copy the checkpoint's frame state for emitting deopts, so we don't actually end up avoiding doing the copies. So, we can simplify things by removing this complexity. Bug: v8:7700 Change-Id: Iff9743fabbf7a017cccf0ece76a797c571764ea6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3545178Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#79602}
-
Thibaud Michaud authored
This is a reland of commit d9e1f2ae Change: disable regression test on non-SIMD hardware Original change's description: > [wasm][liftoff] Spill regs for multi-value merges > > If there is more than one value in the merge region, a stack-to-stack > move can overwrite the source of a stack-to-register move. To avoid > this, spill all registers. > > R=clemensb@chromium.org > > Bug: chromium:1299183 > Change-Id: I10495434d0a18c9072ee3882e00a687edd8c592a > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3523044 > Reviewed-by: Clemens Backes <clemensb@chromium.org> > Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> > Cr-Commit-Position: refs/heads/main@{#79584} Bug: chromium:1299183 Change-Id: I6f2af786ab91194a93945f5030575d1b8abee7fd Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3548716Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/main@{#79601}
-
Leszek Swirski authored
Rather than emitting eager deopt code inline, use the full DeoptimizationData+TranslationArray mechanism in maglev, for consistency with TurboFan and simplification of implementing lazy deopts in the future. Bug: v8:7700 Change-Id: I67282b27493772c78ad28feaa4ad6a2c35c8e239 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3545169Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#79600}
-
Leszek Swirski authored
This reverts commit 802c7b3e. Reason for revert: Cluserfuzz found a reason to have this. Original change's description: > [string] DCHECK instead of test that ThinString's actuals have same length > > ThinStrings always forward to internalized strings that have the same > character contents and thus the same length. > > Change-Id: I5929d266f96b23029f4786baf993a431cf4ad38d > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3541522 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Commit-Queue: Shu-yu Guo <syg@chromium.org> > Cr-Commit-Position: refs/heads/main@{#79582} Change-Id: Ib8a7b962242f8b8ab3ffc5c70ed1c84d187e5b8e No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3548459 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#79599}
-