[D-runtime] Fibers and x87/SSE control words?
Martin Nowak
dawg at dawgfoto.de
Mon Feb 13 12:26:32 PST 2012
On Mon, 13 Feb 2012 19:51:08 +0100, David Nadlinger <code at klickverbot.at>
wrote:
> After a few hours of reverse-engineering x86 SEH, I finally got
> exceptions in fibers working on my Windows Server 2008 R2 box – sorry,
> Sean, that I reported them working after your previous changes, I was
> only testing on my XP VM. Please see:
> https://github.com/D-Programming-Language/druntime/pull/150 (not
> super-urgent, but fixes the Thrift async client code)
>
> Anyway, while working on the code, I noticed that we are currently not
> saving/restoring the x87 and SSE control words. Now, I'd certainly love
> to keep the context switching overhead as low as possible, but should we
> add a pair of stmxcsr/ldmxcsr reps. fnstcw/fldcw for the sake of
> correctness?
>
> If necessary, I can prepare a patch.
>
> David
> _______________________________________________
> D-runtime mailing list
> D-runtime at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/d-runtime
NO!
http://d-programming-language.org/float.html - Rounding Control
Calling Fiber.yield is just returning in an unusual manner. As Fibers
are not preemptive we shouldn't do that.
Besides:
Do you have any success with the Windows+Fiber+GC bug
http://d.puremagic.com/issues/show_bug.cgi?id=7229.
More information about the D-runtime
mailing list