summaryrefslogtreecommitdiff
path: root/devel/liboil/patches/patch-ab
blob: 9830fb9f2d97c9353245c95867ee2657c06d8f38 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
$NetBSD: patch-ab,v 1.1 2006/10/23 18:39:24 drochner Exp $

--- ./liboil/sse/composite_sse_2pix.c.orig	2005-12-21 02:27:54.000000000 +0100
+++ ./liboil/sse/composite_sse_2pix.c
@@ -136,6 +136,13 @@ static __m128i over_argb_sse2(__m128i de
   return _mm_adds_epu8(src, muldiv_255_sse2(dest, negate_argb_sse2(srca)));
 }
 
+/*
+ * These functions trigger an ICE with gcc-3.3.3 on i386.
+ * (see NetBSD PR pkg/34886)
+ * Since SSE2 is broken anyway on i386, just disable it.
+ * (amd64 is OK)
+ */
+#ifndef __i386__
 static void
 composite_in_argb_sse_2pix (uint32_t *dest, const uint32_t *src,
     const uint8_t *mask, int n)
@@ -389,6 +396,7 @@ composite_in_over_argb_const_mask_sse_2p
 }
 OIL_DEFINE_IMPL_FULL (composite_in_over_argb_const_mask_sse_2pix,
     composite_in_over_argb_const_mask, OIL_IMPL_FLAG_SSE2);
+#endif
 
 static void
 composite_over_u8_sse_2pix (uint8_t *dest, const uint8_t *src, int n)