From: Andrew Cagney <cagney@gnu.org>
To: Joel Brobecker <brobecker@gnat.com>
Cc: gdb-patches@sources.redhat.com
Subject: Re: [RFA/mips] 128-bit long doubles for N32/N64
Date: Mon, 02 Aug 2004 18:31:00 -0000 [thread overview]
Message-ID: <410E886E.1060702@gnu.org> (raw)
In-Reply-To: <20040802011520.GA32638@gnat.com>
> You're right. The floatformat for long double on mips-irix right now
> is the default floatformat_ieee_double_big. In pratice, I think this
> is not so bad.
>
> A collegue or mine kindly explained to me how the doubles pair work
> to implement long doubles on IRIX. Basically, the high double holds
> the result of the operation rounded to double, and the low double holds
> the difference between the exact result and the rounded result. So
> "high" + "low" holds the result with added precision, but "high"
> contains the result rounded to double precision.
What happens little endian?
> In terms of how this affects the debugger: GDB currently only uses
> the high part of the long double, so it loses a bit of precision when
> printing long doubles. I don't think this is a problem at all, since
> we "only" print doubles with 17 digits. Similarly, I don't think we
> lose much when we ask the debugger to change the value of a long double
> variable, since I think a user will seldom provide a float with 50+
> digits (If I had to do that, I would use the hex value, and write it
> in memory directly).
>
> Can we do better, and have a more accurate float format? It seems
> to me that the answer would be: not with the current floatformat
> description. Not a big deal, as far as I am concerned.
To back up a little.
Was the problem that GDB was dieing during a testsuite run, or that
users were complaining "long double" didn't work on IRIX? I'd suspect
the former as, as far as I can tell, IRIX's long-double has always been
broken.
If we do the above (I'm guessing that you're suggesting that long double
format get explicitly set to ieee-double + a comment), then we get into
the territory where GDB is lieing to the user - it appears to support
something but doesn't. I prefer to see us fix the problems, or at least
make it clear to the user that the feature isn't supported. While
neither you nor I care about the last few bits of 128-bit
floating-point, I can bet you that are fortran programmers that do :-/
We at least need to update http://sources.redhat/com/gdb/bugs/866
so we've more weight behind the argument that floatformat should be
replaced (by GCC's code, hmm, does GCC's cross-platform floating-point
library handle this?).
I also think that the architecture vector should stop supplying a
default value for unknown float-formats -> here its clearly wrong and
very hard to detect.
> There is one little sticky point: When calling a procedure with a long
> double as a parameter, GDB chokes:
>
> (gdb) call pd (a)
> That operation is not available on integers of more than 8 bytes.
>
> This is an issue indeed, but I think it can be dealt with separately
> of the patch I submitted.
>
> Let me know what you think.
thoughts?
Andrew
next prev parent reply other threads:[~2004-08-02 18:31 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-07-22 15:44 Joel Brobecker
2004-07-26 22:19 ` Andrew Cagney
2004-07-26 22:45 ` Joel Brobecker
2004-07-27 15:37 ` Andrew Cagney
2004-08-02 1:15 ` Joel Brobecker
2004-08-02 1:43 ` Michael Chastain
2004-08-02 18:31 ` Andrew Cagney [this message]
2004-08-03 1:13 ` Joel Brobecker
2004-08-03 1:59 ` Andrew Cagney
2004-08-03 4:39 ` Joel Brobecker
2004-08-03 7:27 ` Mark Kettenis
2004-08-03 13:31 ` Paul Koning
2004-08-04 4:00 ` Alexandre Oliva
2004-08-04 7:19 ` Mark Kettenis
2004-08-03 3:19 ` Michael Chastain
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=410E886E.1060702@gnu.org \
--to=cagney@gnu.org \
--cc=brobecker@gnat.com \
--cc=gdb-patches@sources.redhat.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