[sandbox] Migrate TrustedPointerTable to range-based type checks [v8/v8 : main]

0 views
Skip to first unread message

Samuel Groß (Gerrit)

unread,
Dec 10, 2025, 7:01:14 AM12/10/25
to Leszek Swirski, Michael Lippautz, chrom...@appspot.gserviceaccount.com, V8 LUCI CQ, Hannes Payer, cbruni...@chromium.org, dmercadi...@chromium.org, mlippau...@chromium.org, v8-re...@googlegroups.com, was...@google.com
Attention needed from Leszek Swirski and Michael Lippautz

Samuel Groß voted and added 1 comment

Votes added by Samuel Groß

Commit-Queue+1

1 comment

Patchset-level comments
File-level comment, Patchset 17 (Latest):
Samuel Groß . resolved

Christmas came early this year and I have this huge refactoring CL for you :'D

I've been meaning to do this for >1 year now and finally got around to it (with some help from gemini :)). We use the same tagging mechanism now for all major pointer tables (external, cppheap, trusted). The generic implementation of untagging is slightly more expensive, and there seem to be a few small regression from this CL. However, I think we'll be able to recover them in follow-ups by using "fast" tags (see commit description and next CL in the chain). Basically, with that the previous tagging mechanism becomes the fast case for the new, more generic one. I'd appreciate if you had thoughts about which trusted objects might be particularly performance sensitive, and so should be converted to fast tags to try and recover the regressions.

Open in Gerrit

Related details

Attention is currently required from:
  • Leszek Swirski
  • Michael Lippautz
Submit Requirements:
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: v8/v8
Gerrit-Branch: main
Gerrit-Change-Id: Ief017e568120f405127e163d2deb303e66205534
Gerrit-Change-Number: 7241666
Gerrit-PatchSet: 17
Gerrit-Owner: Samuel Groß <sa...@chromium.org>
Gerrit-Reviewer: Leszek Swirski <les...@chromium.org>
Gerrit-Reviewer: Michael Lippautz <mlip...@chromium.org>
Gerrit-Reviewer: Samuel Groß <sa...@chromium.org>
Gerrit-CC: Hannes Payer <hpa...@chromium.org>
Gerrit-Attention: Michael Lippautz <mlip...@chromium.org>
Gerrit-Attention: Leszek Swirski <les...@chromium.org>
Gerrit-Comment-Date: Wed, 10 Dec 2025 12:01:09 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: Yes
unsatisfied_requirement
open
diffy

chromeperf@appspot.gserviceaccount.com (Gerrit)

unread,
Dec 16, 2025, 8:40:06 AM12/16/25
to Samuel Groß, Leszek Swirski, Michael Lippautz, V8 LUCI CQ, Hannes Payer, cbruni...@chromium.org, dmercadi...@chromium.org, mlippau...@chromium.org, v8-re...@googlegroups.com, was...@google.com
Attention needed from Leszek Swirski, Michael Lippautz and Samuel Groß

Message from chrom...@appspot.gserviceaccount.com

📍 Job mac-m1_mini_2020-perf/speedometer3 complete.

See results at: https://pinpoint-dot-chromeperf.appspot.com/job/13e2c9b0b10000

Open in Gerrit

Related details

Attention is currently required from:
  • Leszek Swirski
  • Michael Lippautz
  • Samuel Groß
Submit Requirements:
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: v8/v8
Gerrit-Branch: main
Gerrit-Change-Id: Ief017e568120f405127e163d2deb303e66205534
Gerrit-Change-Number: 7241666
Gerrit-PatchSet: 18
Gerrit-Owner: Samuel Groß <sa...@chromium.org>
Gerrit-Reviewer: Leszek Swirski <les...@chromium.org>
Gerrit-Reviewer: Michael Lippautz <mlip...@chromium.org>
Gerrit-Reviewer: Samuel Groß <sa...@chromium.org>
Gerrit-CC: Hannes Payer <hpa...@chromium.org>
Gerrit-Attention: Samuel Groß <sa...@chromium.org>
Gerrit-Attention: Michael Lippautz <mlip...@chromium.org>
Gerrit-Attention: Leszek Swirski <les...@chromium.org>
Gerrit-Comment-Date: Tue, 16 Dec 2025 13:40:02 +0000
Gerrit-HasComments: No
Gerrit-Has-Labels: No
unsatisfied_requirement
open
diffy

Michael Lippautz (Gerrit)

unread,
Dec 16, 2025, 11:36:48 AM12/16/25
to Samuel Groß, Leszek Swirski, chrom...@appspot.gserviceaccount.com, V8 LUCI CQ, Hannes Payer, cbruni...@chromium.org, dmercadi...@chromium.org, mlippau...@chromium.org, v8-re...@googlegroups.com, was...@google.com
Attention needed from Leszek Swirski and Samuel Groß

Michael Lippautz added 1 comment

Patchset-level comments
File-level comment, Patchset 18 (Latest):
Michael Lippautz . resolved

This is slightly slower on all pinpoints? :/

Open in Gerrit

Related details

Attention is currently required from:
  • Leszek Swirski
  • Samuel Groß
Submit Requirements:
  • requirement is not satisfiedCode-Owners
  • requirement is not satisfiedCode-Review
  • requirement is not satisfiedReview-Enforcement
Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
Gerrit-MessageType: comment
Gerrit-Project: v8/v8
Gerrit-Branch: main
Gerrit-Change-Id: Ief017e568120f405127e163d2deb303e66205534
Gerrit-Change-Number: 7241666
Gerrit-PatchSet: 18
Gerrit-Owner: Samuel Groß <sa...@chromium.org>
Gerrit-Reviewer: Leszek Swirski <les...@chromium.org>
Gerrit-Reviewer: Michael Lippautz <mlip...@chromium.org>
Gerrit-Reviewer: Samuel Groß <sa...@chromium.org>
Gerrit-CC: Hannes Payer <hpa...@chromium.org>
Gerrit-Attention: Samuel Groß <sa...@chromium.org>
Gerrit-Attention: Leszek Swirski <les...@chromium.org>
Gerrit-Comment-Date: Tue, 16 Dec 2025 16:36:43 +0000
Gerrit-HasComments: Yes
Gerrit-Has-Labels: No
unsatisfied_requirement
open
diffy

Samuel Groß (Gerrit)

unread,
Dec 19, 2025, 5:57:56 AM12/19/25
to Code Review Nudger, Leszek Swirski, Michael Lippautz, chrom...@appspot.gserviceaccount.com, V8 LUCI CQ, Hannes Payer, cbruni...@chromium.org, dmercadi...@chromium.org, mlippau...@chromium.org, v8-re...@googlegroups.com, was...@google.com
Attention needed from Leszek Swirski and Michael Lippautz

Samuel Groß added 2 comments

Patchset-level comments
Michael Lippautz . unresolved

This is slightly slower on all pinpoints? :/

Samuel Groß

As mentioned in the other comments and discussed offline, the CL is expected to cause some small regressions as the generic untagging mechanism now needs a few more instructions. The follow-up CL introduces "fast tags" which then again only require a single AND instruction to untag. The plan would be to identify which tags need to be fast (e.g. by landing this CL and seeing which benchmarks regress), then converting those to fast tags to recover the regressions.

But let's come back to this in January after the holiday break :)

File src/sandbox/indirect-pointer-tag.h
Line 99, Patchset 17:constexpr IndirectPointerTagRange kAllSharedIndirectPointerTags(
Samuel Groß . unresolved

Maybe kAnyXyz ?

Open in Gerrit

Related details

Attention is currently required from:
  • Leszek Swirski
  • Michael Lippautz
Submit Requirements:
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: v8/v8
    Gerrit-Branch: main
    Gerrit-Change-Id: Ief017e568120f405127e163d2deb303e66205534
    Gerrit-Change-Number: 7241666
    Gerrit-PatchSet: 18
    Gerrit-Owner: Samuel Groß <sa...@chromium.org>
    Gerrit-Reviewer: Leszek Swirski <les...@chromium.org>
    Gerrit-Reviewer: Michael Lippautz <mlip...@chromium.org>
    Gerrit-Reviewer: Samuel Groß <sa...@chromium.org>
    Gerrit-CC: Code Review Nudger <android-build...@prod.google.com>
    Gerrit-Attention: Michael Lippautz <mlip...@chromium.org>
    Gerrit-Attention: Leszek Swirski <les...@chromium.org>
    Gerrit-Comment-Date: Fri, 19 Dec 2025 10:57:51 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Michael Lippautz <mlip...@chromium.org>
    unsatisfied_requirement
    open
    diffy

    Samuel Groß (Gerrit)

    unread,
    6:41 AM (5 hours ago) 6:41 AM
    to Code Review Nudger, Leszek Swirski, Michael Lippautz, chrom...@appspot.gserviceaccount.com, V8 LUCI CQ, Hannes Payer, cbruni...@chromium.org, dmercadi...@chromium.org, mlippau...@chromium.org, v8-re...@googlegroups.com, was...@google.com
    Attention needed from Leszek Swirski and Michael Lippautz

    Samuel Groß added 3 comments

    Patchset-level comments
    Michael Lippautz . unresolved

    This is slightly slower on all pinpoints? :/

    Samuel Groß

    As mentioned in the other comments and discussed offline, the CL is expected to cause some small regressions as the generic untagging mechanism now needs a few more instructions. The follow-up CL introduces "fast tags" which then again only require a single AND instruction to untag. The plan would be to identify which tags need to be fast (e.g. by landing this CL and seeing which benchmarks regress), then converting those to fast tags to recover the regressions.

    But let's come back to this in January after the holiday break :)

    Samuel Groß

    So it looks like with https://chromium-review.googlesource.com/c/v8/v8/+/7246171 we fully recover the regressions (and the Speedometer3 on Linux even shows improvements, though not sure where they would come from).

    File-level comment, Patchset 19 (Latest):
    Samuel Groß . resolved

    Let's get back to this CL now that the holiday break is over :) I've updated the follow-up CL and it seems to now fully recover the regression introduced by this CL. PTAL!

    File src/sandbox/indirect-pointer-tag.h
    Line 99, Patchset 17:constexpr IndirectPointerTagRange kAllSharedIndirectPointerTags(
    Samuel Groß . unresolved

    Maybe kAnyXyz ?

    Samuel Groß

    Let me know if anyone has preferences regarding the name of these ranges (kAllXyz vs kAnyXyz)

    Open in Gerrit

    Related details

    Attention is currently required from:
    • Leszek Swirski
    • Michael Lippautz
    Submit Requirements:
    • requirement is not satisfiedCode-Owners
    • requirement is not satisfiedCode-Review
    • requirement is not satisfiedNo-Unresolved-Comments
    • requirement is not satisfiedReview-Enforcement
    Inspect html for hidden footers to help with email filtering. To unsubscribe visit settings. DiffyGerrit
    Gerrit-MessageType: comment
    Gerrit-Project: v8/v8
    Gerrit-Branch: main
    Gerrit-Change-Id: Ief017e568120f405127e163d2deb303e66205534
    Gerrit-Change-Number: 7241666
    Gerrit-PatchSet: 19
    Gerrit-Owner: Samuel Groß <sa...@chromium.org>
    Gerrit-Reviewer: Leszek Swirski <les...@chromium.org>
    Gerrit-Reviewer: Michael Lippautz <mlip...@chromium.org>
    Gerrit-Reviewer: Samuel Groß <sa...@chromium.org>
    Gerrit-CC: Code Review Nudger <android-build...@prod.google.com>
    Gerrit-CC: Hannes Payer <hpa...@chromium.org>
    Gerrit-Attention: Michael Lippautz <mlip...@chromium.org>
    Gerrit-Attention: Leszek Swirski <les...@chromium.org>
    Gerrit-Comment-Date: Tue, 13 Jan 2026 11:41:38 +0000
    Gerrit-HasComments: Yes
    Gerrit-Has-Labels: No
    Comment-In-Reply-To: Samuel Groß <sa...@chromium.org>
    Comment-In-Reply-To: Michael Lippautz <mlip...@chromium.org>
    unsatisfied_requirement
    open
    diffy
    Reply all
    Reply to author
    Forward
    0 new messages