• Jakob Gruber's avatar
    [string] Micro-optimize String::Flatten · 4593f3c6
    Jakob Gruber authored
    - Use a StringShape instead of repeatedly querying type.
    - Add a shortcut for already-flat strings.
    - Unhandlify where possible (all except SlowFlatten).
    - Mark String::Flatten and StringShape methods V8_INLINE.
    - Add a specialized ConsString::IsFlat overload.
    
    Drive-by: Various (add const, remove this->, helper methods).
    
    Bug: v8:12195
    Change-Id: If20df12bc29c29cff2005fdc9bd826ed9f303463
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3259527
    Auto-Submit: Jakob Gruber <jgruber@chromium.org>
    Reviewed-by: 's avatarCamillo Bruni <cbruni@chromium.org>
    Commit-Queue: Camillo Bruni <cbruni@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#77701}
    4593f3c6
test-strings.cc 79.1 KB