Skip to content

Elf: Fix link info note generation

Ben Gamari requested to merge wip/fix-link-info-note into master

Previously we would use the .int assembler directive to generate 32-bit words in the note section. However, .int is note guaranteed to produce 4-bytes; in fact, on some platforms (e.g. AArch64) it produces 8-bytes. Use the .4bytes directive to avoid this.

Moreover, we used the .align directive, which is quite platform dependent. On AArch64 it appears to not even be idempotent (despite what the documentation claims). .balign is consequentially preferred as it offers consistent behavior across platforms.

This fixes a number of failing recompilation checking bugs on AArch64 and some i386 platforms.

Merge request reports