tinycc-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Tinycc-devel] [PATCH] TCC arm64 back end


From: Edmund Grimley Evans
Subject: Re: [Tinycc-devel] [PATCH] TCC arm64 back end
Date: Wed, 11 Mar 2015 15:30:46 +0000

Thomas:

>> And I pulled my hair out again when tracing the different paths the
>> linker can go through in different modes, and how the relocs and symbol
>> values change over the course of compilation.  One of those days ... :-)
>
> I think that's the next thing I'm going to work on.

In that case I should quote this, which only went to Michael, I think:

> The main defect is linking. I've just discovered that even with the
> work-around of using R_AARCH64_MOVW_UABS_G0_NC,... instead of
> R_AARCH64_ADR_PREL_PG_HI21 "make test" won't always work: "make
> libtest" can fail because code generated with libtcc does not use a
> PLT. I've just been lucky that it works in the chroots I usually use.

See also my message dated Sat, 28 Feb 2015 09:36:39 +0000.

There seems to be a general problem with TCC not using a PLT when it
should. Without the PLT it works all of the time on i386 and some of
the time on arm64, depending on the environment. So you really need to
print the addresses that are being used to check that they are in the
PLT and that TCC isn't trying to branch directly to a different
library/executable which might not necessarily be within range of a
branch instruction.

Edmund



reply via email to

[Prev in Thread] Current Thread [Next in Thread]