www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - phobos and 64-bit real, anybody testing?

reply Dan Olson <zans.is.for.cans yahoo.com> writes:
A question for the floating point experts.  Do phobos unittests get run
on any architectures with 64-bit reals?  I would like to know if there
are known failures.

I have identified all the phobos unittest failures on ARMv7 iOS and
commented out failing asserts so that the remainder of the module
unittests could pass.  An example where there are many failed tests is
std.internal.math.gammafunction where a nan is produced but a valid
value is expected.  Other times the computed result is completely
different from what is expected.  Note that for ARM I am clearing "Flush
to Zero" and "Default NaN" modes in fpscr which helps pass many other
tests.  Normally these modes are enabled for iOS.  Also, iOS uses
float-abi=softfp.
--
Dan
Jan 26 2015
next sibling parent "Ola Fosheim =?UTF-8?B?R3LDuHN0YWQi?= writes:
On Monday, 26 January 2015 at 16:49:57 UTC, Dan Olson wrote:
 different from what is expected.  Note that for ARM I am 
 clearing "Flush
 to Zero" and "Default NaN" modes in fpscr which helps pass many 
 other
 tests.
I think NEON (SIMD) code will always flush to zero, so IEEE compatibility for denormal numbers prevent using SIMD...?
Jan 26 2015
prev sibling next sibling parent reply Andrei Alexandrescu <SeeWebsiteForEmail erdani.org> writes:
On 1/26/15 8:49 AM, Dan Olson wrote:
 A question for the floating point experts.  Do phobos unittests get run
 on any architectures with 64-bit reals?
Would OSX be that? -- Andrei
Jan 26 2015
parent "Dan Olson" <zans4cans yahoo.com> writes:
On Monday, 26 January 2015 at 17:36:05 UTC, Andrei Alexandrescu
wrote:
 On 1/26/15 8:49 AM, Dan Olson wrote:
 A question for the floating point experts.  Do phobos 
 unittests get run
 on any architectures with 64-bit reals?
Would OSX be that? -- Andrei
It is mostly x86 80-bit reals these days.
Jan 26 2015
prev sibling parent reply Johannes Pfau <nospam example.com> writes:
Am Mon, 26 Jan 2015 08:49:56 -0800
schrieb Dan Olson <zans.is.for.cans yahoo.com>:

 A question for the floating point experts.  Do phobos unittests get
 run on any architectures with 64-bit reals?  I would like to know if
 there are known failures.
 
 I have identified all the phobos unittest failures on ARMv7 iOS and
 commented out failing asserts so that the remainder of the module
 unittests could pass.  An example where there are many failed tests is
 std.internal.math.gammafunction where a nan is produced but a valid
 value is expected.  Other times the computed result is completely
 different from what is expected.  Note that for ARM I am clearing
 "Flush to Zero" and "Default NaN" modes in fpscr which helps pass
 many other tests.  Normally these modes are enabled for iOS.  Also,
 iOS uses float-abi=softfp.
 --
 Dan
I run the tests for GDC on ARM/linux soft and hardfloat 64 bit. All modules except gammafunction should pass. gammafunction was never ported to 64bit reals and I asked about it multiple times on the newsgroup but nobody cared. I also filed a bug report: https://issues.dlang.org/show_bug.cgi?id=13032 So as far as I'm concerned gammafunction is unmaintained and broken :-( However, other modules should work (at least with GDC as there's some GDC-specific inline asm).
Jan 26 2015
parent "Dan Olson" <zans4cans yahoo.com> writes:
On Monday, 26 January 2015 at 20:04:46 UTC, Johannes Pfau wrote:
 I run the tests for GDC on ARM/linux soft and hardfloat 64 bit. 
 All
 modules except gammafunction should pass. gammafunction was 
 never
 ported to 64bit reals and I asked about it multiple times on the
 newsgroup but nobody cared. I also filed a bug report:
 https://issues.dlang.org/show_bug.cgi?id=13032
 So as far as I'm concerned gammafunction is unmaintained and 
 broken :-(

 However, other modules should work (at least with GDC as 
 there's some
 GDC-specific inline asm).
Thanks! This info helps much.
Jan 26 2015