iOS progress

Joakim via digitalmars-d-ldc digitalmars-d-ldc at puremagic.com
Tue Feb 17 01:53:21 PST 2015


On Sunday, 15 February 2015 at 19:19:10 UTC, Dan Olson wrote:
> "Joakim" <dlang at joakim.fea.st> writes:
>> Nice work.  Skimming your commits, it looks like you have a 
>> bunch of
>> code to disable TLS altogether.  I guess that is just older 
>> work and
>> you got TLS working now?  If so, how many tests are failing 
>> for you on
>> druntime and phobos now?
>
> Hi Joakim!

Hey, good to see you're back working on this.

> I added a -disable-tls option to help with bringing up D on 
> other
> targets that don't have TLS.  My thought is if you don't have 
> threads,
> say a bare-bones target, then you don't need TLS and should be
> allowed to use existing D code without changing all TLS vars to
> __gshared.

Yes, that would certainly help when bringing D up on new targets.

> Unittests failures are not too bad.  All except one are math 
> related.
>
> std.csv - a couple double off-by-one LSB differences
> std.internal.math.gammafunction - needs update for 64-bit reals
> std.math - a real off-by-one LSB error in a few cases
>
> Failures only with optimization on (-O1 or higher):
>
> std.internal.math.errorfunction - erfc() NaN payload fails
> std.math - acosh() not producing NaN in a couple cases
> core.thread - a Fiber unittest crashes on multicore devices
>
> I have all the failures marked in the druntime and phobos 
> source with
> versions that begin with "WIP_" to workaround the failure so 
> rest of
> test can run. Grep for "WIP_" to see all the details.

I couldn't get most of the phobos unit tests to run on a 
linux/ARM hard-float board, Cubieboard2.  I'm guessing the issue 
is hard-float compatibility: I need to try softfp out and make 
sure.  Almost all the druntime tests passed on the armhf system 
though.

> It really is a
> bummer that unittests use assert because it makes it difficult 
> get results for the rest of the unittest.

Yes, Johannes had a PR last year that made tests continue 
running, among other changes, but he gave up on trying to get it 
merged:

https://github.com/D-Programming-Language/dmd/pull/3518


More information about the digitalmars-d-ldc mailing list