[Top][All Lists]

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

[Tinycc-devel] No lazy PLTGOT relocation for TinyCC generated executable

From: Thomas Preud'homme
Subject: [Tinycc-devel] No lazy PLTGOT relocation for TinyCC generated executables
Date: Mon, 18 May 2015 19:46:26 +0800
User-agent: K-9 Mail for Android

Hi all,

I'm currently working on distention, cleaning up and refactoring tccelf.c. The 
process already uncovered some bugs and one of them is that PLT0 is broken for 
ARM [1]. Since binaries are working, I investigated and found that the lazy 
relocation of PLTGOT entries is not in effect. When _start is run, PLTGOT 
entries already hold their final values.

I tries comparing the output of readelf -a for an hello world program but there 
are too many differences and I didn't spot anything obvious. So I'm turning to 
you dear TinyCC community[2] for some explanation. Why does ld.so behave as if 
RTLD_BIND_NOW was set when running TinyCC generated executables?

[1] it lacks an extra 4 bytes to hold offset to GOT and code in relocate_plt to 
write the offset in that space.
[2] Michael, I'm asking you explicitly since you are one of the author of the 
System V ABI for x86_64 and thus probably know a fair amount on the subject.

reply via email to

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