public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Richard Sandiford <richard.sandiford@arm.com>
To: Christophe Lyon <christophe.lyon@linaro.org>
Cc: Christophe Lyon <christophe.lyon@st.com>,
	 gcc Patches <gcc-patches@gcc.gnu.org>
Subject: Re: [ARM/FDPIC v5 02/21] [ARM] FDPIC: Handle arm*-*-uclinuxfdpiceabi in configure scripts
Date: Fri, 30 Aug 2019 15:15:00 -0000	[thread overview]
Message-ID: <mptftliiu86.fsf@arm.com> (raw)
In-Reply-To: <CAKdteOaKGupeHG3Oskc2OS6ZUzOsKWSsktNpMBUO0aH1+CZr0g@mail.gmail.com>	(Christophe Lyon's message of "Fri, 30 Aug 2019 16:35:05 +0200")

Christophe Lyon <christophe.lyon@linaro.org> writes:
> On Fri, 30 Aug 2019 at 11:00, Richard Sandiford
> <richard.sandiford@arm.com> wrote:
>>
>> Christophe Lyon <christophe.lyon@st.com> writes:
>> > @@ -785,7 +785,7 @@ case ${target} in
>> >    esac
>> >    tmake_file="t-slibgcc"
>> >    case $target in
>> > -    *-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-kopensolaris*-gnu)
>> > +    *-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-kopensolaris*-gnu  | *-*-uclinuxfdpiceabi)
>> >        :;;
>> >      *-*-gnu*)
>> >        native_system_header_dir=/include
>>
>> I don't think this is necessary, since this target will never match the
>> following *-*-gnu*) stanza anyway.
> OK (I thought it was clearer to add the fdpic config where we already
> have linux that would not match)

I think the idea is to match pure GNU systems only in the second stanza
(i.e. GNU/Hurd).  So we need the first stanza to exclude hybrid-GNU
systems like GNU/Linux, GNU/Solaris, GNU/FreeBSD, etc.

Since uclinuxfdpiceabi isn't a GNU-based system, I don't think it
needs to appear at all.

>> > diff --git a/libtool.m4 b/libtool.m4
>> > index 8966762..64e507a 100644
>> > --- a/libtool.m4
>> > +++ b/libtool.m4
>> > @@ -3734,7 +3739,7 @@ m4_if([$1], [CXX], [
>> >           ;;
>> >       esac
>> >       ;;
>> > -      linux* | k*bsd*-gnu | kopensolaris*-gnu)
>> > +      linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinux*)
>> >       case $cc_basename in
>> >         KCC*)
>> >           # KAI C++ Compiler
>>
>> Is this needed?  It seems to be in the !GCC branch of an if/else.
> I must admit I didn't test this case. I thought it was needed because
> this target does not match "linux*", in case someone tries to compile
> with another compiler...
>
>
>>
>> If it is needed, the default:
>>
>>         _LT_TAGVAR(lt_prog_compiler_can_build_shared, $1)=no
>>
>> seems correct for non-FDPIC uclinux.
>>
> So, either use uclinuxfdpiceabi above, or do nothing and do not try to
> support other compilers?

Yeah.  I think the latter's better, since in this context we only
need libtool.m4 to support building with GCC.  The decision might
be different for upstream libtool, but do any commercial compilers
support Arm FDPIC yet?

>> > @@ -4032,7 +4037,7 @@ m4_if([$1], [CXX], [
>> >        _LT_TAGVAR(lt_prog_compiler_static, $1)='-non_shared'
>> >        ;;
>> >
>> > -    linux* | k*bsd*-gnu | kopensolaris*-gnu)
>> > +    linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinux*)
>> >        case $cc_basename in
>> >        # old Intel for x86_64 which still supported -KPIC.
>> >        ecc*)
>>
>> Same here.
>>
>> > @@ -5946,7 +5951,7 @@ if test "$_lt_caught_CXX_error" != yes; then
>> >          _LT_TAGVAR(inherit_rpath, $1)=yes
>> >          ;;
>> >
>> > -      linux* | k*bsd*-gnu | kopensolaris*-gnu)
>> > +      linux* | k*bsd*-gnu | kopensolaris*-gnu | uclinuxfdpiceabi)
>> >          case $cc_basename in
>> >            KCC*)
>> >           # Kuck and Associates, Inc. (KAI) C++ Compiler
>>
>> Here too the code seems to be dealing specifically with non-GCC compilers.
>>
>> > @@ -6598,7 +6603,7 @@ interix[[3-9]]*)
>> >    _LT_TAGVAR(postdeps,$1)=
>> >    ;;
>> >
>> > -linux*)
>> > +linux* | uclinux*)
>> >    case `$CC -V 2>&1 | sed 5q` in
>> >    *Sun\ C*)
>> >      # Sun C++ 5.9
>>
>> Here too.  (It only seems to do anything for Sun's C compiler.)
>>
>> The fewer hunks we have to maintain downstream the better :-)
>>
> Sure.
>
> I thought safer/cleaner to prepare the cases for non-GCC compilers, I
> guess it's better not to add that until proven useful?

Yeah, I think so.  I guess it depends on your POV.  To me, it seems
cleaner to add uclinux* and uclinuxfdpiceabi only where we know there's
a specific need, since that's also how we decide which of uclinux* and
uclinuxfdpiceabi to use.

Thanks,
Richard

  reply	other threads:[~2019-08-30 14:49 UTC|newest]

Thread overview: 109+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-05-15 12:40 [ARM/FDPIC v5 00/21] FDPIC ABI for ARM Christophe Lyon
2019-05-15 12:40 ` [ARM/FDPIC v5 01/21] [ARM] FDPIC: Add -mfdpic option support Christophe Lyon
2019-07-16 10:18   ` Richard Sandiford
2019-08-29 15:08     ` Christophe Lyon
2019-08-30 10:06       ` Richard Sandiford
2019-05-15 12:41 ` [ARM/FDPIC v5 04/21] [ARM] FDPIC: Add support for FDPIC for arm architecture Christophe Lyon
2019-07-16 12:33   ` Richard Sandiford
2019-08-20 17:13     ` Christophe Lyon
2019-08-29 15:39     ` Christophe Lyon
2019-09-02 16:12       ` Richard Sandiford
2019-09-02 20:04         ` Christophe Lyon
2019-09-03  8:40           ` Richard Sandiford
2019-09-04 19:59             ` Christophe Lyon
2019-09-05  8:03               ` Richard Sandiford
2019-05-15 12:41 ` [ARM/FDPIC v5 03/21] [ARM] FDPIC: Force FDPIC related options unless -mno-fdpic is provided Christophe Lyon
2019-05-15 13:55   ` Szabolcs Nagy
2019-05-15 14:37     ` Rich Felker
2019-05-15 15:12       ` Christophe Lyon
2019-05-15 15:37         ` Rich Felker
2019-05-15 15:59           ` Szabolcs Nagy
2019-05-15 16:07             ` Rich Felker
2019-05-21 15:29               ` Christophe Lyon
2019-05-21 15:48                 ` Rich Felker
2019-05-22  8:39                 ` Szabolcs Nagy
2019-05-22  8:45                   ` Christophe Lyon
2019-05-23 12:45                     ` Christophe Lyon
2019-07-16 10:38                       ` Richard Sandiford
2019-07-16 20:00                         ` Rich Felker
2019-08-01 10:13                         ` Christophe Lyon
2019-08-06 14:28                           ` Richard Sandiford
2019-08-29 15:14                         ` Christophe Lyon
2019-08-30  9:40                           ` Richard Sandiford
2019-05-15 12:41 ` [ARM/FDPIC v5 02/21] [ARM] FDPIC: Handle arm*-*-uclinuxfdpiceabi in configure scripts Christophe Lyon
2019-07-12  7:44   ` Richard Sandiford
2019-07-12 13:25     ` Christophe Lyon
2019-07-12 13:28       ` Richard Sandiford
2019-08-29 15:14     ` Christophe Lyon
2019-08-30  9:30       ` Richard Sandiford
2019-08-30 14:48         ` Christophe Lyon
2019-08-30 15:15           ` Richard Sandiford [this message]
2019-09-02  7:51             ` Christophe Lyon
2019-09-02  8:31               ` Richard Sandiford
2019-08-30 14:40       ` Jonathan Wakely
2019-05-15 12:41 ` [ARM/FDPIC v5 05/21] [ARM] FDPIC: Fix __do_global_dtors_aux and frame_dummy generation Christophe Lyon
2019-07-12  6:49   ` Richard Sandiford
2019-07-12 14:25     ` Christophe Lyon
2019-08-29 15:39     ` Christophe Lyon
2019-08-30  8:41       ` Richard Sandiford
2019-05-15 12:42 ` [ARM/FDPIC v5 07/21] [ARM] FDPIC: Avoid saving/restoring r9 on stack since it is read-only Christophe Lyon
2019-07-16 10:42   ` Kyrill Tkachov
2019-05-15 12:42 ` [ARM/FDPIC v5 06/21] [ARM] FDPIC: Add support for c++ exceptions Christophe Lyon
2019-08-30  9:31   ` Kyrill Tkachov
2019-08-30 14:44     ` Jonathan Wakely
2019-05-15 12:43 ` [ARM/FDPIC v5 08/21] [ARM] FDPIC: Enforce local/global binding for function descriptors Christophe Lyon
2019-07-16 10:51   ` Kyrill Tkachov
2019-05-15 12:43 ` [ARM/FDPIC v5 10/21] [ARM] FDPIC: Implement TLS support Christophe Lyon
2019-09-04 14:16   ` Kyrill Tkachov
2019-09-04 20:03     ` Christophe Lyon
2019-09-09  8:54       ` Christophe Lyon
2019-05-15 12:43 ` [ARM/FDPIC v5 09/21] [ARM] FDPIC: Add support for taking address of nested function Christophe Lyon
2019-07-16 11:53   ` Kyrill Tkachov
2019-07-16 13:31     ` Kyrill Tkachov
2019-07-31 14:48       ` Christophe Lyon
2019-08-29 15:40         ` Christophe Lyon
2019-08-30  8:54           ` Kyrill Tkachov
2019-05-15 12:44 ` [ARM/FDPIC v5 11/21] [ARM] FDPIC: Add support to unwind FDPIC signal frame Christophe Lyon
2019-09-04 14:19   ` Kyrill Tkachov
2019-05-15 12:44 ` [ARM/FDPIC v5 12/21] [ARM] FDPIC: Restore r9 after we call __aeabi_read_tp Christophe Lyon
2019-08-29 15:40   ` Christophe Lyon
2019-08-29 15:44   ` Kyrill Tkachov
2019-05-15 12:44 ` [ARM/FDPIC v5 13/21] [ARM] FDPIC: Force LSB bit for PC in Cortex-M architecture Christophe Lyon
2019-08-29 15:37   ` Kyrill Tkachov
2019-09-05  8:30     ` Christophe Lyon
2019-09-05  8:32       ` Christophe Lyon
2019-09-05 20:56         ` Ian Lance Taylor
2019-09-05  9:03       ` Kyrill Tkachov
2019-09-09  8:58         ` Christophe Lyon
2019-05-15 12:45 ` [ARM/FDPIC v5 16/21] [ARM][testsuite] FDPIC: Skip tests that don't work in PIC mode Christophe Lyon
2019-07-19  8:56   ` Kyrill Tkachov
2019-05-15 12:45 ` [ARM/FDPIC v5 14/21] [ARM][testsuite] FDPIC: Skip unsupported tests Christophe Lyon
2019-07-19  8:52   ` Kyrill Tkachov
2019-05-15 12:45 ` [ARM/FDPIC v5 15/21] [ARM][testsuite] FDPIC: Adjust scan-assembler patterns Christophe Lyon
2019-07-19  8:54   ` Kyrill Tkachov
2019-05-15 12:46 ` [ARM/FDPIC v5 17/21] [ARM][testsuite] FDPIC: Handle *-*-uclinux* Christophe Lyon
2019-07-19  8:57   ` Kyrill Tkachov
2019-07-22 19:37     ` Mike Stump
2019-05-15 12:46 ` [ARM/FDPIC v5 18/21] [ARM][testsuite] FDPIC: Enable tests on pie_enabled targets Christophe Lyon
2019-07-19  8:59   ` Kyrill Tkachov
2019-07-22 19:50     ` Mike Stump
2019-05-15 12:46 ` [ARM/FDPIC v5 19/21] [ARM][testsuite] FDPIC: Adjust pr43698.c to avoid clash with uclibc Christophe Lyon
2019-07-19  9:00   ` Kyrill Tkachov
2019-05-15 12:47 ` [ARM/FDPIC v5 20/21] [ARM][testsuite] FDPIC: Skip tests using architectures unsupported by FDPIC Christophe Lyon
2019-07-19  9:03   ` Kyrill Tkachov
2019-09-06  8:01     ` Christophe Lyon
2019-09-06  8:28       ` Kyrill Tkachov
2019-09-06  9:10         ` Christophe Lyon
2019-09-06 17:44           ` Christophe Lyon
2019-09-09  8:38             ` Christophe Lyon
2019-05-15 12:47 ` [ARM/FDPIC v5 21/21] [ARM] FDPIC: Handle stack-protector combined patterns Christophe Lyon
2019-07-19  9:40   ` Kyrill Tkachov
2019-05-23 12:46 ` [ARM/FDPIC v5 00/21] FDPIC ABI for ARM Christophe Lyon
2019-06-04 12:57   ` Christophe Lyon
2019-06-06 12:36     ` Christophe Lyon
2019-06-17 11:42       ` Christophe Lyon
2019-07-01 12:16         ` Christophe Lyon
2019-07-08 14:28           ` Christophe Lyon
2019-07-16  9:13             ` Christophe Lyon
2019-08-29 14:54 ` Christophe Lyon
2019-08-29 16:29   ` Christophe Lyon

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=mptftliiu86.fsf@arm.com \
    --to=richard.sandiford@arm.com \
    --cc=christophe.lyon@linaro.org \
    --cc=christophe.lyon@st.com \
    --cc=gcc-patches@gcc.gnu.org \
    /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).