• Michael Achenbach's avatar
    Revert "Implement and use VectorSegment to avoid repeated allocation of ZoneVector properties." · 32033f4f
    Michael Achenbach authored
    This reverts commit d3104923.
    
    Reason for revert: Breaks win debug, causes lots of timeouts.
    https://build.chromium.org/p/client.v8/builders/V8%20Win64%20-%20debug/builds/20387
    
    Original change's description:
    > Implement and use VectorSegment to avoid repeated allocation of ZoneVector properties.
    > 
    > The parser holds a single vector whose backing storage is reused in calls
    > to ParseJsonObject, so that once we reach the peak number of unstored
    > properties no more allocations are required.
    > 
    > This improves performance of parsing inputs like those in Speedometer VanillaJS
    > by about 2% in my local measurement, and would presumably do better on more
    > pathological inputs.
    > 
    > This should also have the side effect of reducing peak memory usage at this time
    > slightly, since we do fewer zone allocations which cannot be freed until the
    > parse finishes.
    > 
    > Bug: chromium:771227
    > Change-Id: I8aa1514b37a74f82539f95f94292c8fa1582d66a
    > Reviewed-on: https://chromium-review.googlesource.com/789511
    > Reviewed-by: Camillo Bruni <cbruni@chromium.org>
    > Reviewed-by: Marja Hölttä <marja@chromium.org>
    > Commit-Queue: Jeremy Roman <jbroman@chromium.org>
    > Cr-Commit-Position: refs/heads/master@{#49693}
    
    TBR=jbroman@chromium.org,marja@chromium.org,cbruni@chromium.org
    
    Change-Id: I5b198aeffed6f1543f6110709dc74b311d4ba144
    No-Presubmit: true
    No-Tree-Checks: true
    No-Try: true
    Bug: chromium:771227
    Reviewed-on: https://chromium-review.googlesource.com/796151Reviewed-by: 's avatarMichael Achenbach <machenbach@chromium.org>
    Commit-Queue: Michael Achenbach <machenbach@chromium.org>
    Cr-Commit-Position: refs/heads/master@{#49705}
    32033f4f
json-parser.cc 29 KB