• Deepti Gandluri's avatar
    Revert "[runtime] Refactor TransitionsAccessor" · 7c602011
    Deepti Gandluri authored
    This reverts commit c927ada7.
    
    Reason for revert: GC stress failures: https://ci.chromium.org/ui/p/v8/builders/ci/V8%20Linux%20-%20gc%20stress/37276/overview
    
    Original change's description:
    > [runtime] Refactor TransitionsAccessor
    >
    > Problems:
    > - The class uses a bare Map field, but some methods can trigger GC
    > causing it to have a potential dangling pointer in case of map
    > compaction.
    > - Some methods invalidate the object state and should not be used again.
    > - Complicate logic with a no_gc and a gc aware constructors. Some
    > methods can only be called if the object is constructed with a
    > particular constructor (e.g, Insert and PutPrototypeTransition).
    >
    > Note: Most usages of this class is done by constructing an object and
    > calling a single method:
    > `TransitionAccessor(...).Method(...)`
    > So we can easily change them to a static method.
    >
    > This CL:
    > 1. Adds DISALLOW_GARBAGE_COLLECTION to the class.
    > 2. Makes methods that can trigger GC static.
    > 3. Creates static helper functions that wrap the class in a different
    > scope, since TransitionsAccessor now forces the scope to disallow gc.
    > 4. Removes now unnecessary "Reload" logic.
    >
    > Bug: chromium:1295133, v8:12578
    > Change-Id: I85484e7235fbd5e69894e26f5e1c491c6f69635e
    > Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3450416
    > Reviewed-by: Dominik Inführ <dinfuehr@chromium.org>
    > Reviewed-by: Toon Verwaest <verwaest@chromium.org>
    > Commit-Queue: Victor Gomes <victorgomes@chromium.org>
    > Cr-Commit-Position: refs/heads/main@{#79051}
    
    Bug: chromium:1295133, v8:12578
    Change-Id: Ia567cdcae73bc7fdfaf08b62eeeb899d6a933e21
    No-Presubmit: true
    No-Tree-Checks: true
    No-Try: true
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3456682
    Auto-Submit: Deepti Gandluri <gdeepti@chromium.org>
    Commit-Queue: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
    Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
    Owners-Override: Deepti Gandluri <gdeepti@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#79052}
    7c602011
test-field-type-tracking.cc 121 KB