Well, the assumption that Unix side doesn't change persistent FPU state is not strictly correct of course, it can rightfully switch and restore FPU flags. Strictly correct would be to save all the relevant FPU state in wine_unix_call_dispatcher but avoiding that was one of the most important optimizations which triggered the introduction of the separate Unix call dispatcher and there is probably no other feasible way to know the correct FP words. But using x87 FPU on the Unix side and switching it state is probably exotic these days, Linux i386 uses SSE now, so I guess avoiding potential loss of PE-side FPU state is more important.
Yet I think I'd need to at least reset x87 FP stack when fixing it up in usr1_handler, I will update the patch with that.