Tracing Android NDK's R_ARM_THM_CALL Truncate Problem
Will Newton
will.newton@linaro.org
Fri Mar 28 13:14:00 GMT 2014
On 28 March 2014 13:09, lin zuojian <manjian2006@gmail.com> wrote:
> Hi,
> I was completely misunderstood about this behavior.Here's what the
> source say:
> /* Default values. */
> /* Thumb branch range is +-4MB has to be used as the default
> maximum size (a given section can contain both ARM and Thumb
> code, so the worst case has to be taken into account).
>
> This value is 24K less than that, which allows for 2025
> 12-byte stubs. If we exceed that, then we will fail to link.
> The user will have to relink with an explicit group size
> option. */
>
> So this is cause by too many stubs in the same group,and I have to
> "relink with an explicit group size option".
>
> But will the linker do the math for me? Retry with the suitable
> parameter when fail for example.
Unfortunately no, the linker doesn't have the ability to do that at
the moment. From looking at the values used it seems like
stub_group_size could sensibly be decreased a bit, but it would be
interesting to know what the highest value that works for you is.
--
Will Newton
Toolchain Working Group, Linaro
More information about the Binutils
mailing list