http://bugs.winehq.org/show_bug.cgi?id=14717
--- Comment #29 from Krzysztof Nikiel zzdz2@yahoo.pl 2010-11-27 11:07:51 CST --- (In reply to comment #27)
While such functions as EnterCriticalSection exist in Windows API, modern books call them a design error, because they protect code, not data.
Looks like Wine uses these functions extensively, perhaps those books are in error. The patch is using something different anyway.
Also, why use them if the static precalculated FIR achieves the same result (thread safety) without any synchronization primitives?
Precalculated tables might be good, for now it's calculated on the fly.