[ast] Allocate cons strings on-demand
Remove AstConsString "internalization", and instead make the conversion to heap String be on-demand with an Allocate method. We never actually need the heapified cons string more than once, so there's no need to do the internalization walk or do the next/string union dance in the AstConsString class. This also allows us to specify how we want to allocate the String at the call site. In particular, it allows us to allocate a flat SeqString rather rather than a ConsString. This allows us to avoid allocating ConsStrings which will just be passed to a flatten call, and especially avoid allocating dead ConsStrings in the off-thread old space. Bug: chromium:1011762 Bug: chromium:1043168 Change-Id: Id851f2f7529d92ad7e5388eb22823fd6d1959cd0 Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/2020953Reviewed-by: Toon Verwaest <verwaest@chromium.org> Reviewed-by: Ulan Degenbaev <ulan@chromium.org> Commit-Queue: Leszek Swirski <leszeks@chromium.org> Cr-Commit-Position: refs/heads/master@{#66042}
Showing
Please
register
or
sign in
to comment