• Darius M's avatar
    [compiler] Remove delayed string constants · de04959f
    Darius M authored
    StringConstantXXX were introduced when we switched to concurrent
    compilation, as a way to build strings in Turbofan in a background
    thread, without having to actually allocate them on the main heap
    from the background. See https://crrev.com/c/1221807.
    
    Now that we have local heaps, we can actually allocate strings from
    the background, making StringConstantXXX useless.
    
    Moreover, we would fold constant string concatenations into
    ConsString, which sounds a bit dubious for performance. Now, small
    constant string concatenations will be folded into SeqStrings, while
    larger ones will remain ConsString, just to avoid the quadratic
    worst-case.
    
    Change-Id: I0479d16aa5691c9d774187c4cc0d03ff4fe2b4f9
    Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/3811291Reviewed-by: 's avatarTobias Tebbi <tebbi@chromium.org>
    Commit-Queue: Darius Mercadier <dmercadier@chromium.org>
    Reviewed-by: 's avatarLeszek Swirski <leszeks@chromium.org>
    Cr-Commit-Position: refs/heads/main@{#82381}
    de04959f
string-inl.h 49.9 KB