Skip to content
This repository was archived by the owner on Nov 22, 2025. It is now read-only.
/ libc-abi-tools Public archive

Expand target bit set, shrink file size, and add loongarch64-linux-gnusf#12

Merged
alexrp merged 7 commits intoziglang:mainfrom
alexrp:main
Oct 6, 2024
Merged

Expand target bit set, shrink file size, and add loongarch64-linux-gnusf#12
alexrp merged 7 commits intoziglang:mainfrom
alexrp:main

Conversation

@alexrp
Copy link
Member

@alexrp alexrp commented Sep 23, 2024

Expanding the target bit set from u32 to u64 results in an unacceptable size increase. So instead, I changed it to be written as a u64 in ULEB128. Even after adding loongarch64-linux-gnusf, the abilists file shrunk from 269 KB to 265 KB. I also moved the inclusion terminal bit over to the library index byte since that value is expected to be very small ~forever, shrinking the file further to 242 KB (because that bit was kind of undermining ULEB128). Finally, I changed the object size to be u16 written as ULEB128 too, resulting in a final size of 240 KB.

Closes #11.

@alexrp alexrp requested a review from andrewrk October 3, 2024 10:56
@andrewrk
Copy link
Member

andrewrk commented Oct 3, 2024

Nice work, clever solution!

@alexrp alexrp merged commit b23be92 into ziglang:main Oct 6, 2024
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

We have hit the limit of the target bit set in the format

2 participants