1 $NetBSD
: patch
-src_arch_i386_x86__floatmul
.c
,v
1.2 2011/09/22 15:18:39 wiz Exp $
3 Fix build with gcc
-4.5.
5 --- src
/arch
/i386
/x86_floatmul
.c
.orig
2005-12-21 19:06:35.000000000 +0000
6 +++ src
/arch
/i386
/x86_floatmul
.c
7 @@
-82,11 +82,27 @@
void _alFloatMul(ALshort
*bpt
, ALfloat s
10 while (samples_main
--) {
19 temp
= __builtin_ia32_pmulhw(*(v4hi
*)bpt
, v_sa
.v
);
20 +#if defined(__GNUC__) && defined(__GNUC_MINOR__) && (__GNUC__ <= 3 || (__GNUC__ == 4 && __GNUC_MINOR__ <= 2)) && !defined(__clang__)
21 *(v4hi
*)bpt
= __builtin_ia32_psllw(temp
, 1LL);
23 + *(v4hi
*)bpt
= __builtin_ia32_psllw(temp
, v_one
.v
);
26 temp
= __builtin_ia32_pmulhw(*(v4hi
*)bpt
, v_sa
.v
);
27 +#if defined(__GNUC__) && defined(__GNUC_MINOR__) && (__GNUC__ <= 3 || (__GNUC__ == 4 && __GNUC_MINOR__ <= 2)) && !defined(__clang__)
28 *(v4hi
*)bpt
= __builtin_ia32_psllw(temp
, 1LL);
30 + *(v4hi
*)bpt
= __builtin_ia32_psllw(temp
, v_one
.v
);