This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: gold on trunk breaks powerpc-, aarch64- and arm32-linux (Re: [gold][PATCH] PR gold/19119: Gold accepts bogus target emulation)
- From: "H.J. Lu" <hjl dot tools at gmail dot com>
- To: Matthias Klose <doko at ubuntu dot com>
- Cc: Cary Coutant <ccoutant at gmail dot com>, Binutils <binutils at sourceware dot org>, gcc Development <gcc at gcc dot gnu dot org>
- Date: Sun, 25 Oct 2015 17:14:59 -0700
- Subject: Re: gold on trunk breaks powerpc-, aarch64- and arm32-linux (Re: [gold][PATCH] PR gold/19119: Gold accepts bogus target emulation)
- Authentication-results: sourceware.org; auth=none
- References: <20151014160535 dot GA9804 at intel dot com> <CAJimCsGDNCogqXPOvLHXw=5SrCZpHes7EmSqjtqhadJXgZbwhQ at mail dot gmail dot com> <562D135B dot 7060207 at ubuntu dot com> <CAMe9rOqrz6GurgFLAnqafobM0rA_j49VMQySZ=M-4byNyHuKMQ at mail dot gmail dot com> <562D6ACD dot 1020803 at ubuntu dot com>
On Sun, Oct 25, 2015 at 4:50 PM, Matthias Klose <doko@ubuntu.com> wrote:
> On 25.10.2015 18:40, H.J. Lu wrote:
>>
>> On Sun, Oct 25, 2015 at 10:37 AM, Matthias Klose <doko@ubuntu.com> wrote:
>>>
>>> On 15.10.2015 17:57, Cary Coutant wrote:
>>>>>
>>>>>
>>>>> PR gold/19119
>>>>> * options.h (General_options): Remove "obsolete" from -m.
>>>>
>>>>
>>>>
>>>> I'm a little reluctant to remove "obsolete" from the description --
>>>> maybe "deprecated" instead?
>>>>
>>>>> * parameters.cc (set_parameters_target): Check if input
>>>>> target
>>>>> is compatible with output emulation set by "-m emulation".
>>>>
>>>>
>>>>
>>>> This is OK. Thanks!
>>>
>>>
>>>
>>> hmm, this breaks any released gcc on aarch64-linux-gnu and
>>> arm-linux-gnueabi*
>>>
>>> $ gcc -fuse-ld=gold foo.c
>>> /usr/bin/ld.gold: error: unrecognised output emulation: aarch64linux
>>> collect2: error: ld returned 1 exit status
>>>
>>> $ gcc -fuse-ld=gold foo.c
>>> /usr/bin/ld.gold: error: unrecognised output emulation: armelf_linux_eabi
>>> collect2: error: ld returned 1 exit status
>>>
>>
>> What do ld.bfd -V and ld.gold -V report? They should support the
>> same set of emulations.
>>
>
> powerpc-linux-gnu as well:
> /usr/bin/ld.gold: error: unrecognised output emulation: elf32ppclinux
>
>
> aarch64-linux:gnu
>
> gold: supported emulations: aarch64_elf64_le_vec aarch64_elf64_be_vec
> aarch64_elf32_le_vec aarch64_elf32_be_vec elf64-tradlittlemips
> elf32-tradlittlemips-nacl elf64-tradbigmips elf32-tradlittlemips-nacl
> elf32-tradlittlemips elf32-tradlittlemips-nacl elf32-tradbigmips
> elf32-tradlittlemips-nacl elf32tilegx_be elf64tilegx_be elf32tilegx
> elf64tilegx armelfb armelfb_nacl armelf armelf_nacl elf64lppc elf64ppc
> elf32lppc elf32ppc elf64_sparc elf32_sparc elf32_x86_64 elf32_x86_64_nacl
> elf_x86_64 elf_x86_64_nacl elf_iamcu elf_i386 elf_i386_nacl
>
> $ ld -V
> GNU ld (GNU Binutils for Ubuntu) 2.25.51.20151022
> Supported emulations:
> aarch64linux
> aarch64elf
> aarch64elf32
> aarch64elf32b
> aarch64elfb
> armelf
> armelfb
> aarch64linuxb
> aarch64linux32
> aarch64linux32b
> armelfb_linux_eabi
> armelf_linux_eabi
>
>
> arm-linux-gnueabihf
>
> gold: supported emulations: aarch64_elf64_le_vec aarch64_elf64_be_vec
> aarch64_elf32_le_vec aarch64_elf32_be_vec elf64-tradlittlemips
> elf32-tradlittlemips-nacl elf64-tradbigmips elf32-tradlittlemips-nacl
> elf32-tradlittlemips elf32-tradlittlemips-nacl elf32-tradbigmips
> elf32-tradlittlemips-nacl elf32tilegx_be elf64tilegx_be elf32tilegx
> elf64tilegx armelfb armelfb_nacl armelf armelf_nacl elf64lppc elf64ppc
> elf32lppc elf32ppc elf64_sparc elf32_sparc elf32_x86_64 elf32_x86_64_nacl
> elf_x86_64 elf_x86_64_nacl elf_iamcu elf_i386 elf_i386_nacl
>
> $ ld -V
> GNU ld (GNU Binutils for Ubuntu) 2.25.51.20151022
> Supported emulations:
> armelf_linux_eabi
> armelfb_linux_eabi
>
>
> powerpc-linux-gnu
>
> supported emulations: elf64lppc elf64ppc elf32lppc elf32ppc
>
> $ ld -V
> GNU ld (GNU Binutils for Ubuntu) 2.25.1
> Supported emulations:
> elf32ppclinux
> elf32ppc
> elf32ppcsim
> elf64ppc
>
Please open a gold bug with missing emulations.
--
H.J.