[PATCH 3/9] d3dx9: Add 'asin' preshader opcode.

Matteo Bruni matteo.mystral at gmail.com
Thu May 11 10:17:32 CDT 2017


2017-05-11 17:01 GMT+02:00 Paul Gofman <gofmanp at gmail.com>:
> On 05/11/2017 05:42 PM, Matteo Bruni wrote:
>>
>> 2017-05-08 17:39 GMT+02:00 Paul Gofman <gofmanp at gmail.com>:
>>
>>> +/* is_nan() does not work (by design) if compiled with gcc
>>> -ffinite-math-only option which is implied by
>>> + * -ffast_math. */
>>> +static BOOL pres_is_nan(double v)
>>> +{
>>> +    return (*(ULONG64 *)&v & 0x7ff8000000000000) == 0x7ff8000000000000;
>>> +}
>>
>> I don't think we care about people compiling Wine with broken CFLAGS.
>> We should just trust the isnan() library function. FWIW we already do
>> so in other places in Wine.
>>
>>
> I didn't know -ffast-math is not globally supported and though of it as
> possible optimization (which I am successfully using along with some other
> in my build without any problems so far). I will change that.

I'd argue that respecting -ffast-math by ignoring NaNs would be the
correct behavior either way. Certainly you get to keep the pieces of
anything that breaks.



More information about the wine-devel mailing list