Victor Gomes
9de0d9c878
[maglev] Remove --maglev-object-tracking
Remove the experimental --maglev-object-tracking flag (and
--trace-maglev-object-tracking) along with virtual object mutation
tracking, snapshotting, cloning, and control-flow merging in Maglev
graph building. Preserve IsFieldConstant (vobj::FieldConstness::
kConstAfterInit) for folding constant fields on
VirtualJSArrayIteratorShape.
M4 Pinpoint benchmarks (150 repeats each) show that
--maglev-object-tracking provides negligible benefit in Maglev-only
mode and is neutral/noisy under Turbolev (which has its own dedicated
post-inlining escape analysis pass, TurbolevEscapeAnalysis) while
introducing significant complexity and sub-benchmark regressions:
- JS3 (--no-turbofan vs --no-turbofan --maglev-object-tracking):
https://pinpoint-dot-chromeperf.appspot.com/job/10eab4f9990000
(+0.27% Total/Score, p=0.0002; +0.38% Total/Average)
- JS3 (--turbolev vs --turbolev --maglev-object-tracking):
https://pinpoint-dot-chromeperf.appspot.com/job/124a247e990000
(+0.10% Total/Score, p=0.2135 [noise]; +0.02% Total/Average,
p=0.8673 [noise], with -6.16% Score / -12.12% Worst regression on
doxbee-promise and -3.01% Score / -9.06% First regression on
js-tokens)
- SP3 (--no-turbofan vs --no-turbofan --maglev-object-tracking):
https://pinpoint-dot-chromeperf.appspot.com/job/121545ae990000
(+0.09% Score, p=0.0084)
- SP3 (--turbolev vs --turbolev --maglev-object-tracking):
https://pinpoint-dot-chromeperf.appspot.com/job/12769e16990000
(+0.02% Score, p=0.3416 [noise])
Removing the virtual object snapshotting, merging, and tracking
overhead in this CL also improves JS3 code-load and startup
benchmarks (M4 Pinpoint, 150 repeats each):
- JS3 (--no-turbofan):
https://pinpoint-dot-chromeperf.appspot.com/job/13d1e316990000
(+0.14% Total/Score, p=0.0212; first-inspector-code-load +1.89%
Score / +2.64% Worst, multi-inspector-code-load +1.35% Score /
+1.93% Worst, octane-code-load +0.75% Score, babylonjs-startup-es6
+0.38% Score)
- JS3 (--turbolev):
https://pinpoint-dot-chromeperf.appspot.com/job/11c76518990000
(-0.03% Total/Score, p=0.9263 [noise]; first-inspector-code-load
+1.59% Score / +2.14% Worst, multi-inspector-code-load +1.19%
Score / +1.68% Worst, octane-code-load +0.50% Average,
babylonjs-startup-es6 +0.35% Score)
- SP3 (--no-turbofan):
https://pinpoint-dot-chromeperf.appspot.com/job/120d2365990000
(-0.04% Score, p=0.1507 [noise])
- SP3 (--turbolev):
https://pinpoint-dot-chromeperf.appspot.com/job/15be49b1990000
(+0.04% Score, p=0.1009 [noise])
Bug: 582696367
Fixed: 577666671
Change-Id: Ia9d483f9c2a188102eea6510b47656be346c183a
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/8727069
Commit-Queue: Leszek Swirski <leszeks@chromium.org>
Reviewed-by: Leszek Swirski <leszeks@chromium.org>
Auto-Submit: Victor Gomes <victorgomes@chromium.org>
Commit-Queue: Victor Gomes <victorgomes@chromium.org>
Cr-Commit-Position: refs/heads/main@{#111769}
2026-11-06 08:14:51 -08:00
..
2026-04-30 04:55:48 -07:00
2026-11-05 06:47:15 -08:00
2026-08-04 06:43:59 -07:00
2026-08-21 02:23:41 -07:00
2026-11-05 06:35:06 -08:00
2026-06-22 02:41:04 -07:00
2026-11-04 08:52:16 -08:00
2026-10-30 05:51:43 -07:00
2025-02-26 03:09:39 -08:00
2026-11-06 01:46:50 -08:00
2022-08-05 14:55:00 +00:00
2025-12-17 09:40:46 -08:00
2026-07-07 22:10:11 -07:00
2026-10-12 16:43:26 -07:00
2025-12-17 09:40:46 -08:00
2018-12-18 15:00:35 +00:00
2017-05-09 15:25:21 +00:00
2026-09-14 03:21:32 -07:00
2024-06-28 11:34:31 +00:00
2026-10-29 01:17:43 -07:00
2021-05-27 08:24:50 +00:00
2017-11-22 07:19:50 +00:00
2026-07-01 09:52:35 -07:00
2024-04-23 13:05:59 +00:00
2026-10-15 06:34:38 -07:00
2026-10-16 06:23:33 -07:00
2026-09-14 03:21:32 -07:00
2023-03-17 10:30:29 +00:00
2026-05-05 02:22:52 -07:00
2026-11-06 08:14:51 -08:00
2022-09-13 07:54:54 +00:00
2026-10-30 08:27:31 -07:00
2026-10-20 06:56:25 -07:00
2025-10-07 00:12:23 -07:00
2026-11-04 10:24:49 -08:00
2026-11-04 08:52:16 -08:00
2018-03-26 12:17:08 +00:00
2024-05-15 15:17:32 +00:00
2026-10-15 04:21:07 -07:00
2026-11-04 04:43:31 -08:00
2024-11-15 10:05:11 +00:00
2022-08-05 14:55:00 +00:00
2022-08-05 14:55:00 +00:00
2023-10-25 16:19:06 +00:00
2022-08-05 14:55:00 +00:00
2026-08-26 05:27:13 -07:00
2022-08-05 14:55:00 +00:00
2026-09-16 07:03:50 -07:00
2025-04-09 08:54:05 -07:00
2023-04-27 07:41:35 +00:00
2025-05-06 01:08:51 -07:00
2025-04-09 08:54:05 -07:00
2026-06-09 08:23:27 -07:00
2017-09-08 09:31:32 +00:00
2021-02-12 09:47:44 +00:00
2017-08-02 11:11:19 +00:00
2018-11-08 17:57:05 +00:00
2026-03-06 01:57:48 -08:00
2023-10-25 16:19:06 +00:00
2018-06-01 15:19:21 +00:00
2022-02-08 15:46:11 +00:00
2026-10-15 09:18:46 -07:00
2021-01-11 16:40:39 +00:00
2026-03-31 03:27:09 -07:00
2022-04-08 19:46:22 +00:00
2016-06-09 10:17:32 +00:00
2022-09-13 07:54:54 +00:00
2022-08-05 14:55:00 +00:00
2021-07-01 09:59:17 +00:00
2022-04-06 11:31:03 +00:00
2022-08-05 14:55:00 +00:00
2021-11-10 09:29:41 +00:00
2019-02-19 09:12:07 +00:00
2021-04-07 12:51:38 +00:00
2022-08-05 14:55:00 +00:00
2026-04-27 07:08:59 -07:00
2025-03-25 10:21:48 -07:00
2016-12-02 11:36:55 +00:00
2023-07-26 10:34:30 +00:00
2023-07-26 10:34:30 +00:00
2022-08-05 14:55:00 +00:00
2023-08-18 19:13:45 +00:00
2026-07-03 06:55:21 -07:00
2025-07-28 05:50:27 -07:00
2024-04-23 16:11:30 +00:00
2026-08-31 02:55:09 -07:00
2025-03-17 03:38:26 -07:00
2022-08-05 14:55:00 +00:00
2024-12-13 06:51:31 -08:00
2020-03-26 12:07:56 +00:00
2022-04-04 11:03:36 +00:00
2025-05-26 08:51:58 -07:00
2023-06-21 13:12:02 +00:00
2026-04-27 07:08:59 -07:00
2023-09-01 18:44:20 +00:00
2025-09-11 12:40:14 -07:00
2022-08-29 14:14:56 +00:00
2026-04-27 07:08:59 -07:00
2026-09-14 03:21:32 -07:00
2024-10-14 11:37:53 +00:00
2026-09-14 03:21:32 -07:00
2026-04-28 06:27:35 -07:00
2026-03-16 06:46:41 -07:00
2018-01-26 12:03:32 +00:00
2022-08-05 14:55:00 +00:00
2021-11-25 07:55:08 +00:00
2026-08-11 10:09:01 -07:00
2024-09-17 19:14:28 +00:00
2026-04-27 07:08:59 -07:00
2021-07-01 09:59:17 +00:00
2024-08-20 15:01:52 +00:00
2022-08-04 19:00:33 +00:00
2026-01-19 01:35:04 -08:00
2023-08-18 19:13:45 +00:00
2024-10-21 14:16:23 +00:00
2023-01-12 14:16:16 +00:00
2025-12-01 04:31:18 -08:00
2020-11-10 12:32:26 +00:00
2026-04-27 07:08:59 -07:00
2024-09-17 19:14:28 +00:00
2026-01-27 03:53:58 -08:00
2026-09-14 03:21:32 -07:00
2026-09-14 03:21:32 -07:00
2022-08-05 14:55:00 +00:00
2022-08-05 14:55:00 +00:00
2022-08-05 14:55:00 +00:00
2024-08-29 17:31:15 +00:00
2022-04-26 17:57:03 +00:00
2022-03-02 13:41:32 +00:00
2022-08-05 14:55:00 +00:00
2018-08-28 21:18:23 +00:00
2023-09-01 18:44:20 +00:00
2025-08-25 10:50:52 -07:00
2023-06-12 11:56:37 +00:00
2019-02-19 09:12:07 +00:00
2026-03-03 02:01:19 -08:00
2026-03-03 02:01:19 -08:00
2026-09-14 03:21:32 -07:00
2026-10-30 04:35:26 -07:00
2026-04-28 06:27:35 -07:00
2026-09-16 07:03:50 -07:00
2026-09-16 07:03:50 -07:00
2026-07-22 08:08:46 -07:00
2026-06-03 08:29:15 -07:00
2021-01-07 09:00:23 +00:00
2021-01-05 20:11:03 +00:00