Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Optimise encodeInto reallocations #1414

Merged
merged 1 commit into from
Apr 2, 2019

Commits on Apr 1, 2019

  1. Optimise encodeInto reallocations

    Instead of doubling the size on each iteration, use precise upper limit (3 * JS length) if the string turned out not to be ASCII-only. This results in maximum of 1 reallocation instead of O(log N).
    
    Some dummy examples of what this would change:
     - 1000 of ASCII chars: no change, allocates 1000 bytes and bails out.
     - 1000 ASCII chars + 1 '😃': before allocated 1000 bytes and reallocated to 2000; now allocates 1000 bytes and reallocates to 1006.
     - 1000 of '😃' chars: before allocated 1000 bytes, reallocated to 2000, finally reallocated again to 4000; now allocates 1000 bytes and reallocates to 4000 right away.
    
    Related issue: rustwasm#1313
    RReverser committed Apr 1, 2019
    Configuration menu
    Copy the full SHA
    2f28b8b View commit details
    Browse the repository at this point in the history