public inbox for gcc@gcc.gnu.org
 help / color / mirror / Atom feed
From: Segher Boessenkool <segher@kernel.crashing.org>
To: Joseph Myers <joseph@codesourcery.com>
Cc: Jakub Jelinek <jakub@redhat.com>,
	Michael Meissner <meissner@linux.ibm.com>,
	gcc@gcc.gnu.org, Thomas Koenig <tkoenig@netcologne.de>,
	fortran@gcc.gnu.org, Tobias Burnus <tobias@codesourcery.com>,
	Jonathan Wakely <jwakely@redhat.com>
Subject: Re: libgfortran.so SONAME and powerpc64le-linux ABI changes
Date: Wed, 6 Oct 2021 15:57:17 -0500	[thread overview]
Message-ID: <20211006205717.GL10333@gate.crashing.org> (raw)
In-Reply-To: <alpine.DEB.2.22.394.2110061933570.3641536@digraph.polyomino.org.uk>

[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset=unknown-8bit, Size: 1697 bytes --]

On Wed, Oct 06, 2021 at 07:42:31PM +0000, Joseph Myers wrote:
> On Wed, 6 Oct 2021, Segher Boessenkool wrote:
> > Soft float is not described in any formal ABI btw (well, except the
> > Power 32-bit embedded ABI :-) ) -- it is an compiler-internal affair.
> 
> It's fully documented in the unified 32-bit ABI document (under 
> ATR-SOFT-FLOAT conditionals).

That doc calls itself "Power Architecture® 32-bit Application Binary
Interface Supplement 1.0 - Embedded".  That is the exception I meant.
Ignoring all the stuff I usually ignore it isn't very embedded, I agree,
it is more or less what is powerpc-linux or powerpc-elf.

With "not in any" I mean: not for other architectures either!  All archs
that do not say anything about floating point in their machine
description get a working sofware floating point (for binary32 and
binary64 currently).

> There's still some code in the compiler for a very old soft-float ABI for 
> binary128 long double (passing by reference, using _q_* libcall names).  I 
> don't really think it makes much sense to use that for future _Float128 
> support for soft-float (certainly not the _q_* libcalls), rather than 
> passing in four consecutive GPRs as is done for IBM long double for soft 
> float, but we could.

Maybe this harks back to POWER2 days?  If so, we probably should just
remove that code, we do not support anything else POWER2 anymore.


If we want to implement soft-float for binary128, it would be best to do
it the same for Power as for anything else.  That of course means we
have to *do* it for everything (or anything) else :-)

And, as long as I'm creating more work, we could do binary16 and
bfloat16 at the same time ;-)


Segher

  reply	other threads:[~2021-10-06 20:58 UTC|newest]

Thread overview: 75+ 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 [this message]
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
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-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=20211006205717.GL10333@gate.crashing.org \
    --to=segher@kernel.crashing.org \
    --cc=fortran@gcc.gnu.org \
    --cc=gcc@gcc.gnu.org \
    --cc=jakub@redhat.com \
    --cc=joseph@codesourcery.com \
    --cc=jwakely@redhat.com \
    --cc=meissner@linux.ibm.com \
    --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).