- 29 Jun, 2022 16 commits
-
-
Andy Wingo authored
Add parser support for wasm instructions that create stringrefs from GC arrays, and which encode strings to GC arrays. Bug: v8:12868 Change-Id: I38446855b7a55366f8107970811aec935defcdb4 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3732935Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Andy Wingo <wingo@igalia.com> Cr-Commit-Position: refs/heads/main@{#81440}
-
Marja Hölttä authored
In this part: indexOf, lastIndexOf Bug: v8:11111 Change-Id: I51481ccf44ad6c3ebc9216c1b6cc870fda73566e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3726209 Commit-Queue: Marja Hölttä <marja@chromium.org> Reviewed-by: Shu-yu Guo <syg@chromium.org> Cr-Commit-Position: refs/heads/main@{#81439}
-
Michael Lippautz authored
The barrier is currently not thread-safe but may be executed via concurrent Sparkplug compilation. Remove the actual barrier code as the remembered set is anyways not used yet. Bug: v8:13018, chromium:1336850, chromium:1333414 Change-Id: I9287516d559cc3b10d170fa0fda36b26ca487a15 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3734809 Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Reviewed-by: Patrick Thier <pthier@chromium.org> Cr-Commit-Position: refs/heads/main@{#81438}
-
Toon Verwaest authored
Change-Id: Ia09e8c4528e59116be39be12d688f5b99a34c8e7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3732938Reviewed-by: Igor Sheludko <ishell@chromium.org> Auto-Submit: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/main@{#81437}
-
Leszek Swirski authored
Fix some final gcc warnings: * Manually roll googletest to get the fix in: https://crrev.com/d5ad28dbe14fca51038fb8c7610f11602b98f682 * Remove some anonymous namespaces in tests because the types in those anonymous namespaces ended up being visible in non-anonymous classes. * Fix a RVO breaking std::move. * Change some known-too-short strncpys into memcpys Bug: chromium:1307180 Change-Id: I0f64512f77655f3740fc297bbb2087e6c039f7f3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3735122 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#81436}
-
Leszek Swirski authored
Make sure that: * Temporaries are consistently free-but-blocked, * Blocked registers are ignored when processing free registers (where appropriate), * Fixed phis are processed before arbitrary register allocation, * Blocked state is set and cleared correctly * Opportunistic register moves on dropping don't block registers Bug: v8:7700 Change-Id: I2bc8884f70d9e54ce6ee2fb5bb600b028a9502c3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3732931 Commit-Queue: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#81435}
-
Tobias Tebbi authored
Bug: chromium:1340335, chromium:1315901 Change-Id: Ic348e8a66df098f64cf1893f83c145ac7bdb1ecb Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3732939Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Auto-Submit: Tobias Tebbi <tebbi@chromium.org> Cr-Commit-Position: refs/heads/main@{#81434}
-
Leszek Swirski authored
Bug: chromium:1307180 Change-Id: Ia279086ec3df9d64bd6a0255ebe27d9e583014c7 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3732937Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/main@{#81433}
-
Leszek Swirski authored
Bug: chromium:1307180 Change-Id: I45e01e172c04f5c0aac40cd84605ce52cb335cdc Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3732934 Commit-Queue: Michael Achenbach <machenbach@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/main@{#81432}
-
Leszek Swirski authored
Centralise constant visiting into the graph visitor, and adapt graph printing to print both the labeller node id, and the node numbering node id. Bug: v8:7700 Change-Id: I1af8f97e546f7113ac5655522f9206f207a0ae97 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3732932Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Auto-Submit: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#81431}
-
Leszek Swirski authored
Change-Id: Id3586eae6580416216bce2c448e6885aaa1589b6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3732111 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Commit-Queue: Toon Verwaest <verwaest@chromium.org> Cr-Commit-Position: refs/heads/main@{#81430}
-
Omer Katz authored
Live bytes were accounted twice. Once when object is marked black and once explicitly by the marking task. Drop the accounting by the marking task. This should also help reduce binary size. Bug: v8:12612, chromium:1331317 Change-Id: I43e90413309709662b6fcd0dfdec96cac1b5f231 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3732930 Commit-Queue: Omer Katz <omerkatz@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#81429}
-
Frank Tang authored
Also add AOs: FormatISOTimeZoneOffsetString, TemporalInstantToString, GetUnsignedRoundingMode, ApplyUnsignedRoundingMode, RoundTemporalInstant Also update the RoundNumberToIncrement implementation and a BigInt version. Fix the test setup in test/mjsunit/temporal/instant-to-json.js since fromEpochSeconds and fromEpochMilliseconds do not take BigInt Spec Text: https://tc39.es/proposal-temporal/#sec-temporal.instant.prototype.tojson https://tc39.es/proposal-temporal/#sec-temporal.instant.prototype.tolocalestring https://tc39.es/proposal-temporal/#sec-temporal.instant.prototype.tostring https://tc39.es/proposal-temporal/#sec-temporal-temporalinstanttostring https://tc39.es/proposal-temporal/#sec-temporal-formatisotimezoneoffsetstring https://tc39.es/proposal-temporal/#sec-temporal-getunsignedroundingmode https://tc39.es/proposal-temporal/#sec-temporal-applyunsignedroundingmode https://tc39.es/proposal-temporal/#sec-temporal-roundtemporalinstant https://tc39.es/proposal-temporal/#sec-temporal-roundnumbertoincrement This does NOT implement the intl version of toLocaleString specified in (notice the "sup" not "sec" after #) yet. https://tc39.es/proposal-temporal/#sup-temporal.instant.prototype.tolocalestring Bug: v8:11544 Change-Id: I807afd5bf550d2a65a4732a8e536056eea79cf8f Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3696483 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/main@{#81428}
-
Frank Tang authored
Spec Text: https://tc39.es/proposal-temporal/#sec-temporal.plaintime.prototype.round Bug: v8:11544 Change-Id: I564cec6fdc030e3d39a9798c047534228f670dc6 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3692428 Commit-Queue: Frank Tang <ftang@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/main@{#81427}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/4e6d71d..5b369fe R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: I7cad4152d9b673ae901483df006118086068d751 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3733340 Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Bot-Commit: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#81426}
-
v8-ci-autoroll-builder authored
Rolling v8/buildtools/third_party/libc++abi/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libcxxabi/+log/b5f3d3b..3007992 Rolling v8/third_party/catapult: https://chromium.googlesource.com/catapult/+log/17a97ab..c76626e Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/3c4d401..a83ac93 R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: Ib46c67b3afa845c1e77d92a15fcb3c6a15697756 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3733339 Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Bot-Commit: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#81425}
-
- 28 Jun, 2022 20 commits
-
-
Milad Fa authored
Change-Id: I2ef7b64bc20e71898c96d8a5d6d5509065d578c1 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3733336Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#81424}
-
Michael Lippautz authored
- Remove dead code. - Remove `was_activated_`. Bug: v8:12775 Change-Id: Ie54b24f21a8789dc815ab7a96ce4a074e3644342 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3726300Reviewed-by: Omer Katz <omerkatz@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#81423}
-
Anton Bikineev authored
Before this CL, the caged heap was lazily initialized upon the first call of HeapBase ctor. CagedHeap keeps a pointer to PageAllocator which was provided from cppgc::Platform through the HeapBase ctor. This was not generally safe: the platform is not enforced to be singleton. If it happens to die first, then CagedHeap will have a stale pointer. The CL fixes it simply by moving caged-heap initialization to cppgc::InitializeProcess(), which already requires a constantly living PageAllocator. Bug: chromium:1338030 Change-Id: Ifb70a2db233ef36a99c919db09bed9ff9f3708ac Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3732107 Commit-Queue: Anton Bikineev <bikineev@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#81422}
-
Andreas Haas authored
The class is dead code, and has not been used for years. I tried to deprecate the class first, but this caused build errors on GCC [1]. That's why this CL just deletes the class. Deleting the class is okay because this class was part of the original implementation of streaming compilation. There is only a single embedder who uses streaming compilation, which is Chrome, and Chrome switched to the new API already years ago. If there were other embedders that use this class, then this embedder would already have no working implementation of streaming compilation for years. R=adamk@chromium.org Bug: v8:12926 Change-Id: I3342167245822cf8ee52d9632cba236fb1b0646c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3714236 Commit-Queue: Andreas Haas <ahaas@chromium.org> Reviewed-by: Adam Klein <adamk@chromium.org> Cr-Commit-Position: refs/heads/main@{#81421}
-
Mohit Saini authored
This is a reland of commit c801d529 perfetto::DynamicString was supported in perfetto very recently. This CL failed earlier because latest perfetto was not rolled in v8. Relanding it after rolling the latest perfetto in v8 (see parent CL). Original change's description: > Refactor dynamic name to perfetto::DynamicString > > Recently perfetto introduced `perfetto::DynamicString` to allow clients > to wrap dynamic event name strings. So that clients don't have to > manually set event name inside trace lambda. > > With that: > > TRACE_EVENT("cat", nullptr, [&](EventContext ctx) { > ctx.event().set_name(dynamic_name_str) > }); > > is simplified to: > > TRACE_EVENT("cat", perfetto::DynamicString{dynamic_name_str}); > > In this change we are making use of perfetto::DynamicString to pass > dynamic event name string. > > Change-Id: Ic6b501df67409d6faa4d60b59095ad0e79ce585e > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3716473 > Reviewed-by: Manos Koukoutos <manoskouk@chromium.org> > Commit-Queue: Mohit Saini <mohitms@google.com> > Cr-Commit-Position: refs/heads/main@{#81298} Cq-Include-Trybots: luci.v8.try:v8_linux64_perfetto_dbg_ng Change-Id: I70103606f397cd420a5dfccba703bee8962f822b Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3714946 Commit-Queue: Mohit Saini <mohitms@google.com> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Auto-Submit: Mohit Saini <mohitms@google.com> Cr-Commit-Position: refs/heads/main@{#81420}
-
Thibaud Michaud authored
Only the parent of the continuation itself was updated. Also update the parent of the suspender R=ahaas@chromium.org Bug: v8:12191 Change-Id: I06684548abe70f4bbda48c12e9e8adda84e1ec27 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3726293Reviewed-by: Andreas Haas <ahaas@chromium.org> Commit-Queue: Thibaud Michaud <thibaudm@chromium.org> Cr-Commit-Position: refs/heads/main@{#81419}
-
Seth Brenith authored
This change is only to get the API in place; the newly added functions don't yet do anything. Bug: v8:12808 Change-Id: Ic6a697d4f62c2b61761b2545dae6fcdf37653bbf Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3681880Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Seth Brenith <seth.brenith@microsoft.com> Cr-Commit-Position: refs/heads/main@{#81418}
-
Leszek Swirski authored
Fixes the test after a perfetto roll Change-Id: Ib861edd1f87435b6bbc5e8b7599f118c72cc0776 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3732108 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Reviewed-by: Camillo Bruni <cbruni@chromium.org> Commit-Queue: Camillo Bruni <cbruni@chromium.org> Cr-Commit-Position: refs/heads/main@{#81417}
-
Leszek Swirski authored
Suppress a gcc array bounds warning in ComputeStackLimit, where we are very intentionally accessing a location out of bounds. Bug: chromium:1307180 Change-Id: If4b7ce182472a761f9f619824676e5e660b0277a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3732109 Auto-Submit: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Reviewed-by: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/main@{#81416}
-
Tobias Tebbi authored
When a receiver/closure is not used by a lazy deopt frame state, then it cannot escape through the .getThis API. Therefore, it's safe to dematerialize it. Bug: chromium:1315901, chromium:1318126 Change-Id: I5cf9c30e8451a7af94d371162a94eb1ba0c9db4a Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3726299Reviewed-by: Nico Hartmann <nicohartmann@chromium.org> Commit-Queue: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#81415}
-
Manos Koukoutos authored
In crrev.com/c/3714237, we changed the representation of constant expressions in mjsunit wasm tests to byte arrays. This CL complements this change by updating the output of --wasm-fuzzer-gen-test to the new format. Change-Id: I6a9d861b5abe13621ffd2ceb3a54863b0188b40c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3726294Reviewed-by: Jakob Kummerow <jkummerow@chromium.org> Commit-Queue: Manos Koukoutos <manoskouk@chromium.org> Cr-Commit-Position: refs/heads/main@{#81414}
-
Milad Fa authored
Changes for TF instruction selector will be pasted in the CL comments and will get applied once all relaxed opcodes have been implemented in codegen/liftoff. Change-Id: I4f7e8263a8ae099e48034749846fadd82c6a7c49 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3723778Reviewed-by: Junliang Yan <junyan@redhat.com> Commit-Queue: Milad Farazmand <mfarazma@redhat.com> Cr-Commit-Position: refs/heads/main@{#81413}
-
Michael Achenbach authored
No-Try: true Bug: chromium:1307180 Change-Id: I96701e45b4bc0c70e5e8fe085425cfbca480934d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3726306Reviewed-by: Liviu Rau <liviurau@chromium.org> Auto-Submit: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/main@{#81412}
-
Jakob Kummerow authored
This remodels the tier-up checks on loop back edges to avoid modifying the cache state by taking temp registers passed in from the caller, and not causing the instance to get cached. Additionally, this introduces FreezeCacheState scopes, which allow us to enforce that certain ranges don't cause any cache modifications. Conditional jumps require such a scope to be around, which should help ensure that we don't forget to add them to any future code we write. Drive-by cleanup: drop {pinned} lists from a few Load helper functions. They don't allocate registers (and shouldn't), so they don't need to know about pinned registers. Fixed: chromium:1339321 Change-Id: I1c7660418a85259e96c5e0dcfeaf12dab2114e8c Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3724787Reviewed-by: Manos Koukoutos <manoskouk@chromium.org> Commit-Queue: Jakob Kummerow <jkummerow@chromium.org> Cr-Commit-Position: refs/heads/main@{#81411}
-
Michael Achenbach authored
No-Try: true Bug: chromium:1307180 Change-Id: Id1ed9e3d47d7b3c680e278eea2efd4195110cf37 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3726303 Auto-Submit: Michael Achenbach <machenbach@chromium.org> Commit-Queue: Michael Achenbach <machenbach@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@{#81410}
-
v8-ci-autoroll-builder authored
Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/086948b..c8f1e5e R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: I1a18acc96818bb70b0d953d23d236c0eb7fcc968 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3727242 Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Bot-Commit: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#81409}
-
Michael Achenbach authored
This CL adds back a patch of Math.pow for correctness fuzzing, which drops some precision and hides a difference on the fast path. The same suppression was previously used on https://crbug.com/693426. No-Try: true Bug: chromium:1339320 Change-Id: Id52f25f8a2b6b5aeca956587b16a10c61aa68e36 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3726295Reviewed-by: Maya Lekova <mslekova@chromium.org> Commit-Queue: Maya Lekova <mslekova@chromium.org> Auto-Submit: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/main@{#81408}
-
Michael Lippautz authored
Don't actually free memory as that would maintain free bytes accounting. Instead, just write a filler that is reclaimed on next garbage collection, updating counters. Bug: v8:13000, chromium:1338687 Change-Id: I5339505160fde4b2f522a1a4212d23d7afc2b5f3 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3726292Reviewed-by: Omer Katz <omerkatz@chromium.org> Commit-Queue: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#81407}
-
v8-ci-autoroll-builder authored
Rolling v8/build: https://chromium.googlesource.com/chromium/src/build/+log/da9fb2e..4e6d71d Rolling v8/tools/clang: https://chromium.googlesource.com/chromium/src/tools/clang/+log/f575df1..086948b R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: I59650f42a13aafb10c1606231951dbe7c2a2198e Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3727240 Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Bot-Commit: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#81406}
-
v8-ci-autoroll-builder authored
Rolling v8/buildtools/third_party/libunwind/trunk: https://chromium.googlesource.com/external/github.com/llvm/llvm-project/libunwind/+log/b387062..49191c5 Rolling v8/third_party/depot_tools: https://chromium.googlesource.com/chromium/tools/depot_tools/+log/ebccac7..3c4d401 Rolling v8/third_party/fuchsia-sdk/sdk: version:8.20220626.2.1..version:8.20220627.3.1 R=v8-waterfall-sheriff@grotations.appspotmail.com,mtv-sf-v8-sheriff@grotations.appspotmail.com Change-Id: I96956a29f07049ba7b7a0e3d9cd6b40596fa3b0d Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3727239 Commit-Queue: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Bot-Commit: v8-ci-autoroll-builder <v8-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com> Cr-Commit-Position: refs/heads/main@{#81405}
-
- 27 Jun, 2022 4 commits
-
-
Nikolaos Papaspyrou authored
This CL introduces a compile flag v8_enable_inner_pointer_resolution_mb. Behind it, it introduces a method `FindBasePtr` in `MemoryChunk`, which implements inner pointer resolution using the chunk's marking bitmap. This method is intended to be used for conservative stack scanning, to resolve inner pointers to heap objects, at some point late in the marking phase. It also delays stack scanning during the marking phase of a full GC, to ensure that marking has proceeded and most heap objects have already been marked. Bug: v8:12851 Change-Id: I40e291a86bb8d2587a2c1d9505574dde3c65eb16 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3703837 Commit-Queue: Nikolaos Papaspyrou <nikolaos@chromium.org> Reviewed-by: Omer Katz <omerkatz@chromium.org> Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#81404}
-
Michael Achenbach authored
Point to the same version as Chromium does: http://shortn/_8kg7qPA03I Bug: v8:13002 Change-Id: Ief1da2951499767e011cbf309f0ce99fea44ab22 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3726211Reviewed-by: Alexander Schulze <alexschulze@chromium.org> Commit-Queue: Michael Achenbach <machenbach@chromium.org> Cr-Commit-Position: refs/heads/main@{#81403}
-
Samuel Groß authored
The ExternalPointerTags are assumed to be compile-time constants in most cases, so turning them into template parameters enforces that. As decisions such as whether to use the per-isolate or the shared external pointer table are encoded into the tag values, forcing those to be compile-time constants guarantees that the compiler will be able to inline the correct logic when accessing an external pointer. With this, there are now two (high-level) ways of accessing external pointer fields from C++: the Read/WriteExternalPointerField methods which require the ExternalPointerTag to be a template parameter, and the ExternalPointerSlot class which takes the tag as an argument. The latter is for example used for snapshot deserialization and by the garbage collector (more generally, by the ObjectVisitor::VisitExternalPointer method), where the tag is not a compile-time constant. Finally, this CL also introduces a new ExternalPointerHandle type which represents the (opaque) on-heap representation of a reference to an entry in an ExternalPointerTable when sandboxing is enabled. Making this its own type makes the code a bit more readable. Bug: v8:10391 Change-Id: I867b8ce41d15d485f1dc66786f233c710c56afcb Cq-Include-Trybots: luci.v8.try:v8_linux64_heap_sandbox_dbg_ng,v8_linux_arm64_sim_heap_sandbox_dbg_ng Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3720641Reviewed-by: Tobias Tebbi <tebbi@chromium.org> Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Samuel Groß <saelo@chromium.org> Reviewed-by: Igor Sheludko <ishell@chromium.org> Reviewed-by: Michael Lippautz <mlippautz@chromium.org> Cr-Commit-Position: refs/heads/main@{#81402}
-
Pan, Tao authored
is before a new nesting loop This is probably a JumpLoop to loop nesting level 0 getting removed if it's dead code. Add before a new nesting loop to break condition of removing OSR code cache if deopt at inside of loop. Bug: chromium:1330883 Change-Id: I010e3ca2adaafae8dcc606c49860ca0a70442952 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3713093Reviewed-by: Leszek Swirski <leszeks@chromium.org> Commit-Queue: Tao Pan <tao.pan@intel.com> Cr-Commit-Position: refs/heads/main@{#81401}
-