Recent blog posts


Try to write a blog post every two weeks.

Recent posts are mostly about linkers.

lwn.net "A ToC of the 20 part linker essay" (by Ian Lance Taylor)


Symbol interposition and costs

-fno-semantic-interposition https://maskray.me/blog/2021-05-09-fno-semantic-interposition

ELF interposition and -Bsymbolic https://maskray.me/blog/2021-05-16-elf-interposition-and-bsymbolic

Why is CPython 3.10 1.3 faster?

The Last Alliance of ELF and Men

What is -Bsymbolic?

Android is considering ld.lld -Bsymbolic-non-weak-functions implemented by me


Dependency related linker options

https://maskray.me/blog/2021-06-13-dependency-related-linker-options

Extract an archive member to satisfy a DSO undef https://maskray.me/blog/2021-08-15-extract-archive-member-to-satisfy-dso-undef

Random thoughts on archive and DSO symbol resolution. Inspired by a local patch to Android toolchain, actually some build system bugs


Symbol processing

https://maskray.me/blog/2021-06-20-symbol-processing


SECTIONS and OVERWRITE_SECTIONS

https://maskray.me/blog/2021-07-04-sections-and-overwrite-sections

align (ld64 -sectalign), retain sections under garbage collection (FB), define encapsulation symbols (Fuchsia's binary id)


COMDAT and section group

https://maskray.me/blog/2021-07-25-comdat-and-section-group

Compiler instrumentation needs metadata sections. Many problems when thinking about GC


All about Global Offset Table

https://maskray.me/blog/2021-08-29-all-about-global-offset-table

What is GOT? Next: what is PLT?

感谢PLCT实验室提供了arm64 macOS设备的远程访问,得以验证ld64的GOT optimization (linker optimization hints)行为。


Build glibc 2.35 with LLD 13

https://maskray.me/blog/2021-09-05-build-glibc-with-lld

Per aspera ad astra

The next release glibc 2.35 should be buildable with LLD 13.0.0, with all tests passing on aarch64/i386/x86-64.

感谢PLCT实验室提供了RISC-V设备的远程访问,得以确认riscv64 build正确性


Thanks