[PATCH] [lld] ELF: Initial implementation for ARM static linking

Will Newton will.newton at linaro.org
Fri Nov 28 02:26:07 PST 2014


On 28 November 2014 at 07:18, Denis Protivensky
<dprotivensky at accesssoftek.com> wrote:
> Hi,
>
> The updated patch with addressed notes is attached:
> - emulation name changed to "armelf_linux_eabi"
> - corrected comment referencing x86_64 instead of ARM
> - TODO list is added
> - test case written with elfyaml is added

This looks good to me, but I'm new here. It's probably best to wait
until next week to see if there are any US developers on holiday who
wish to comment.

> On 11/26/2014 05:01 PM, Will Newton wrote:
>
> On 26 November 2014 at 12:17, Denis Protivensky
> <dprotivensky at accesssoftek.com> wrote:
>> Hi,
>>
>> The patch contains the skeleton code for ELF binary generation for ARM
>> platform.
>> The code is "almost" able to statically link the simplest case of void
>> main() { return 0; } sample.
>
> Do you know what functionality is missing to enable that?
>
>> Added all needed relocations, GOT and TLS handling.
>> Some of these may still be improper which causes segfaults.
>>
>> NOTE: the tests are absent because there's no simple way to generate diff
>> for binary files (which are used in tests by the linker).
>
> Is it possible to use ELFYAML for the tests similarly to e.g. the MIPS
> backend? I recently posted a patch to add ARM support to ELFYAML.
>
> A couple of things I noticed:
>
> 1. GNU ld seems to use "armelf_linux_eabi" for the emulation name
> rather than "armlinux"
> 2. One comment reference to x86-64 that should be ARM
> 3. It would be useful to add a TODO list that lists all the known
> unimplemented parts
>
> Otherwise this looks like a good start!
>
> --
> Will Newton
> Toolchain Working Group, Linaro
>
>



-- 
Will Newton
Toolchain Working Group, Linaro



More information about the llvm-commits mailing list