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

Reduce binary size of the library #537

Merged
merged 2 commits into from
Mar 24, 2024
Merged

Commits on Mar 24, 2024

  1. utf8: Rework case folding

    The generated switch statement compiled to around 85 KB of machine code
    and rodata. Use a table and binary search instead, reducing the size of
    the library from 345 to 272 KB on Ubuntu 22.04.
    
    Replacement text is now preencoded as UTF-8.
    
    This also removes the last Perl script from the repo.
    nwellnhof committed Mar 24, 2024
    Configuration menu
    Copy the full SHA
    76d1045 View commit details
    Browse the repository at this point in the history
  2. houdini: Rework HTML entity table

    The new layout saves about 20 KB and removes 50 KB of relocation
    entries from the shared library, also speeding up loading.
    
    Reduces the size of the shared library from 272 to 202 KB on Ubuntu
    22.04.
    nwellnhof committed Mar 24, 2024
    Configuration menu
    Copy the full SHA
    0bfa10c View commit details
    Browse the repository at this point in the history