- 22 Oct, 2019 18 commits
-
-
Jakob Gruber authored
This CL removes the V8_EMBEDDED_BUILTINS define, FLAG_embedded_builtins, and all code for supporting non-embedded-builtin builds. Bug: v8:6666,v8:8519 Change-Id: I2ad7bd6614c7cd404b83d3d2bf5ff91d7b55ff2a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1866569 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#64461}
-
Ulan Degenbaev authored
These are useful for the cases when an embedder works with backing stores without creating JS ArrayBuffer objects. Bug: v8:9380 Change-Id: I452bd911e7b20fb38568f18f9d15ea1a7ffb5a57 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1825339 Commit-Queue: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#64460}
-
Santiago Aboy Solanes authored
This is a reland of f5611402 We had to revert due to branch cut. The A/B experiment wasn't done yet. Original change's description: > [ptr-compr][arm64] Temporarily enable pointer compression on arm64 > > ... and make sure that the arm64 ptr-compr bots proceed testing V8 without > pointer compression in order to keep testing the other config. > > Commented out the 'extra' variant since it was crashing. Opened a bug > regarding that: https://bugs.chromium.org/p/v8/issues/detail?id=9568 > > Similar to x64's https://chromium-review.googlesource.com/c/v8/v8/+/1607654 > > Bug: v8:7703 > Change-Id: Ifd46b029bab34524f9f536dcdbd1574f2ddcbf37 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1724216 > Reviewed-by: Tamer Tas <tmrts@chromium.org> > Reviewed-by: Michael Achenbach <machenbach@chromium.org> > Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> > Cr-Commit-Position: refs/heads/master@{#63019} Bug: v8:7703 Change-Id: I28726f534dfd17dd695a3ba5653873368e7a44b0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1872403Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#64459}
-
Dominik Inführ authored
This CL ensures that recorded slots are either in the sweeping or the old-to-new remembered set after mark-compact depending on whether the page was already swept or not. All pages that are swept during the evacuation phase also have their remembered sets merged. is_local() is renamed to is_compaction_space() and non-virtual. The PagedSpace now not only knows whether it is a compaction space or not but also for which collection through the compaction_space_kind_ field. This allows RefillFreeList to merge the remembered sets immediately also for the mark-compact collection. Change-Id: I7457f8393d73f3e8d6b6ebedc46ebc36af509729 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1868613Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Dominik Inführ <dinfuehr@chromium.org> Cr-Commit-Position: refs/heads/master@{#64458}
-
Andreas Haas authored
R=jkummerow@chromium.org Bug: v8:9810 Change-Id: I85fa659a67b1f9f2d94cdc6107e19f9da1889fd0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1872401Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Andreas Haas <ahaas@chromium.org> Cr-Commit-Position: refs/heads/master@{#64457}
-
Simon Zünd authored
This CL removes the 'v8_enable_embedded_builtins' GN argument and sets the 'V8_EMBEDDED_BUILTIN' define unconditionally. Removing the now obsolete 'define' and corresponding C++ code will be done in a separate CL. R=machenbach@chromium.org Bug: v8:8519 Change-Id: Ibaa3e958121931c0ce14baf48ad401fab87c5337 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1864929 Commit-Queue: Simon Zünd <szuend@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#64456}
-
Toon Verwaest authored
Parenthesized variable names are valid references for assignment. To make sure we can properly mark the variable as assigned, we should push parenthesized variables to the outer expression scope after the parenthesized expression is guaranteed to not be an arrow head; so that the variable list of the parent is complete. Technically we could probably get by with simply pushing a single variable, since more complex expressions aren't valid parenthesized assignment targets: (a) = ... and [(a),(b)] = ... are valid, but ([a,b]) = ... isn't. It doesn't really seem worth it though. Bug: chromium:1015372 Change-Id: I095c35126742a14d0171537b9795f7258c33ab4d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1872389 Commit-Queue: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#64455}
-
David Carlier authored
Those two BSD flavors supports this API since long years and underlyingly it is a ChaCha flavor with good performances. Change-Id: Ic4266f5ef3e17af95de97844a6b7ebba4a56802d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1869200Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64454}
-
Clemens Backes authored
This reverts commit 392a1217. Reason for revert: Several failures on mac64 gc stress: https://ci.chromium.org/p/v8/builders/ci/V8%20Mac64%20GC%20Stress/9747 Original change's description: > Reland "Reland "[runtime] Remove extension slots from context objects"" > > This is a reland of c48096d4 > > Original change's description: > > Reland "[runtime] Remove extension slots from context objects" > > > > This is a reland of c07c02e1 > > > > Original change's description: > > > [runtime] Remove extension slots from context objects > > > > > > Context objects have an extension slot, which contains further > > > additional data that depends on the type of the context. > > > > > > This CL removes the extension slot from contexts that don't need > > > them, hence reducing memory. > > > > > > The following contexts will still have an extension slot: native, > > > module, await, block and with contexts. See objects/contexts.h for > > > what the slot is used for. > > > The following contexts will not have an extension slot anymore (they > > > were not used before): script, catch and builtin contexts. > > > Eval and function contexts only have the extension slot if they > > > contain a sloppy eval. > > > > > > Bug: v8:9744 > > > Change-Id: I8ca56c22fa02437bbac392ea72174ebfca80e030 > > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1863191 > > > Commit-Queue: Victor Gomes <victorgomes@google.com> > > > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > > > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > > > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > > > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > > > Auto-Submit: Victor Gomes <victorgomes@google.com> > > > Cr-Commit-Position: refs/heads/master@{#64372} > > > > TBR=verwaest@chromium.org,jgruber@chromium.org,ulan@chromium.org,leszeks@chromium.org,petermarshall@chromium.org > > > > Bug: v8:9744 > > Change-Id: I0749cc2d8f59940c25841736634a70047116d647 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1869192 > > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > > Commit-Queue: Peter Marshall <petermarshall@chromium.org> > > Auto-Submit: Victor Gomes <victorgomes@google.com> > > Cr-Commit-Position: refs/heads/master@{#64380} > > TBR=verwaest@chromium.org,jgruber@chromium.org,ulan@chromium.org,leszeks@chromium.org,petermarshall@chromium.org > > Bug: v8:9744 > Change-Id: I621ffe98722f8c4defaf277b8d1666484ba2963f > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1872400 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > Commit-Queue: Victor Gomes <victorgomes@google.com> > Cr-Commit-Position: refs/heads/master@{#64451} TBR=ulan@chromium.org,jgruber@chromium.org,petermarshall@chromium.org,leszeks@chromium.org,verwaest@chromium.org,victorgomes@google.com Change-Id: I99a71180c6a00a87478867a8210ff9ceb46cb3ee No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9744 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1872405Reviewed-by: Clemens Backes <clemensb@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64453}
-
Dan Elphick authored
If the same VariableProxy is added to a ThreadedList twice, it will introduce a cycle which would cause a DCHECK failure on the next Add. This makes it DCHECK as soon as an element is added that already has a "next" value set. Change-Id: I720ff6100d8d43e264726039ddaf97c205a5062f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1872391 Auto-Submit: Dan Elphick <delphick@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Reviewed-by: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64452}
-
Victor Gomes authored
This is a reland of c48096d4 Original change's description: > Reland "[runtime] Remove extension slots from context objects" > > This is a reland of c07c02e1 > > Original change's description: > > [runtime] Remove extension slots from context objects > > > > Context objects have an extension slot, which contains further > > additional data that depends on the type of the context. > > > > This CL removes the extension slot from contexts that don't need > > them, hence reducing memory. > > > > The following contexts will still have an extension slot: native, > > module, await, block and with contexts. See objects/contexts.h for > > what the slot is used for. > > The following contexts will not have an extension slot anymore (they > > were not used before): script, catch and builtin contexts. > > Eval and function contexts only have the extension slot if they > > contain a sloppy eval. > > > > Bug: v8:9744 > > Change-Id: I8ca56c22fa02437bbac392ea72174ebfca80e030 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1863191 > > Commit-Queue: Victor Gomes <victorgomes@google.com> > > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > > Auto-Submit: Victor Gomes <victorgomes@google.com> > > Cr-Commit-Position: refs/heads/master@{#64372} > > TBR=verwaest@chromium.org,jgruber@chromium.org,ulan@chromium.org,leszeks@chromium.org,petermarshall@chromium.org > > Bug: v8:9744 > Change-Id: I0749cc2d8f59940c25841736634a70047116d647 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1869192 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Commit-Queue: Peter Marshall <petermarshall@chromium.org> > Auto-Submit: Victor Gomes <victorgomes@google.com> > Cr-Commit-Position: refs/heads/master@{#64380} TBR=verwaest@chromium.org,jgruber@chromium.org,ulan@chromium.org,leszeks@chromium.org,petermarshall@chromium.org Bug: v8:9744 Change-Id: I621ffe98722f8c4defaf277b8d1666484ba2963f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1872400Reviewed-by: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Peter Marshall <petermarshall@chromium.org> Commit-Queue: Victor Gomes <victorgomes@google.com> Cr-Commit-Position: refs/heads/master@{#64451}
-
Georg Neis authored
... and make the printing more consistent. Bug: v8:9518 Change-Id: I6e8b595124974ec7f8e5003624bd33d2b0787ac0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1864948Reviewed-by: Michael Stanton <mvstanton@chromium.org> Commit-Queue: Georg Neis <neis@chromium.org> Auto-Submit: Georg Neis <neis@chromium.org> Cr-Commit-Position: refs/heads/master@{#64450}
-
Tobias Tebbi authored
Name mangling is hard to get right and not easy to read. This CL replaces the remaining name mangling of types and generics with simpler names that are not always unique, but then fixes them up by appending a unique counter. For struct types, this required an @export annotation since we use some struct types in CSA. Drive-by-fixes: - Overwrite the copy constructor of Type to clear the list of alias names when creating a new type. - Change the existing append-a-number scheme to have different counters for each name. This the number of changed names when adding something and is more readable. Bug: v8:7793 Change-Id: Ied11ea1a251130f4562ddc0d81967368349e0bf6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1866650 Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#64449}
-
lybvinci authored
When is_component_build is true, cctest will compile error, because the dependencies is not exported.these files will failed:test-utils -arm64.cc,test-strings.cc. Change-Id: I4bcdde08199f21454ec6d7e230d9d096c0315eac Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1873447Reviewed-by: Benedikt Meurer <bmeurer@chromium.org> Commit-Queue: Benedikt Meurer <bmeurer@chromium.org> Cr-Commit-Position: refs/heads/master@{#64448}
-
Michael Achenbach authored
Change-Id: I386570ae6881ad7831f6da69b4e727d05fec8f44 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1872397Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#64447}
-
Jakob Gruber authored
The natives blob was deprecated in V8 7.8. This CL removes all related functionality, including: - Build system support, i.e.: generation of natives_blob.bin and the v8_extra_library_files gn flag. - Related scripts (js2c.py, concatenate-files.py). - Related API functions (SetNativesDataBlob, InitializeExternalStartupData). - Natives bootstrapping logic. - The InternalArray type (previously exposed through natives). - Other natives-exposed builtins. - Inlining of these builtins. - The dedicated 'uncached external one byte string' type. Step 1 landed in https://crrev.com/c/1824944. Step 2 landed in https://crrev.com/c/1835536. Step 3 (this CL) removes these all functionality related to natives support in V8. Bug: v8:7624 Change-Id: Ice6c2662781efe8417231805276476d32bc5a625 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1844771 Commit-Queue: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Tamer Tas <tmrts@chromium.org> Reviewed-by: Yang Guo <yangguo@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Cr-Commit-Position: refs/heads/master@{#64446}
-
Michael Achenbach authored
This reverts commit 5d57f4e1. Reason for revert: https://ci.chromium.org/p/v8/builders/ci/V8%20Blink%20Linux/1332 Original change's description: > [Intl] Ship calendar and numberingSystem options > > Ship the "calendar" and "numberingSystem" options for > Intl.DateTimeFormat (both options) and Intl.NumberFormat (only the later > one) and support other calendar. Also consider the calendar while > choosing calendar pattern. > > I2L: http://shorturl.at/bgkAH > I2S: http://shorturl.at/nuKUV > > Flags: --harmony-intl-add-calendar-numbering-system > --harmony-intl-other-calendars > > API owner approvals: chrishtr@ yoav@yoav.ws bratell.d@gmail.com > > Plan to land into m80 tree and only merge after 10/17 m79 branch off. > > Bug: v8:9154, v8:9155, v8:9320 > Change-Id: Ifa209919a40db60465f99405f3620a3b73b10204 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1838436 > Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> > Commit-Queue: Frank Tang <ftang@chromium.org> > Cr-Commit-Position: refs/heads/master@{#64437} TBR=adamk@chromium.org,jkummerow@chromium.org,ftang@chromium.org Change-Id: I4b4f44ccdd771160161094beaaeb76d9d0dc005e No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9154, v8:9155, v8:9320 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1872396Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/master@{#64445}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/7136ae1..996a3e8 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/a5c8651..0388283 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/acf922c..53f9e09 TBR=machenbach@chromium.org,tmrts@chromium.org Change-Id: I26c76120520eb6afdca3d46597dfc14dafa7e6fe Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871961Reviewed-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@{#64444}
-
- 21 Oct, 2019 22 commits
-
-
Zhi An Ng authored
This reverts commit 08b26f53. Reason for revert: Breaks tree https://ci.chromium.org/p/v8/builders/ci/V8%20Linux%20-%20noi18n%20-%20debug/29046 Original change's description: > Clean up macros > > Move some instruction definitions into sse-instr, which is used to > generate some disasm tests, so we can remove some cases there. > > Bug: v8:9810 > Change-Id: I0615ec823396da08bc5d234cf1dabca6afd3f052 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1866965 > Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> > Commit-Queue: Zhi An Ng <zhin@chromium.org> > Cr-Commit-Position: refs/heads/master@{#64441} TBR=gdeepti@chromium.org,zhin@chromium.org Change-Id: I067c1fdbaa6eb2a08c0fcb7c8885d72f073a8818 No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: v8:9810 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1873195Reviewed-by: Zhi An Ng <zhin@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#64443}
-
Deepti Gandluri authored
Bug: v8:9810 Change-Id: I5eb359f9bc04be4c0855a5161b7c525c803f679f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1873187Reviewed-by: Zhi An Ng <zhin@chromium.org> Commit-Queue: Deepti Gandluri <gdeepti@chromium.org> Cr-Commit-Position: refs/heads/master@{#64442}
-
Ng Zhi An authored
Move some instruction definitions into sse-instr, which is used to generate some disasm tests, so we can remove some cases there. Bug: v8:9810 Change-Id: I0615ec823396da08bc5d234cf1dabca6afd3f052 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1866965Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#64441}
-
Ng Zhi An authored
Bug: v8:9810 Change-Id: Ie7c497d8aae40db71c3039e457d0535fd8d5b3f1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1872015Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#64440}
-
Frank Tang authored
Bug: v8:9876 Change-Id: I2ca4512790e0a84b6f4ebd67bce76b7eb24eb33c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1867793Reviewed-by: Shu-yu Guo <syg@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#64439}
-
Daniel Clark authored
Per spec, Module::SetSyntheticModuleExport should throw a ReferenceError when called with an export name that was not supplied when constructing that SyntheticModule. Instead, the current implementation crashes with a failed CHECK(). Add a new Module::SyntheticModuleSetExport that throws (without an ensuing crash) for this case, and deprecate the old Module::SetSyntheticModuleExport. Bug: v8:9828 Change-Id: I3b3d353064c3851882781818099bd8f6ee74c809 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1860996Reviewed-by: Adam Klein <adamk@chromium.org> Reviewed-by: Georg Neis <neis@chromium.org> Commit-Queue: Dan Clark <daniec@microsoft.com> Cr-Commit-Position: refs/heads/master@{#64438}
-
Frank Tang authored
Ship the "calendar" and "numberingSystem" options for Intl.DateTimeFormat (both options) and Intl.NumberFormat (only the later one) and support other calendar. Also consider the calendar while choosing calendar pattern. I2L: http://shorturl.at/bgkAH I2S: http://shorturl.at/nuKUV Flags: --harmony-intl-add-calendar-numbering-system --harmony-intl-other-calendars API owner approvals: chrishtr@ yoav@yoav.ws bratell.d@gmail.com Plan to land into m80 tree and only merge after 10/17 m79 branch off. Bug: v8:9154, v8:9155, v8:9320 Change-Id: Ifa209919a40db60465f99405f3620a3b73b10204 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1838436Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#64437}
-
Frank Tang authored
Bug: v8:9849 Change-Id: Ib7812e27dcacb30fd2610badbf79dee190fdec15 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1869078Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Frank Tang <ftang@chromium.org> Cr-Commit-Position: refs/heads/master@{#64436}
-
Seth Brenith authored
The current unwinding data for JSEntry correctly restores the frame pointer and program counter from the caller frame, which might or might not be sufficient to continue unwinding, depending on the contents of that caller frame. Currently, the cctest StackUnwindingWin64 is broken (at least with my build config) because the caller frame also needs the stack pointer, which is not restored correctly. In particular, I see this xdata for v8::internal::GeneratedCode<...>, which is the function that calls Builtins_JSEntry: 10400015 : 2 code words, 1 epilog, function length=15 01000012 : epilog starts at 12 and its unwind handler starts at 4 e405c8d2 : save_reg x=b z=8 alloc_s x=5 end e405c8d2 : same thing but for the epilog The prolog that corresponds to the unwind codes above is: sub sp, sp, #50 str lr, [sp, #0x40] Note that it does not set fp, so unwinding requires an accurate sp. This change emits slightly more complicated unwinding data for JSEntry so that the frame pointer, stack pointer, and program counter can all be restored. Change-Id: I0c7f3eba97ef64408f46631b487c4b0ceb06fa9b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1848860 Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Cr-Commit-Position: refs/heads/master@{#64435}
-
Ng Zhi An authored
Bug: v8:9728 Change-Id: I0b90bf97fc8f57f8b372c3254d585c707da9fe7a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1865255Reviewed-by: Deepti Gandluri <gdeepti@chromium.org> Commit-Queue: Zhi An Ng <zhin@chromium.org> Cr-Commit-Position: refs/heads/master@{#64434}
-
Igor Sheludko authored
Bug: v8:4153 Change-Id: I88abd7b5b5ba1b7156d60427217fc8e301cbc099 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1866653 Commit-Queue: Igor Sheludko <ishell@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/master@{#64433}
-
Seth Brenith authored
On Windows ARM64, it is insufficient to just follow the linked list of frame pointers in all cases. This is similar to logic added in https://crrev.com/c/v8/v8/+/1701133 except this affects the Unwinder methods rather than the function metadata for RtlVirtualUnwind. Together with https://crrev.com/c/chromium/src/+/1844276 , this allows the Chromium unit test V8UnwinderTest.UnwindThroughV8Frames to pass on Windows ARM64. Change-Id: I82d4d894be14d4a6ace75bba10c13b10342d0b12 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1845189Reviewed-by: Peter Marshall <petermarshall@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Reviewed-by: Jakob Gruber <jgruber@chromium.org> Reviewed-by: Michael Starzinger <mstarzinger@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/master@{#64432}
-
Dan Elphick authored
Converts last remaining Node*. Bug: v8:6949 Change-Id: I792a7efa3dc3cdfd0e0ae8349aad6da54f4e8db8 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871928 Auto-Submit: Dan Elphick <delphick@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Santiago Aboy Solanes <solanes@chromium.org> Cr-Commit-Position: refs/heads/master@{#64431}
-
Jakob Gruber authored
We previously had a DCHECK to protect the assumption that the continuation to StackPointerGreaterThan must be a branch. This is not a valid assumption to make, in fact the second callsite of VisitStackPointerGreaterThan immediately violates it. Instead, this CL additionally considers non-branch continuations when getting the effect level. A slight digression since it was not clear to me how comparison results were materialized for 'Set' continuations: this happens during codegen, where CodeGenerator::AssembleInstruction inserts a call to AssembleArchBoolean if necessary. Bug: v8:9829,v8:9534 Change-Id: Ib554071b7aa33e0f6b8a0d605219db6b6dc7d5b0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871912Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#64430}
-
Georg Neis authored
Disallow reorderings across calls and across caller registers save/restore. Bug: v8:9775 Change-Id: I8b1037dd127217ed9f4a42d45e0d928380c9241a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1862558 Commit-Queue: Georg Neis <neis@chromium.org> Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/master@{#64429}
-
Joshua Litt authored
Bug: chromium:1014458 Change-Id: I9e5e83da4452e9953218335353047f41c18f68fe Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1864333 Commit-Queue: Joshua Litt <joshualitt@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#64428}
-
Santiago Aboy Solanes authored
Bug: v8:9771 Change-Id: I1bac467c21b2a4188959acc9d41f7ae147e64655 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871927 Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Commit-Queue: Dan Elphick <delphick@chromium.org> Auto-Submit: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Dan Elphick <delphick@chromium.org> Cr-Commit-Position: refs/heads/master@{#64427}
-
Jakob Gruber authored
.. similar to how it is applied in the interpreter. We reserve a stack slot for the backtrack count, increment it on each backtrack, and fail if the limit is hit. Bug: v8:9695 Change-Id: I835888c612d6c8bfa2f34e73ab8c8241dcabc6ed Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1864938Reviewed-by: Peter Marshall <petermarshall@chromium.org> Commit-Queue: Jakob Gruber <jgruber@chromium.org> Cr-Commit-Position: refs/heads/master@{#64426}
-
Clemens Backes authored
This is a reland of 0347f00a Original change's description: > Refactor platform tests to avoid deprecated API > > The old tasks API is deprecated and we want to remove it in 8.0. > Thus, this CL refactors the platform tests to use the new > TaskRunner-based API, and removes redundant tests. > > R=ahaas@chromium.org > > Bug: v8:9810 > Change-Id: Ie53c90184639e77b3247228059fd88290b233e0c > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1868619 > Reviewed-by: Andreas Haas <ahaas@chromium.org> > Commit-Queue: Clemens Backes <clemensb@chromium.org> > Cr-Commit-Position: refs/heads/master@{#64412} Bug: v8:9810 Cq-Include-Trybots: luci.v8.try:v8_linux64_msan_rel Change-Id: I0f66791828e0f605a67f9af575dbead35e8feb9d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871917Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64425}
-
Leszek Swirski authored
This reverts commit c48096d4. Reason for revert: Flaky bot failures (https://bugs.chromium.org/p/v8/issues/detail?id=9744#c9) Original change's description: > Reland "[runtime] Remove extension slots from context objects" > > This is a reland of c07c02e1 > > Original change's description: > > [runtime] Remove extension slots from context objects > > > > Context objects have an extension slot, which contains further > > additional data that depends on the type of the context. > > > > This CL removes the extension slot from contexts that don't need > > them, hence reducing memory. > > > > The following contexts will still have an extension slot: native, > > module, await, block and with contexts. See objects/contexts.h for > > what the slot is used for. > > The following contexts will not have an extension slot anymore (they > > were not used before): script, catch and builtin contexts. > > Eval and function contexts only have the extension slot if they > > contain a sloppy eval. > > > > Bug: v8:9744 > > Change-Id: I8ca56c22fa02437bbac392ea72174ebfca80e030 > > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1863191 > > Commit-Queue: Victor Gomes <victorgomes@google.com> > > Reviewed-by: Toon Verwaest <verwaest@chromium.org> > > Reviewed-by: Jakob Gruber <jgruber@chromium.org> > > Reviewed-by: Ulan Degenbaev <ulan@chromium.org> > > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > > Auto-Submit: Victor Gomes <victorgomes@google.com> > > Cr-Commit-Position: refs/heads/master@{#64372} > > TBR=verwaest@chromium.org,jgruber@chromium.org,ulan@chromium.org,leszeks@chromium.org,petermarshall@chromium.org > > Bug: v8:9744 > Change-Id: I0749cc2d8f59940c25841736634a70047116d647 > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1869192 > Reviewed-by: Leszek Swirski <leszeks@chromium.org> > Reviewed-by: Peter Marshall <petermarshall@chromium.org> > Commit-Queue: Leszek Swirski <leszeks@chromium.org> > Commit-Queue: Peter Marshall <petermarshall@chromium.org> > Auto-Submit: Victor Gomes <victorgomes@google.com> > Cr-Commit-Position: refs/heads/master@{#64380} TBR=ulan@chromium.org,jgruber@chromium.org,petermarshall@chromium.org,leszeks@chromium.org,verwaest@chromium.org,victorgomes@google.com # Not skipping CQ checks because original CL landed > 1 day ago. Bug: v8:9744 Change-Id: Ia58067b41f1eb5880a52b36ead754d7190ff7f6f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871922Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#64424}
-
Clemens Backes authored
The MOVE_ONLY_NO_DEFAULT_CONSTRUCTOR macro defines a defaulted move constructor and move-assignment operator. The {std::unique_ptr} on the other hand needs the contained type to be complete when instantiating the move assignment operator. Hence, this fails e.g. on MSVC, see https://github.com/nodejs/node/pull/30020#issuecomment-544485991. It turns out that we never actually move the interpreter, so we can just replace the MOVE_ONLY_NO_DEFAULT_CONSTRUCTOR by DISALLOW_COPY_AND_ASSIGN. R=ahaas@chromium.org Change-Id: Iba7d30243510ed9554be62b0c4c8e6f47f0c3307 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1871921Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Clemens Backes <clemensb@chromium.org> Cr-Commit-Position: refs/heads/master@{#64423}
-
Santiago Aboy Solanes authored
Before this change, the activeElement used to be the body and not multiview. Then, the EventListener wasn't triggering. Bug: v8:7327 Change-Id: I9782159ffd510c9a7afd83695f20ede9e774ac20 Notry: true Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1868624 Commit-Queue: Sigurd Schneider <sigurds@chromium.org> Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org> Reviewed-by: Sigurd Schneider <sigurds@chromium.org> Cr-Commit-Position: refs/heads/master@{#64422}
-