November 07, 2015 Re: iOS LDC 0.16.1 (2.067.1) binaries available | ||||
---|---|---|---|---|
| ||||
Posted in reply to Dan Olson | On Saturday, 7 November 2015 at 20:34:06 UTC, Dan Olson wrote: > Joakim <dlang@joakim.fea.st> writes: >> Hmm, that's strange, this commit didn't fix the 64-bit issues for you? I believe it fixed them for me on Android/ARM: >> >> https://github.com/ldc-developers/phobos/commit/9d1b49578ffa4b2e848159cfe5afe80b5e4c26eb > > Yes, but there is still one case not working for both iOS armv7 and arm64 in 0.16.1. It is only off by one ulp so I'll make a PR for that. > > https://github.com/ldc-developers/phobos/blob/ldc/std/internal/math/gammafunction.d#L540 OK, somehow doesn't assert for me on Android/ARMv7. > And then this new stuff in 2.068 is failing in various places. > > https://github.com/ldc-developers/phobos/commit/9b86eebed53c800a58dfa7e065dcb9e11cdae5c5 Yeah, that's the new function I mentioned earlier. Initializing the constant maxY ends up calling log2 through CTFE, the intrinsic for which doesn't exist in Kai's longdouble2 branch. I was going to look at writing one, feel free to beat me to it. ;) Or if you added that log2 to your branch already, could be other issues too, haven't gotten that far. |
November 07, 2015 Re: iOS LDC 0.16.1 (2.067.1) binaries available | ||||
---|---|---|---|---|
| ||||
Posted in reply to Joakim | Joakim <dlang@joakim.fea.st> writes: > On Saturday, 7 November 2015 at 20:34:06 UTC, Dan Olson wrote: >> Joakim <dlang@joakim.fea.st> writes: >>> Hmm, that's strange, this commit didn't fix the 64-bit issues for you? I believe it fixed them for me on Android/ARM: >>> >>> https://github.com/ldc-developers/phobos/commit/9d1b49578ffa4b2e848159cfe5afe80b5e4c26eb >> >> Yes, but there is still one case not working for both iOS armv7 and arm64 in 0.16.1. It is only off by one ulp so I'll make a PR for that. >> >> https://github.com/ldc-developers/phobos/blob/ldc/std/internal/math/gammafunction.d#L540 > > OK, somehow doesn't assert for me on Android/ARMv7. Different math libs I suspect is the cause. >> And then this new stuff in 2.068 is failing in various places. >> >> https://github.com/ldc-developers/phobos/commit/9b86eebed53c800a58dfa7e065dcb9e11cdae5c5 > > Yeah, that's the new function I mentioned earlier. Initializing the constant maxY ends up calling log2 through CTFE, the intrinsic for which doesn't exist in Kai's longdouble2 branch. I was going to look at writing one, feel free to beat me to it. ;) > > Or if you added that log2 to your branch already, could be other issues too, haven't gotten that far. I don't use longdouble2 branch currently, but only because I had another simpler 64-bit specific solution. Yes, I had to add log() to it for CTFE. longdouble2 does need to get into LDC to make general support of cross-compilers easier. Kai's main concern was about CTFE accuracy for functions like sin(). Someone or us should start on that. I traced through the new gammafunction errors and several are due to subnormals getting fed to log(). Many iOS math functions treat subnormals as zero, producing different results. I just have to find them and revise the unitttests. |
Copyright © 1999-2021 by the D Language Foundation