[llvm-dev] LLD default page size for arm32

Tobias Hieta via llvm-dev llvm-dev at lists.llvm.org
Wed Apr 1 12:33:44 PDT 2020


In the recent days we have been debugging a really thorny issue where
binaries build with clang and linked with lld was just "Killed" when
started on a specific armv7 device we ship on.

After quite a bit of head scratching it turns out that the kernel on this
device ships with a 32k default page size (getconf PAGESIZE) and lld uses
4k default page size.

We fixed this by passing -zmax-page-size=0x10000 to lld.

The default page size in GNU ld for arm is 64k so binaries linked with ld
just worked on this device.

I put the question in the discord lld channel and after a bit back and
forth I think it's better to discuss it here.

Is 4k the right default for lld on Arm32? Does anyone know if there is a
strong reason to not change this?

Since we have a workaround I am not in a hurry to change this - but if
nothing else I hope this email will help someone else finding the solution
to the problem I had.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200401/da259734/attachment.html>

More information about the llvm-dev mailing list