<p dir="ltr">Yeah that's the one.</p>
<div class="gmail_quote">On Nov 6, 2014 1:23 PM, "Tristan Matthews" <<a href="mailto:le.businessman@gmail.com">le.businessman@gmail.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Thu, Nov 6, 2014 at 4:20 PM, Cameron Gutman <<a href="mailto:aicommander@gmail.com">aicommander@gmail.com</a>> wrote:<br>
> _WIN32, WIN32, WIN64, and _WIN64 are the wrong definitions to be gating this<br>
> on in the first place. They aren't at all meant to be x86/x86-64 specific.<br>
> At best, they're 32-bit/64-bit specific, but that's not the intended use in<br>
> the code. The correct definitions are _M_IX86 and _M_X64, as Martin said.<br>
><br>
> I sent a patch to this ML that fixed these a few months ago but it was<br>
> forgotten/ignored. Hopefully the issue gets addressed this time.<br>
<br>
This one, I gather?<br>
<a href="http://lists.xiph.org/pipermail/opus/attachments/20140406/e19d33cd/attachment.obj" target="_blank">http://lists.xiph.org/pipermail/opus/attachments/20140406/e19d33cd/attachment.obj</a><br>
<br>
Best,<br>
Tristan<br>
<br>
><br>
> Cameron<br>
><br>
> On Nov 6, 2014 9:53 AM, "Martin Storsjö" <<a href="mailto:martin@martin.st">martin@martin.st</a>> wrote:<br>
>><br>
>> On Thu, 6 Nov 2014, Hugo Beauzée-Luyssen wrote:<br>
>><br>
>>> ---<br>
>>> celt/float_cast.h | 4 ++--<br>
>>> 1 file changed, 2 insertions(+), 2 deletions(-)<br>
>>><br>
>>> diff --git a/celt/float_cast.h b/celt/float_cast.h<br>
>>> index ede6574..4892e2c 100644<br>
>>> --- a/celt/float_cast.h<br>
>>> +++ b/celt/float_cast.h<br>
>>> @@ -90,14 +90,14 @@<br>
>>> #include <math.h><br>
>>> #define float2int(x) lrint(x)<br>
>>><br>
>>> -#elif (defined(_MSC_VER) && _MSC_VER >= 1400) && (defined (WIN64) ||<br>
>>> defined (_WIN64))<br>
>>> +#elif (defined(_MSC_VER) && _MSC_VER >= 1400) && (defined (WIN64) ||<br>
>>> defined (_WIN64)) && !defined(_M_ARM)<br>
>>> #include <xmmintrin.h><br>
>>><br>
>>> __inline long int float2int(float value)<br>
>>> {<br>
>>> return _mm_cvtss_si32(_mm_load_ss(&value));<br>
>>> }<br>
>>> -#elif (defined(_MSC_VER) && _MSC_VER >= 1400) && (defined (WIN32) ||<br>
>>> defined (_WIN32))<br>
>>> +#elif (defined(_MSC_VER) && _MSC_VER >= 1400) && (defined (WIN32) ||<br>
>>> defined (_WIN32)) && !defined(_M_ARM)<br>
>>> #include <math.h><br>
>>><br>
>>> /* Win32 doesn't seem to have these functions.<br>
>>> --<br>
>>> 2.1.1<br>
>><br>
>><br>
>> As MSVC might support other architectures than arm and x86 (they did<br>
>> support mips, alpha and itanium at some points in time), I think it might be<br>
>> better to use this instead:<br>
>><br>
>> ... && (defined(_M_IX86) || defined(_M_X64))<br>
>><br>
>> // Martin<br>
>> _______________________________________________<br>
>> opus mailing list<br>
>> <a href="mailto:opus@xiph.org">opus@xiph.org</a><br>
>> <a href="http://lists.xiph.org/mailman/listinfo/opus" target="_blank">http://lists.xiph.org/mailman/listinfo/opus</a><br>
>><br>
><br>
> _______________________________________________<br>
> opus mailing list<br>
> <a href="mailto:opus@xiph.org">opus@xiph.org</a><br>
> <a href="http://lists.xiph.org/mailman/listinfo/opus" target="_blank">http://lists.xiph.org/mailman/listinfo/opus</a><br>
><br>
</blockquote></div>