This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [GLIBC][AARCH64]Rewrite elf_machine_load_address using _DYNAMIC symbol


On 07/11/16 15:15, Szabolcs Nagy wrote:
> On 04/11/16 21:24, Roland McGrath wrote:
>> On many or perhaps all machines, elf_machine_load_address could now be
>> implemented purely in C by using a link-time trick.
>>
>> In C, just:
>>
>> 	static inline ElfW(Addr) __attribute__ ((unused))
>> 	elf_machine_load_address (void)
>> 	{
>> 	  extern const char _BASE[] __attribute__ ((visibility ("hidden")));
>> 	  return (ElfW(Addr)) _BASE;
>> 	}
>>
>> Then add a trivial input linker script to the ld.so link:
>>
>> 	PROVIDE_HIDDEN(_BASE = 0);

on a second thought:
why is it not ok to use _DYNAMIC instead of _BASE?

then no linker script is needed (_DYNAMIC is in the elf spec).


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]