From: Iain Sandoe <idsandoe@googlemail.com>
To: Thomas Koenig <tkoenig@netcologne.de>
Cc: Jakub Jelinek <jakub@redhat.com>,
Michael Meissner <meissner@linux.ibm.com>,
fortran@gcc.gnu.org, GCC Development <gcc@gcc.gnu.org>,
Tobias Burnus <tobias@codesourcery.com>,
Segher Boessenkool <segher@kernel.crashing.org>,
David Edelsohn <dje.gcc@gmail.com>,
Paul Thomas <pault@gcc.gnu.org>
Subject: Re: libgfortran.so SONAME and powerpc64le-linux ABI changes
Date: Fri, 8 Oct 2021 08:20:58 +0100 [thread overview]
Message-ID: <749ABCA1-5C3B-4EB8-8E4F-9B967A67AB07@googlemail.com> (raw)
In-Reply-To: <5533983c-f4d2-5041-75c9-9287e4e31f10@netcologne.de>
> On 8 Oct 2021, at 07:35, Thomas Koenig via Fortran <fortran@gcc.gnu.org> wrote:
>
>
> On 07.10.21 17:33, Jakub Jelinek wrote:
>>> It will also be a compatibility issue if users have code compiled on a LE
>>> system with GCC 11 and earlier with KIND=16, it will not link with GCC 12.
>> libgfortran ABI changed multiple times in the past already, e.g. the
>> so.1 -> so.2 transition in 4.2
>> so.2 -> so.3 transition in 4.3
>> so.3 -> so.4 transition in 7
>> so.4 -> so.5 transition in 8
>> and users have coped.
>
> Yes, and it has always been a hassle for users, and we've been
> criticized for it.
>
> This is currently a change which brings users on non-POWER-systems
> (the vast majority) all pain and no gain. If this cannot be
> avoided, I would at least try to fit in as much of other improvements
> as there are possible.
If one wanted to prioritize library SO name stability - then, perhaps, the
approach Jonathan mentioned has been used for libstdc++ (add new
symbols for ieee128 with a different mangling to the existing r/c_16 ..)
would be preferable (the FE then has to choose the relevant symbol/
mangling depending on target).
.. perhaps I missed where that idea was already ruled out (in which case
sorry for the noise).
Iain
>
> There's a PR for it somewhere, but I can think of three areas, none
> of the small, and all require an ABI change:
>
> a) Get PDTs right (Paul?)
> b) Make file descriptors conform to the C interop version
> c) Remove the run-time parsing of I/O arguments and
> replace them with a bit field.
>
> What I mean by the last one is that
>
> WRITE (unit,'(A)',ADVANCE="NO")
>
> we currently parse the "NO" at runtime, for every statement
> execution. What we could be doing instead is to have
>
> dt_parm.0.advance = __gfortran_evaluate_yesno ("NO")
>
> where the latter function can be simplified at compile-time.
>
> We should strive to break the ABI as few times as possible.
>
> Best regards
>
> Thomas
next prev parent reply other threads:[~2021-10-08 7:21 UTC|newest]
Thread overview: 77+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-04 10:07 Jakub Jelinek
2021-10-04 11:24 ` Richard Biener
2021-10-04 11:36 ` Jakub Jelinek
2021-10-04 12:31 ` Jakub Jelinek
2021-10-04 14:14 ` Jakub Jelinek
2021-10-04 16:47 ` Joseph Myers
2021-10-04 18:33 ` Segher Boessenkool
2021-10-04 19:24 ` Joseph Myers
2021-10-05 17:43 ` Segher Boessenkool
2021-10-14 19:39 ` Bill Schmidt
2021-10-15 0:26 ` Segher Boessenkool
2021-10-05 20:16 ` Thomas Koenig
2021-10-05 21:54 ` Segher Boessenkool
2021-10-06 6:59 ` Thomas Koenig
2021-10-06 15:17 ` Segher Boessenkool
2021-10-06 15:41 ` Jakub Jelinek
2021-10-06 16:07 ` Segher Boessenkool
2021-10-06 16:34 ` Jakub Jelinek
2021-10-06 16:59 ` Segher Boessenkool
2021-10-06 17:07 ` Jakub Jelinek
2021-10-06 17:50 ` Segher Boessenkool
2021-10-06 19:30 ` Peter Bergner
2021-10-06 17:13 ` Joseph Myers
2021-10-06 18:39 ` Segher Boessenkool
2021-10-06 19:42 ` Joseph Myers
2021-10-06 20:57 ` Segher Boessenkool
2021-10-06 21:55 ` Joseph Myers
2021-10-06 22:03 ` Joseph Myers
2021-10-08 17:53 ` Segher Boessenkool
2021-10-11 20:11 ` Joseph Myers
2021-10-15 0:16 ` Segher Boessenkool
2021-10-06 15:42 ` David Edelsohn
2021-10-06 16:19 ` Segher Boessenkool
2021-10-06 17:38 ` David Edelsohn
2021-10-07 3:42 ` Michael Meissner
2021-10-08 21:10 ` Segher Boessenkool
2021-10-07 9:48 ` Alastair McKinstry
2021-10-07 9:56 ` Andreas Schwab
2021-10-07 10:01 ` Jakub Jelinek
2021-10-07 12:43 ` Alastair McKinstry
2021-10-05 21:53 ` Jonathan Wakely
2021-10-07 3:35 ` Michael Meissner
2021-10-07 6:08 ` Thomas Koenig
2021-10-07 9:40 ` Jakub Jelinek
2021-10-07 15:24 ` Michael Meissner
2021-10-07 15:33 ` Jakub Jelinek
2021-10-08 6:35 ` Thomas Koenig
2021-10-08 7:20 ` Iain Sandoe [this message]
2021-10-08 16:26 ` Thomas Koenig
2021-10-08 19:11 ` Iain Sandoe
2021-10-08 22:55 ` Thomas Koenig
2021-10-08 23:18 ` Iain Sandoe
2021-10-09 9:11 ` Thomas Koenig
2021-10-09 9:19 ` Iain Sandoe
2021-10-09 9:25 ` Jakub Jelinek
2021-10-09 7:44 ` Andreas Schwab
2021-10-10 16:14 ` Florian Weimer
2021-10-15 13:50 ` Bill Schmidt
2021-10-15 14:20 ` Jakub Jelinek
2021-10-15 18:05 ` Thomas Koenig
2021-10-15 18:11 ` Jakub Jelinek
2021-10-15 18:58 ` Thomas Koenig
2021-10-15 22:24 ` Segher Boessenkool
2021-10-15 22:36 ` Segher Boessenkool
2021-10-18 19:02 ` Joseph Myers
2021-10-28 3:10 ` Michael Meissner
2021-10-29 3:36 ` libgfortran.so SONAME and powerpc64le-linux ABI changes (work in progress patches) Michael Meissner
2021-10-29 19:07 ` Thomas Koenig
2021-10-29 21:06 ` Michael Meissner
2021-11-01 15:56 ` Bill Schmidt
2021-11-02 15:40 ` Michael Meissner
2021-10-29 21:21 ` Bernhard Reutner-Fischer
2021-10-29 22:23 ` Michael Meissner
2021-10-30 0:16 ` libgfortran.so SONAME and powerpc64le-linux ABI changes (2nd patch) Michael Meissner
2021-10-30 9:30 ` Thomas Koenig
2021-10-30 10:03 ` Jakub Jelinek
2021-10-30 10:31 ` Thomas Koenig
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=749ABCA1-5C3B-4EB8-8E4F-9B967A67AB07@googlemail.com \
--to=idsandoe@googlemail.com \
--cc=dje.gcc@gmail.com \
--cc=fortran@gcc.gnu.org \
--cc=gcc@gcc.gnu.org \
--cc=jakub@redhat.com \
--cc=meissner@linux.ibm.com \
--cc=pault@gcc.gnu.org \
--cc=segher@kernel.crashing.org \
--cc=tkoenig@netcologne.de \
--cc=tobias@codesourcery.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).