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