summaryrefslogtreecommitdiffstats
path: root/meta/recipes-support/liboil
diff options
context:
space:
mode:
authorNitin A Kamble <nitin.a.kamble@intel.com>2011-12-02 12:20:06 -0800
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-12-05 22:47:07 +0000
commitf3c0a02b920efa5747474b4c65aba12a928e56de (patch)
tree4152fb62bb1aa96c80c7d5a9671fc02f8e61fa8d /meta/recipes-support/liboil
parentb60d604f233565edc47b9d132ce7141a4eeb17f9 (diff)
downloadpoky-f3c0a02b920efa5747474b4c65aba12a928e56de.tar.gz
liboil: patch source code for x32
Make the assembly syntax compatible with x32 gcc. Othewise x32 gcc throws errors. This Fixes bug: [YOCTO #1412] (From OE-Core rev: f43d633540b41c94eacfbc3c5c450ddd192b2164) Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-support/liboil')
-rw-r--r--meta/recipes-support/liboil/liboil-0.3.17/liboil_fix_for_x32.patch222
-rw-r--r--meta/recipes-support/liboil/liboil_0.3.17.bb3
2 files changed, 224 insertions, 1 deletions
diff --git a/meta/recipes-support/liboil/liboil-0.3.17/liboil_fix_for_x32.patch b/meta/recipes-support/liboil/liboil-0.3.17/liboil_fix_for_x32.patch
new file mode 100644
index 0000000000..473380e9fc
--- /dev/null
+++ b/meta/recipes-support/liboil/liboil-0.3.17/liboil_fix_for_x32.patch
@@ -0,0 +1,222 @@
1Upstream-Status: Pending
2
3Make the assembly syntax compatible with x32 gcc. Othewise x32 gcc throws errors.
4
5Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
62011/12/01
7
8
9Index: liboil-0.3.17/liboil/amd64/wavelet.c
10===================================================================
11--- liboil-0.3.17.orig/liboil/amd64/wavelet.c
12+++ liboil-0.3.17/liboil/amd64/wavelet.c
13@@ -21,14 +21,14 @@ deinterleave2_asm (int16_t *d1, int16_t
14 asm volatile ("\n"
15 " sub $2, %%rcx\n"
16 "1:\n"
17- " movw (%1,%%rcx,4), %%ax\n"
18- " movw %%ax, (%0,%%rcx,2)\n"
19- " movw 2(%1,%%rcx,4), %%ax\n"
20- " movw %%ax, (%2,%%rcx,2)\n"
21- " movw 4(%1,%%rcx,4), %%ax\n"
22- " movw %%ax, 2(%0,%%rcx,2)\n"
23- " movw 6(%1,%%rcx,4), %%ax\n"
24- " movw %%ax, 2(%2,%%rcx,2)\n"
25+ " movw (%q1,%%rcx,4), %%ax\n"
26+ " movw %%ax, (%q0,%%rcx,2)\n"
27+ " movw 2(%q1,%%rcx,4), %%ax\n"
28+ " movw %%ax, (%q2,%%rcx,2)\n"
29+ " movw 4(%q1,%%rcx,4), %%ax\n"
30+ " movw %%ax, 2(%q0,%%rcx,2)\n"
31+ " movw 6(%q1,%%rcx,4), %%ax\n"
32+ " movw %%ax, 2(%q2,%%rcx,2)\n"
33 " sub $2, %%rcx\n"
34 " jge 1b\n"
35 : "+r" (d1), "+r" (s_2xn), "+r" (d2), "+c" (n)
36@@ -53,20 +53,20 @@ deinterleave2_mmx (int16_t *d1, int16_t
37 asm volatile ("\n"
38 " xor %%rcx, %%rcx\n"
39 "1:\n"
40- " movq (%1,%%rcx,4), %%mm0\n"
41- " movq 8(%1,%%rcx,4), %%mm1\n"
42+ " movq (%q1,%%rcx,4), %%mm0\n"
43+ " movq 8(%q1,%%rcx,4), %%mm1\n"
44 " pslld $16, %%mm0\n"
45 " pslld $16, %%mm1\n"
46 " psrad $16, %%mm0\n"
47 " psrad $16, %%mm1\n"
48 " packssdw %%mm1, %%mm0\n"
49- " movq %%mm0, (%0,%%rcx,2)\n"
50- " movq (%1,%%rcx,4), %%mm0\n"
51- " movq 8(%1,%%rcx,4), %%mm1\n"
52+ " movq %%mm0, (%q0,%%rcx,2)\n"
53+ " movq (%q1,%%rcx,4), %%mm0\n"
54+ " movq 8(%q1,%%rcx,4), %%mm1\n"
55 " psrad $16, %%mm0\n"
56 " psrad $16, %%mm1\n"
57 " packssdw %%mm1, %%mm0\n"
58- " movq %%mm0, (%2,%%rcx,2)\n"
59+ " movq %%mm0, (%q2,%%rcx,2)\n"
60 " add $4, %%rcx\n"
61 " cmp %3, %%ecx\n"
62 " jl 1b\n"
63@@ -93,10 +93,10 @@ deinterleave2_mmx_2 (int16_t *d1, int16_
64 asm volatile ("\n"
65 " xor %%rcx, %%rcx\n"
66 "1:\n"
67- " pshufw $0xd8, (%1,%%rcx,4), %%mm0\n"
68- " movd %%mm0, (%0,%%rcx,2)\n"
69- " pshufw $0x8d, (%1,%%rcx,4), %%mm0\n"
70- " movd %%mm0, (%2,%%rcx,2)\n"
71+ " pshufw $0xd8, (%q1,%%rcx,4), %%mm0\n"
72+ " movd %%mm0, (%q0,%%rcx,2)\n"
73+ " pshufw $0x8d, (%q1,%%rcx,4), %%mm0\n"
74+ " movd %%mm0, (%q2,%%rcx,2)\n"
75 " add $2, %%rcx\n"
76 " cmp %3, %%ecx\n"
77 " jl 1b\n"
78@@ -123,16 +123,16 @@ deinterleave2_mmx_3 (int16_t *d1, int16_
79 asm volatile ("\n"
80 " xor %%rcx, %%rcx\n"
81 "1:\n"
82- " movq (%1,%%rcx,4), %%mm1\n"
83- " movq (%1,%%rcx,4), %%mm2\n"
84- " movq 8(%1,%%rcx,4), %%mm0\n"
85+ " movq (%q1,%%rcx,4), %%mm1\n"
86+ " movq (%q1,%%rcx,4), %%mm2\n"
87+ " movq 8(%q1,%%rcx,4), %%mm0\n"
88 " punpcklwd %%mm0, %%mm1\n"
89 " punpckhwd %%mm0, %%mm2\n"
90 " movq %%mm1, %%mm0\n"
91 " punpcklwd %%mm2, %%mm0\n"
92 " punpckhwd %%mm2, %%mm1\n"
93- " movq %%mm0, (%0,%%rcx,2)\n"
94- " movq %%mm1, (%2,%%rcx,2)\n"
95+ " movq %%mm0, (%q0,%%rcx,2)\n"
96+ " movq %%mm1, (%q2,%%rcx,2)\n"
97 " add $4, %%rcx\n"
98 " cmp %3, %%ecx\n"
99 " jl 1b\n"
100@@ -159,26 +159,26 @@ deinterleave2_mmx_4 (int16_t *d1, int16_
101 asm volatile ("\n"
102 " xor %%rcx, %%rcx\n"
103 "1:\n"
104- " movq (%1,%%rcx,4), %%mm1\n"
105+ " movq (%q1,%%rcx,4), %%mm1\n"
106 " movq %%mm1, %%mm2\n"
107- " movq 8(%1,%%rcx,4), %%mm0\n"
108- " movq 16(%1,%%rcx,4), %%mm5\n"
109+ " movq 8(%q1,%%rcx,4), %%mm0\n"
110+ " movq 16(%q1,%%rcx,4), %%mm5\n"
111 " punpcklwd %%mm0, %%mm1\n"
112 " movq %%mm5, %%mm6\n"
113 " punpckhwd %%mm0, %%mm2\n"
114- " movq 24(%1,%%rcx,4), %%mm4\n"
115+ " movq 24(%q1,%%rcx,4), %%mm4\n"
116 " movq %%mm1, %%mm0\n"
117 " punpcklwd %%mm4, %%mm5\n"
118 " punpcklwd %%mm2, %%mm0\n"
119 " punpckhwd %%mm4, %%mm6\n"
120 " punpckhwd %%mm2, %%mm1\n"
121 " movq %%mm5, %%mm4\n"
122- " movq %%mm0, (%0,%%rcx,2)\n"
123+ " movq %%mm0, (%q0,%%rcx,2)\n"
124 " punpcklwd %%mm6, %%mm4\n"
125- " movq %%mm1, (%2,%%rcx,2)\n"
126+ " movq %%mm1, (%q2,%%rcx,2)\n"
127 " punpckhwd %%mm6, %%mm5\n"
128- " movq %%mm4, 8(%0,%%rcx,2)\n"
129- " movq %%mm5, 8(%2,%%rcx,2)\n"
130+ " movq %%mm4, 8(%q0,%%rcx,2)\n"
131+ " movq %%mm5, 8(%q2,%%rcx,2)\n"
132 " add $8, %%rcx\n"
133 " cmp %3, %%ecx\n"
134 " jl 1b\n"
135@@ -252,13 +252,13 @@ interleave2_mmx (int16_t *d_2xn, int16_t
136 asm volatile ("\n"
137 " xor %%rcx, %%rcx\n"
138 "1:\n"
139- " movq (%1,%%rcx,2), %%mm0\n"
140- " movq (%2,%%rcx,2), %%mm1\n"
141+ " movq (%q1,%%rcx,2), %%mm0\n"
142+ " movq (%q2,%%rcx,2), %%mm1\n"
143 " movq %%mm0, %%mm2\n"
144 " punpckhwd %%mm1, %%mm0\n"
145 " punpcklwd %%mm1, %%mm2\n"
146- " movq %%mm2, (%0,%%rcx,4)\n"
147- " movq %%mm0, 8(%0,%%rcx,4)\n"
148+ " movq %%mm2, (%q0,%%rcx,4)\n"
149+ " movq %%mm0, 8(%q0,%%rcx,4)\n"
150 " add $4, %%rcx\n"
151 " cmp %3, %%ecx\n"
152 " jl 1b\n"
153@@ -285,12 +285,12 @@ lift_add_shift1_mmx (int16_t *d, int16_t
154 asm volatile ("\n"
155 " xor %%rcx, %%rcx\n"
156 "1:\n"
157- " movq (%2,%%rcx,2), %%mm1\n"
158- " movq (%3,%%rcx,2), %%mm2\n"
159+ " movq (%q2,%%rcx,2), %%mm1\n"
160+ " movq (%q3,%%rcx,2), %%mm2\n"
161 " paddw %%mm2, %%mm1\n"
162 " psraw $1, %%mm1\n"
163- " paddw (%1,%%rcx,2), %%mm1\n"
164- " movq %%mm1, (%0,%%rcx,2)\n"
165+ " paddw (%q1,%%rcx,2), %%mm1\n"
166+ " movq %%mm1, (%q0,%%rcx,2)\n"
167 " add $4, %%rcx\n"
168 " cmp %4, %%ecx\n"
169 " jl 1b\n"
170@@ -317,13 +317,13 @@ lift_sub_shift1_mmx (int16_t *d, int16_t
171 asm volatile ("\n"
172 " xor %%rcx, %%rcx\n"
173 "1:\n"
174- " movq (%2,%%rcx,2), %%mm1\n"
175- " movq (%3,%%rcx,2), %%mm2\n"
176- " movq (%1,%%rcx,2), %%mm0\n"
177+ " movq (%q2,%%rcx,2), %%mm1\n"
178+ " movq (%q3,%%rcx,2), %%mm2\n"
179+ " movq (%q1,%%rcx,2), %%mm0\n"
180 " paddw %%mm2, %%mm1\n"
181 " psraw $1, %%mm1\n"
182 " psubw %%mm1, %%mm0\n"
183- " movq %%mm0, (%0,%%rcx,2)\n"
184+ " movq %%mm0, (%q0,%%rcx,2)\n"
185 " add $4, %%rcx\n"
186 " cmp %4, %%ecx\n"
187 " jl 1b\n"
188@@ -350,12 +350,12 @@ lift_add_shift2_mmx (int16_t *d, int16_t
189 asm volatile ("\n"
190 " xor %%rcx, %%rcx\n"
191 "1:\n"
192- " movq (%2,%%rcx,2), %%mm1\n"
193- " movq (%3,%%rcx,2), %%mm2\n"
194+ " movq (%q2,%%rcx,2), %%mm1\n"
195+ " movq (%q3,%%rcx,2), %%mm2\n"
196 " paddw %%mm2, %%mm1\n"
197 " psraw $2, %%mm1\n"
198- " paddw (%1,%%rcx,2), %%mm1\n"
199- " movq %%mm1, (%0,%%rcx,2)\n"
200+ " paddw (%q1,%%rcx,2), %%mm1\n"
201+ " movq %%mm1, (%q0,%%rcx,2)\n"
202 " add $4, %%rcx\n"
203 " cmp %4, %%ecx\n"
204 " jl 1b\n"
205@@ -382,13 +382,13 @@ lift_sub_shift2_mmx (int16_t *d, int16_t
206 asm volatile ("\n"
207 " xor %%rcx, %%rcx\n"
208 "1:\n"
209- " movq (%2,%%rcx,2), %%mm1\n"
210- " movq (%3,%%rcx,2), %%mm2\n"
211- " movq (%1,%%rcx,2), %%mm0\n"
212+ " movq (%q2,%%rcx,2), %%mm1\n"
213+ " movq (%q3,%%rcx,2), %%mm2\n"
214+ " movq (%q1,%%rcx,2), %%mm0\n"
215 " paddw %%mm2, %%mm1\n"
216 " psraw $2, %%mm1\n"
217 " psubw %%mm1, %%mm0\n"
218- " movq %%mm0, (%0,%%rcx,2)\n"
219+ " movq %%mm0, (%q0,%%rcx,2)\n"
220 " add $4, %%rcx\n"
221 " cmp %4, %%ecx\n"
222 " jl 1b\n"
diff --git a/meta/recipes-support/liboil/liboil_0.3.17.bb b/meta/recipes-support/liboil/liboil_0.3.17.bb
index 10a845e42f..b1e21ab353 100644
--- a/meta/recipes-support/liboil/liboil_0.3.17.bb
+++ b/meta/recipes-support/liboil/liboil_0.3.17.bb
@@ -10,12 +10,13 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=ad80780d9c5205d63481a0184e199a15 \
10 file://testsuite/trans.c;endline=29;md5=380ecd43121fe3dcc0d8d7e5984f283d" 10 file://testsuite/trans.c;endline=29;md5=380ecd43121fe3dcc0d8d7e5984f283d"
11 11
12DEPENDS = "glib-2.0" 12DEPENDS = "glib-2.0"
13PR = "r4" 13PR = "r5"
14 14
15SRC_URI = "http://liboil.freedesktop.org/download/${BPN}-${PV}.tar.gz \ 15SRC_URI = "http://liboil.freedesktop.org/download/${BPN}-${PV}.tar.gz \
16 file://no-tests.patch \ 16 file://no-tests.patch \
17 file://fix-unaligned-whitelist.patch \ 17 file://fix-unaligned-whitelist.patch \
18 file://0001-Fix-enable-vfp-flag.patch \ 18 file://0001-Fix-enable-vfp-flag.patch \
19 file://liboil_fix_for_x32.patch \
19 " 20 "
20 21
21SRC_URI[md5sum] = "47dc734f82faeb2964d97771cfd2e701" 22SRC_URI[md5sum] = "47dc734f82faeb2964d97771cfd2e701"