public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug fortran/34040] Support for DOUBLE_TYPE_SIZE != 64 targets
[not found] <bug-34040-4@http.gcc.gnu.org/bugzilla/>
@ 2012-03-08 22:17 ` kkojima at gcc dot gnu.org
2013-12-05 19:39 ` olegendo at gcc dot gnu.org
` (3 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: kkojima at gcc dot gnu.org @ 2012-03-08 22:17 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34040
Kazumoto Kojima <kkojima at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |olegendo at gcc dot gnu.org
--- Comment #12 from Kazumoto Kojima <kkojima at gcc dot gnu.org> 2012-03-08 22:15:33 UTC ---
*** Bug 52535 has been marked as a duplicate of this bug. ***
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug fortran/34040] Support for DOUBLE_TYPE_SIZE != 64 targets
[not found] <bug-34040-4@http.gcc.gnu.org/bugzilla/>
2012-03-08 22:17 ` [Bug fortran/34040] Support for DOUBLE_TYPE_SIZE != 64 targets kkojima at gcc dot gnu.org
@ 2013-12-05 19:39 ` olegendo at gcc dot gnu.org
2015-09-05 4:05 ` olegendo at gcc dot gnu.org
` (2 subsequent siblings)
4 siblings, 0 replies; 6+ messages in thread
From: olegendo at gcc dot gnu.org @ 2013-12-05 19:39 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34040
--- Comment #13 from Oleg Endo <olegendo at gcc dot gnu.org> ---
(In reply to Francois-Xavier Coudert from comment #11)
> As far as I can say, the targets with this problem are: avr, bfin, h8300,
> picochip and sh (for some subtargets of sh).
>
> On avr, bfin, h8300 and picochip, we're doomed anyway because there is no
> double-sized type at all. On sh, we could use long double math calls.
>
> I'm making this into an enhancement; it will probably be very painful,
> because most of the front-end assumes FLOAT_TYPE_SIZE == 32 and
> DOUBLE_TYPE_SIZE == 64.
I think it would be easier to leave DOUBLE_TYPE_SIZE == 64 in all cases and use
software fp if the hardware can't do double precision. If users insist on
doubles being automatically truncated to floats then there should be a compiler
switch for that. E.g. on SH we have -m4-single-only option to control this.
On SH2E code would then use hardware fp for floats and software fp for doubles
by default.
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug fortran/34040] Support for DOUBLE_TYPE_SIZE != 64 targets
[not found] <bug-34040-4@http.gcc.gnu.org/bugzilla/>
2012-03-08 22:17 ` [Bug fortran/34040] Support for DOUBLE_TYPE_SIZE != 64 targets kkojima at gcc dot gnu.org
2013-12-05 19:39 ` olegendo at gcc dot gnu.org
@ 2015-09-05 4:05 ` olegendo at gcc dot gnu.org
2021-05-31 15:45 ` dominiq at lps dot ens.fr
2023-05-31 15:17 ` gjl at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: olegendo at gcc dot gnu.org @ 2015-09-05 4:05 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=34040
--- Comment #14 from Oleg Endo <olegendo at gcc dot gnu.org> ---
(In reply to Oleg Endo from comment #13)
>
> I think it would be easier to leave DOUBLE_TYPE_SIZE == 64 in all cases and
> use software fp if the hardware can't do double precision. If users insist
> on doubles being automatically truncated to floats then there should be a
> compiler switch for that.
This switch is already there: -fshort-double
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug fortran/34040] Support for DOUBLE_TYPE_SIZE != 64 targets
[not found] <bug-34040-4@http.gcc.gnu.org/bugzilla/>
` (2 preceding siblings ...)
2015-09-05 4:05 ` olegendo at gcc dot gnu.org
@ 2021-05-31 15:45 ` dominiq at lps dot ens.fr
2023-05-31 15:17 ` gjl at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: dominiq at lps dot ens.fr @ 2021-05-31 15:45 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=34040
Dominique d'Humieres <dominiq at lps dot ens.fr> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |WAITING
--- Comment #17 from Dominique d'Humieres <dominiq at lps dot ens.fr> ---
Target issue?
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug fortran/34040] Support for DOUBLE_TYPE_SIZE != 64 targets
[not found] <bug-34040-4@http.gcc.gnu.org/bugzilla/>
` (3 preceding siblings ...)
2021-05-31 15:45 ` dominiq at lps dot ens.fr
@ 2023-05-31 15:17 ` gjl at gcc dot gnu.org
4 siblings, 0 replies; 6+ messages in thread
From: gjl at gcc dot gnu.org @ 2023-05-31 15:17 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=34040
--- Comment #18 from Georg-Johann Lay <gjl at gcc dot gnu.org> ---
(In reply to Francois-Xavier Coudert from comment #11)
> As far as I can say, the targets with this problem are: avr, bfin, h8300,
> picochip and sh (for some subtargets of sh).
>
> On avr, bfin, h8300 and picochip, we're doomed anyway because there is no
> double-sized type at all. On sh, we could use long double math calls.
>
> I'm making this into an enhancement; it will probably be very painful,
> because most of the front-end assumes FLOAT_TYPE_SIZE == 32 and
> DOUBLE_TYPE_SIZE == 64.
At least for AVR, the situation changed with v10, see
https://gcc.gnu.org/gcc-10/changes.html#avr
https://gcc.gnu.org/install/configure.html#avr
In order to keep v10 compatible with older versions of avr-gcc, double still
defaults to 32 bits, though. To get 64-bit double, you'll have to configure
using --with-double=64 (or use --with-double=64,32 so you can which to 32-bit
double with -mdouble=32 at compile-time).
The default for this option is --with-double=32,64; hence what's also possible
is to use default configuraton, but provide -mdouble=64 for every translation
unit.
FYI, the 64-bit double support is provided by LibF7, which is a part of
avr-libgcc. For details and shortcomings, see
https://gcc.gnu.org/wiki/avr-gcc#Libf7
https://gcc.gnu.org/git/?p=gcc.git;a=tree;f=libgcc/config/avr/libf7
^ permalink raw reply [flat|nested] 6+ messages in thread
* [Bug fortran/34040] Support for DOUBLE_TYPE_SIZE != 64 targets
2007-11-09 10:42 [Bug middle-end/34040] New: [4.3 Regression] ICE: in simplify_subreg, at simplify-rtx.c:4921 building libgfortran rask at gcc dot gnu dot org
@ 2009-05-05 8:18 ` fxcoudert at gcc dot gnu dot org
0 siblings, 0 replies; 6+ messages in thread
From: fxcoudert at gcc dot gnu dot org @ 2009-05-05 8:18 UTC (permalink / raw)
To: gcc-bugs
------- Comment #11 from fxcoudert at gcc dot gnu dot org 2009-05-05 08:18 -------
As far as I can say, the targets with this problem are: avr, bfin, h8300,
picochip and sh (for some subtargets of sh).
On avr, bfin, h8300 and picochip, we're doomed anyway because there is no
double-sized type at all. On sh, we could use long double math calls.
I'm making this into an enhancement; it will probably be very painful, because
most of the front-end assumes FLOAT_TYPE_SIZE == 32 and DOUBLE_TYPE_SIZE == 64.
--
fxcoudert at gcc dot gnu dot org changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |fxcoudert at gcc dot gnu dot
| |org
Severity|normal |enhancement
GCC target triplet|sh-unknown-elf |sh, avr, bfin, h8300,
| |picochip
Priority|P3 |P5
Last reconfirmed|2007-11-16 23:42:54 |2009-05-05 08:18:07
date| |
Summary|relation between kinds and C|Support for DOUBLE_TYPE_SIZE
|types (for math builtins) |!= 64 targets
|shouldn't be hardcoded |
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34040
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2023-05-31 15:17 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <bug-34040-4@http.gcc.gnu.org/bugzilla/>
2012-03-08 22:17 ` [Bug fortran/34040] Support for DOUBLE_TYPE_SIZE != 64 targets kkojima at gcc dot gnu.org
2013-12-05 19:39 ` olegendo at gcc dot gnu.org
2015-09-05 4:05 ` olegendo at gcc dot gnu.org
2021-05-31 15:45 ` dominiq at lps dot ens.fr
2023-05-31 15:17 ` gjl at gcc dot gnu.org
2007-11-09 10:42 [Bug middle-end/34040] New: [4.3 Regression] ICE: in simplify_subreg, at simplify-rtx.c:4921 building libgfortran rask at gcc dot gnu dot org
2009-05-05 8:18 ` [Bug fortran/34040] Support for DOUBLE_TYPE_SIZE != 64 targets fxcoudert at gcc dot gnu dot org
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).