• Leszek Swirski's avatar
    Revert "[torque] Don't generate k(?:Start|End)Of\w+FieldsOffset constants" · 6025b260
    Leszek Swirski authored
    This reverts commit 7366f6e2.
    
    Reason for revert: Speculative revert for cctest/test-debug-helper/GetObjectProperties failures
    https://logs.chromium.org/logs/v8/buildbucket/cr-buildbucket/8833300564873660401/+/u/Check/GetObjectProperties
    
    Original change's description:
    > [torque] Don't generate k(?:Start|End)Of\w+FieldsOffset constants
    >
    > Torque currently generates constants like kStartOfWeakFieldsOffset and
    > kEndOfStrongFieldsOffset, which can be used when writing custom
    > BodyDescriptors. However, these offsets have some potentially confusing
    > behaviors:
    >
    > * They don't take inheritance into account and describe only the fields
    >   defined by the current class itself, so there might be (for example)
    >   strong fields before kStartOfStrongFieldsOffset if they were defined
    >   by a superclass.
    > * kStartOfWeakFieldsOffset points to the first field defined in Torque
    >   using the keyword `weak`, which indicates fields with *custom*
    >   weakness semantics (those that should be visited with
    >   IterateCustomWeakPointers), not those that may contain standard weak
    >   pointers (visited with IterateMaybeWeakPointers). (As a follow-up, I'd
    >   like to also rename `weak` to `@customWeak`.)
    >
    > Given that these constants have very low usage and somewhat bizarre
    > semantics, I propose that we remove them. This change does so, and
    > updates the existing usages to either define the required constants
    > directly in C++ or not use them. I know that defining these constants in
    > C++ is more brittle, but I think that brittle and clear is better than
    > automatic and incomprehensible.
    >
    > Bug: v8:7793
    > Change-Id: I87f8c85ccae4027f61ac73d4e7e4e2820e92003b
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3199731
    > Reviewed-by: Nico Hartmann <nicohartmann@chromium.org>
    > Reviewed-by: Toon Verwaest <verwaest@chromium.org>
    > Commit-Queue: Seth Brenith <seth.brenith@microsoft.com>
    > Cr-Commit-Position: refs/heads/main@{#77411}
    
    Bug: v8:7793
    Change-Id: Ia12b5d773db35739283ca8871d3dd6922413cc82
    No-Presubmit: true
    No-Tree-Checks: true
    No-Try: true
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3226783
    Auto-Submit: Leszek Swirski <leszeks@chromium.org>
    Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
    Commit-Queue: Leszek Swirski <leszeks@chromium.org>
    Owners-Override: Leszek Swirski <leszeks@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#77415}
    6025b260
descriptor-array.h 11.2 KB