[PATCH] Add support for new ABI choice e_flags values on ARM

Steve McIntyre steve.mcintyre@linaro.org
Tue Sep 4 17:26:00 GMT 2012


On Thu, Aug 30, 2012 at 01:21:42PM +0000, Joseph S. Myers wrote:
>On Thu, 30 Aug 2012, Steve McIntyre wrote:
>
>> gas:
>>     * config/tc-arm.c (md_begin): Use the new ARM
>>     hard-float/soft-float ABI flags for EABI_VER5
>
>This seems wrong; the ABI is that these flags are only set in ET_EXEC and 
>ET_DYN objects.  This means the assembler should have nothing to do with 
>them; rather, the linker should set them based on the build attributes in 
>its input files, if producing ET_EXEC or ET_DYN output.  (And there should 
>be testcases added to the linker testsuite for this: that they are set 
>for such output, but not for ld -r links.)

Hi,

Updated patch attached including test cases for ld. They work for me
OK (explicitly testing both positive and negative cases for the ELF
type and the ABI version), but it's the first time I've worked on
input for dejagnu so review here would be great! My test cases work
ok, but I'm seeing a lot of other failures unrelated to my changes; I
assume that's expected.

I've also tried to get gold to do the right thing here, hooking into
Target_arm<big_endian>::do_adjust_elf_header(). But I don't see how
that's ever called; my testing shows it's clearly not. I'm also a
little baffled as to why gold's testsuite is so utterly different from
the one for ld - can anyone explain that please?

Cheers,
-- 
Steve McIntyre                                steve.mcintyre@linaro.org
<http://www.linaro.org/> Linaro.org | Open source software for ARM SoCs
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-Add-new-ARM-hard-float-soft-float-ABI-flags-for-EABI.patch
Type: text/x-diff
Size: 15542 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20120904/7f3202e3/attachment.bin>


More information about the Binutils mailing list