[Bug fortran/67531] No IEEE rounding support for powerpc long double type

2021-05-04 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67531

Richard Biener  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED

[Bug fortran/67531] No IEEE rounding support for powerpc long double type

2019-01-30 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67531

--- Comment #9 from Uroš Bizjak  ---
(In reply to David Edelsohn from comment #7)
> What progress do you expect?  IBM long double does not support non-default
> rounding.  This will be fixed when PPC64LE long double defaults to IEEE 128
> bit floating point.

ieee_arithmetic.F90 can be enhanced to pass "kind" argument to
support_fpu_rounding_mode, so it would be defined in fpu-glibc.h as:

int
support_fpu_rounding_mode (int mode, int kind)

Using some #ifdeffery (involving __powerpc__ and __float128), the function
could return 0 for unsupported kinds.

Please see how underflow control is handled in fpu-glibc.h for alpha, where
target supports underflow control only for 32bit and 64bit hardware floats, not
for 128bit soft-fp floats.

[Bug fortran/67531] No IEEE rounding support for powerpc long double type

2017-04-24 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67531

--- Comment #8 from Martin Liška  ---
(In reply to David Edelsohn from comment #7)
> What progress do you expect?  IBM long double does not support non-default
> rounding.  This will be fixed when PPC64LE long double defaults to IEEE 128
> bit floating point.

I was asking whether the test should be markes as xfail on the target? Or run
conditionally on targets that do support non-default modes.

[Bug fortran/67531] No IEEE rounding support for powerpc long double type

2017-04-24 Thread dje at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67531

--- Comment #7 from David Edelsohn  ---
What progress do you expect?  IBM long double does not support non-default
rounding.  This will be fixed when PPC64LE long double defaults to IEEE 128 bit
floating point.

[Bug fortran/67531] No IEEE rounding support for powerpc long double type

2017-04-24 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67531

Martin Liška  changed:

   What|Removed |Added

 CC||marxin at gcc dot gnu.org

--- Comment #6 from Martin Liška  ---
Any progress on that?

[Bug fortran/67531] No IEEE rounding support for powerpc long double type

2015-09-11 Thread pthaugen at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67531

--- Comment #5 from Pat Haugen  ---
(In reply to Francois-Xavier Coudert from comment #3)
> How about with this? I'm trying to come as close as possible to the exact
> sequence of fe.etround() calls as the Fortran front-end and runtime library
> would end up performing…
> 
> 
> #include 
> #include 
> 
> int main (void)
> {
>   int r;
>   long double x1, x2, x;
> 
>   x1 = 1;
>   x = 3;
>   r = fegetround ();
>   fesetround (FE_UPWARD);
>   x1 = x1 / x;
>   fesetround (r);
> 
>   x2 = 1;
>   x = 3;
>   r = fegetround ();
>   fesetround (FE_DOWNWARD);
>   x2 = x2 / x;
>   fesetround (r);
> 
>   printf ("%.40Lg\n", x1);
>   printf ("%.40Lg\n", x2);
> }

pthaugen@genoa:~$ ~/install/gcc/trunk/bin/gcc junk.c -lm && ./a.out
0.53876586
0.333292246828

[Bug fortran/67531] No IEEE rounding support for powerpc long double type

2015-09-10 Thread fxcoudert at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67531

Francois-Xavier Coudert  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2015-09-10
   Assignee|unassigned at gcc dot gnu.org  |fxcoudert at gcc dot 
gnu.org
Summary|FAIL:   |No IEEE rounding support
   |gfortran.dg/ieee/large_2.f9 |for powerpc long double
   |0   -O0  execution test |type
 Ever confirmed|0   |1