From: Matthias Klose <doko@ubuntu.com>
To: Richard Earnshaw <rearnsha@arm.com>
Cc: GCC Patches <gcc-patches@gcc.gnu.org>,
GCJ-patches <java-patches@gcc.gnu.org>,
"libstdc++@gcc.gnu.org" <libstdc++@gcc.gnu.org>
Subject: Re: [patch] [gcc/libgcc/ada/libstdc++] Match arm*-*-linux-*eabi* for ARM Linux/GNU EABI
Date: Mon, 15 Oct 2012 14:25:00 -0000 [thread overview]
Message-ID: <507C1BBB.2040708@ubuntu.com> (raw)
In-Reply-To: <4FE97C7F.8060308@arm.com>
[-- Attachment #1: Type: text/plain, Size: 1426 bytes --]
On 26.06.2012 11:10, Richard Earnshaw wrote:
> On 25/06/12 22:30, Matthias Klose wrote:
>> On 25.06.2012 18:21, Matthias Klose wrote:
>>> On 25.06.2012 15:22, Richard Earnshaw wrote:
>>>> On 25/06/12 13:08, Matthias Klose wrote:
>>>>> gcc/config.gcc now allows matching arm*-*-linux-*eabi* instead of
>>>>> arm*-*-linux-*eabi for ARM Linux/GNU EABI. This changes the matching in various
>>>>> other places as well. arm-linux-gnueabihf is used as a triplet by some
>>>>> distributions.
>>>>>
>>>>> Ok for the trunk?
>>>>>
>>>>
>>>> now that all arm-linux ports are EABI conforming, why can't this just become
>>>>
>>>> arm*-*-linux*
>>>> ?
>>>
>>> I assume it could. But I didn't check for other places where this would be needed.
>>
>> $ grep -r 'arm[^_]*eabi' . |egrep -v 'ChangeLog|\.svn/'|wc -l
>> 87
>>
>> this seems to be a larger change, which should have been committed when the old
>> abi targets were deprecated. I'd like to get the eabi* change in first.
>>
>> Matthias
>>
>>
>
> Removal of the FPA support is still ongoing, but beware that it doesn't
> mean that all supported ARM configurations will be EABI conforming (some
> configurations did not use the FPA and are thus not affected by this
> change); but all ARM Linux configurations will be.
Updated patch to just match arm*-*-linux*, searched for additional files with
grep -r 'arm[^_]*linux[^_]*eabi' . |egrep -v 'ChangeLog|\.svn/'
Matthias
[-- Attachment #2: arm-linux-triplet.diff --]
[-- Type: text/plain, Size: 11681 bytes --]
2012-10-15 Matthias Klose <doko@ubuntu.com>
gcc/
* config.gcc: Match arm*-*-linux-* for ARM Linux/GNU.
* doc/install.texi:
gcc/testsuite/
2012-10-15 Matthias Klose <doko@ubuntu.com>
* lib/target-supports.exp (check_profiling_available): Match
arm*-*-linux-* for ARM Linux/GNU.
* g++.dg/torture/predcom-1.C: Match arm*-*-linux-* for ARM Linux/GNU.
* gfortran.dg/enum_10.f90: Likewise.
* gfortran.dg/enum_9.f90: Likewise.
* gcc.target/arm/synchronize.c: Likewise.
* g++.old-deja/g++.jason/enum6.C: Likewise.
* g++.old-deja/g++.other/enum4.C: Likewise.
* g++.old-deja/g++.law/enum9.C: Likewise.
gcc/ada/
2012-10-15 Matthias Klose <doko@ubuntu.com>
* gcc-interface/Makefile.in: Match arm*-*-linux-*eabi* for
ARM Linux/GNU.
libgcc/
2012-10-15 Matthias Klose <doko@ubuntu.com>
* config.host: Match arm*-*-linux-* for ARM Linux/GNU.
libstdc++-v3/
2012-10-15 Matthias Klose <doko@ubuntu.com>
* configure.host: Match arm*-*-linux-* for ARM Linux/GNU.
* testsuite/20_util/make_signed/requirements/typedefs-2.cc: Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc: Likewise.
libjava/
2012-10-15 Matthias Klose <doko@ubuntu.com>
* configure.ac: Match arm*-*-linux-* for ARM Linux/GNU.
* configure: Regenerate.
Index: libgcc/config.host
===================================================================
--- libgcc/config.host (revision 192459)
+++ libgcc/config.host (working copy)
@@ -316,7 +316,7 @@
arm*-*-linux*) # ARM GNU/Linux with ELF
tmake_file="${tmake_file} arm/t-arm t-fixedpoint-gnu-prefix"
case ${host} in
- arm*-*-linux-*eabi)
+ arm*-*-linux-*)
tmake_file="${tmake_file} arm/t-elf arm/t-bpabi arm/t-linux-eabi t-slibgcc-libgcc"
tm_file="$tm_file arm/bpabi-lib.h"
unwind_header=config/arm/unwind-arm.h
Index: libjava/configure.ac
===================================================================
--- libjava/configure.ac (revision 192459)
+++ libjava/configure.ac (working copy)
@@ -931,7 +931,7 @@
# on Darwin -single_module speeds up loading of the dynamic libraries.
extra_ldflags_libjava=-Wl,-single_module
;;
-arm*linux*eabi)
+arm*-*-linux-*)
# Some of the ARM unwinder code is actually in libstdc++. We
# could in principle replicate it in libgcj, but it's better to
# have a dependency on libstdc++.
Index: gcc/testsuite/gfortran.dg/enum_10.f90
===================================================================
--- gcc/testsuite/gfortran.dg/enum_10.f90 (revision 192459)
+++ gcc/testsuite/gfortran.dg/enum_10.f90 (working copy)
@@ -1,7 +1,7 @@
! { dg-do run }
! { dg-additional-sources enum_10.c }
! { dg-options "-fshort-enums -w" }
-! { dg-options "-fshort-enums -w -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } }
+! { dg-options "-fshort-enums -w -Wl,--no-enum-size-warning" { target arm*-*-linux* } }
! Make sure short enums are indeed interoperable with the
! corresponding C type.
Index: gcc/testsuite/gfortran.dg/enum_9.f90
===================================================================
--- gcc/testsuite/gfortran.dg/enum_9.f90 (revision 192459)
+++ gcc/testsuite/gfortran.dg/enum_9.f90 (working copy)
@@ -1,6 +1,6 @@
! { dg-do run }
! { dg-options "-fshort-enums" }
-! { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } }
+! { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux* } }
! Program to test enumerations when option -fshort-enums is given
program main
Index: gcc/testsuite/gcc.target/arm/synchronize.c
===================================================================
--- gcc/testsuite/gcc.target/arm/synchronize.c (revision 192459)
+++ gcc/testsuite/gcc.target/arm/synchronize.c (working copy)
@@ -1,4 +1,4 @@
-/* { dg-final { scan-assembler "__sync_synchronize|dmb|mcr" { target arm*-*-linux-*eabi } } } */
+/* { dg-final { scan-assembler "__sync_synchronize|dmb|mcr" { target arm*-*-linux-* } } } */
void *foo (void)
{
Index: gcc/testsuite/g++.old-deja/g++.law/enum9.C
===================================================================
--- gcc/testsuite/g++.old-deja/g++.law/enum9.C (revision 192459)
+++ gcc/testsuite/g++.old-deja/g++.law/enum9.C (working copy)
@@ -7,10 +7,10 @@
// enum-size attributes should only be emitted if there are values of
// enum type that can escape the compilation unit, gcc cannot currently
// detect this; if this facility is added then this linker option should
-// not be needed. arm-*-linux*eabi should be a good approximation to
+// not be needed. arm-*-linux* should be a good approximation to
// those platforms where the EABI supplement defines enum values to be
// 32 bits wide.
-// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } }
+// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux* } }
// GROUPS passed enums
extern "C" int printf (const char *, ...);
Index: gcc/testsuite/g++.old-deja/g++.jason/enum6.C
===================================================================
--- gcc/testsuite/g++.old-deja/g++.jason/enum6.C (revision 192459)
+++ gcc/testsuite/g++.old-deja/g++.jason/enum6.C (working copy)
@@ -7,10 +7,10 @@
// enum-size attributes should only be emitted if there are values of
// enum type that can escape the compilation unit, gcc cannot currently
// detect this; if this facility is added then this linker option should
-// not be needed. arm-*-linux*eabi should be a good approximation to
+// not be needed. arm-*-linux* should be a good approximation to
// those platforms where the EABI supplement defines enum values to be
// 32 bits wide.
-// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } }
+// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux* } }
#include <limits.h>
Index: gcc/testsuite/g++.old-deja/g++.other/enum4.C
===================================================================
--- gcc/testsuite/g++.old-deja/g++.other/enum4.C (revision 192459)
+++ gcc/testsuite/g++.old-deja/g++.other/enum4.C (working copy)
@@ -9,10 +9,10 @@
// enum-size attributes should only be emitted if there are values of
// enum type that can escape the compilation unit, gcc cannot currently
// detect this; if this facility is added then this linker option should
-// not be needed. arm-*-linux*eabi should be a good approximation to
+// not be needed. arm-*-linux* should be a good approximation to
// those platforms where the EABI supplement defines enum values to be
// 32 bits wide.
-// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } }
+// { dg-options "-fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux* } }
enum E {
a = -312
Index: gcc/testsuite/g++.dg/torture/predcom-1.C
===================================================================
--- gcc/testsuite/g++.dg/torture/predcom-1.C (revision 192459)
+++ gcc/testsuite/g++.dg/torture/predcom-1.C (working copy)
@@ -1,5 +1,5 @@
/* Test for ICE in predictive commoning with empty loop header block
- on arm-none-linux-gnueabi. */
+ on arm-none-linux-*. */
struct Foo
{
Index: gcc/testsuite/lib/target-supports.exp
===================================================================
--- gcc/testsuite/lib/target-supports.exp (revision 192459)
+++ gcc/testsuite/lib/target-supports.exp (working copy)
@@ -3924,7 +3924,7 @@
}
} ""
}]
- } elseif { [istarget arm*-*-linux-gnueabi] } {
+ } elseif { [istarget arm*-*-linux-*] } {
return [check_runtime sync_longlong_runtime {
#include <stdlib.h>
int main ()
@@ -3968,7 +3968,7 @@
|| [istarget i?86-*-*]
|| [istarget x86_64-*-*]
|| [istarget alpha*-*-*]
- || [istarget arm*-*-linux-gnueabi]
+ || [istarget arm*-*-linux-*]
|| [istarget bfin*-*linux*]
|| [istarget hppa*-*linux*]
|| [istarget s390*-*-*]
@@ -3999,7 +3999,7 @@
|| [istarget i?86-*-*]
|| [istarget x86_64-*-*]
|| [istarget alpha*-*-*]
- || [istarget arm*-*-linux-gnueabi]
+ || [istarget arm*-*-linux-*]
|| [istarget hppa*-*linux*]
|| [istarget s390*-*-*]
|| [istarget powerpc*-*-*]
Index: gcc/doc/install.texi
===================================================================
--- gcc/doc/install.texi (revision 192459)
+++ gcc/doc/install.texi (working copy)
@@ -3151,7 +3151,7 @@
@heading @anchor{arm-x-eabi}arm-*-eabi
ARM-family processors. Subtargets that use the ELF object format
require GNU binutils 2.13 or newer. Such subtargets include:
-@code{arm-*-netbsdelf}, @code{arm-*-*linux-gnueabi}
+@code{arm-*-netbsdelf}, @code{arm-*-*linux-*}
and @code{arm-*-rtemseabi}.
@html
Index: gcc/ada/gcc-interface/Makefile.in
===================================================================
--- gcc/ada/gcc-interface/Makefile.in (revision 192459)
+++ gcc/ada/gcc-interface/Makefile.in (working copy)
@@ -1850,7 +1850,7 @@
LIBRARY_VERSION := $(LIB_VERSION)
endif
-ifeq ($(strip $(filter-out arm% linux-gnueabi,$(arch) $(osys)-$(word 4,$(targ)))),)
+ifeq ($(strip $(filter-out arm%-linux,$(arch)-$(osys)) $(if $(findstring eabi,$(word 4,$(targ))),,$(word 4,$(targ)))),)
LIBGNAT_TARGET_PAIRS = \
a-intnam.ads<a-intnam-linux.ads \
s-inmaop.adb<s-inmaop-posix.adb \
Index: gcc/config.gcc
===================================================================
--- gcc/config.gcc (revision 192459)
+++ gcc/config.gcc (working copy)
@@ -829,7 +829,7 @@
extra_options="${extra_options} netbsd.opt netbsd-elf.opt"
tmake_file="${tmake_file} arm/t-arm"
;;
-arm*-*-linux-*eabi*) # ARM GNU/Linux with ELF
+arm*-*-linux-*) # ARM GNU/Linux with ELF
tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc-stdint.h arm/elf.h arm/linux-gas.h arm/linux-elf.h"
case $target in
arm*b-*-linux*)
Index: libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc
===================================================================
--- libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc (revision 192459)
+++ libstdc++-v3/testsuite/20_util/make_signed/requirements/typedefs-2.cc (working copy)
@@ -1,5 +1,5 @@
// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums" }
-// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } }
+// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux-* } }
// 2007-05-03 Benjamin Kosnik <bkoz@redhat.com>
//
Index: libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc
===================================================================
--- libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc (revision 192459)
+++ libstdc++-v3/testsuite/20_util/make_unsigned/requirements/typedefs-2.cc (working copy)
@@ -1,5 +1,5 @@
// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums" }
-// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux*eabi } }
+// { dg-options "-std=gnu++0x -funsigned-char -fshort-enums -Wl,--no-enum-size-warning" { target arm*-*-linux-* } }
// 2007-05-03 Benjamin Kosnik <bkoz@redhat.com>
//
Index: libstdc++-v3/configure.host
===================================================================
--- libstdc++-v3/configure.host (revision 192459)
+++ libstdc++-v3/configure.host (working copy)
@@ -348,7 +348,7 @@
fi
esac
case "${host}" in
- arm*-*-linux-*eabi)
+ arm*-*-linux-*)
port_specific_symbol_files="\$(srcdir)/../config/os/gnu-linux/arm-eabi-extra.ver"
;;
esac
next prev parent reply other threads:[~2012-10-15 14:25 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-06-25 12:10 Matthias Klose
2012-06-25 13:23 ` Richard Earnshaw
2012-06-25 16:22 ` Matthias Klose
2012-06-25 21:32 ` Matthias Klose
2012-06-26 9:10 ` Richard Earnshaw
2012-10-15 14:25 ` Matthias Klose [this message]
2012-10-15 15:42 ` Richard Earnshaw
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=507C1BBB.2040708@ubuntu.com \
--to=doko@ubuntu.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=java-patches@gcc.gnu.org \
--cc=libstdc++@gcc.gnu.org \
--cc=rearnsha@arm.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).