Mercurial > mplayer.hg
comparison libmpcodecs/vf_ilpack.c @ 28290:25337a2147e7
Lots and lots of #ifdef ARCH_... -> #if ARCH_...
and #ifdef HAVE_MMX etc -> #if HAVE_MMX.
There might be still more that need to be fixed.
author | reimar |
---|---|
date | Fri, 16 Jan 2009 09:21:21 +0000 |
parents | 08d18fe9da52 |
children | 963f578121c6 |
comparison
equal
deleted
inserted
replaced
28289:4210f3621db1 | 28290:25337a2147e7 |
---|---|
55 *dst++ = (3*v[vs+vs] + 5*v[0])>>3; | 55 *dst++ = (3*v[vs+vs] + 5*v[0])>>3; |
56 u++; v++; | 56 u++; v++; |
57 } | 57 } |
58 } | 58 } |
59 | 59 |
60 #ifdef HAVE_MMX | 60 #if HAVE_MMX |
61 static void pack_nn_MMX(unsigned char *dst, unsigned char *y, | 61 static void pack_nn_MMX(unsigned char *dst, unsigned char *y, |
62 unsigned char *u, unsigned char *v, int w) | 62 unsigned char *u, unsigned char *v, int w) |
63 { | 63 { |
64 __asm__ volatile ("" | 64 __asm__ volatile ("" |
65 ASMALIGN(4) | 65 ASMALIGN(4) |
91 static void pack_li_0_MMX(unsigned char *dst, unsigned char *y, | 91 static void pack_li_0_MMX(unsigned char *dst, unsigned char *y, |
92 unsigned char *u, unsigned char *v, int w, int us, int vs) | 92 unsigned char *u, unsigned char *v, int w, int us, int vs) |
93 { | 93 { |
94 __asm__ volatile ("" | 94 __asm__ volatile ("" |
95 "push %%"REG_BP" \n\t" | 95 "push %%"REG_BP" \n\t" |
96 #ifdef ARCH_X86_64 | 96 #if ARCH_X86_64 |
97 "mov %6, %%"REG_BP" \n\t" | 97 "mov %6, %%"REG_BP" \n\t" |
98 #else | 98 #else |
99 "movl 4(%%"REG_d"), %%"REG_BP" \n\t" | 99 "movl 4(%%"REG_d"), %%"REG_BP" \n\t" |
100 "movl (%%"REG_d"), %%"REG_d" \n\t" | 100 "movl (%%"REG_d"), %%"REG_d" \n\t" |
101 #endif | 101 #endif |
184 "jnz .Lli0 \n\t" | 184 "jnz .Lli0 \n\t" |
185 "emms \n\t" | 185 "emms \n\t" |
186 "pop %%"REG_BP" \n\t" | 186 "pop %%"REG_BP" \n\t" |
187 : | 187 : |
188 : "S" (y), "D" (dst), "a" (u), "b" (v), "c" (w/16), | 188 : "S" (y), "D" (dst), "a" (u), "b" (v), "c" (w/16), |
189 #ifdef ARCH_X86_64 | 189 #if ARCH_X86_64 |
190 "d" ((long)us), "r" ((long)vs) | 190 "d" ((long)us), "r" ((long)vs) |
191 #else | 191 #else |
192 "d" (&us) | 192 "d" (&us) |
193 #endif | 193 #endif |
194 : "memory" | 194 : "memory" |
199 static void pack_li_1_MMX(unsigned char *dst, unsigned char *y, | 199 static void pack_li_1_MMX(unsigned char *dst, unsigned char *y, |
200 unsigned char *u, unsigned char *v, int w, int us, int vs) | 200 unsigned char *u, unsigned char *v, int w, int us, int vs) |
201 { | 201 { |
202 __asm__ volatile ("" | 202 __asm__ volatile ("" |
203 "push %%"REG_BP" \n\t" | 203 "push %%"REG_BP" \n\t" |
204 #ifdef ARCH_X86_64 | 204 #if ARCH_X86_64 |
205 "mov %6, %%"REG_BP" \n\t" | 205 "mov %6, %%"REG_BP" \n\t" |
206 #else | 206 #else |
207 "movl 4(%%"REG_d"), %%"REG_BP" \n\t" | 207 "movl 4(%%"REG_d"), %%"REG_BP" \n\t" |
208 "movl (%%"REG_d"), %%"REG_d" \n\t" | 208 "movl (%%"REG_d"), %%"REG_d" \n\t" |
209 #endif | 209 #endif |
296 "jnz .Lli1 \n\t" | 296 "jnz .Lli1 \n\t" |
297 "emms \n\t" | 297 "emms \n\t" |
298 "pop %%"REG_BP" \n\t" | 298 "pop %%"REG_BP" \n\t" |
299 : | 299 : |
300 : "S" (y), "D" (dst), "a" (u), "b" (v), "c" (w/16), | 300 : "S" (y), "D" (dst), "a" (u), "b" (v), "c" (w/16), |
301 #ifdef ARCH_X86_64 | 301 #if ARCH_X86_64 |
302 "d" ((long)us), "r" ((long)vs) | 302 "d" ((long)us), "r" ((long)vs) |
303 #else | 303 #else |
304 "d" (&us) | 304 "d" (&us) |
305 #endif | 305 #endif |
306 : "memory" | 306 : "memory" |
394 if (args) sscanf(args, "%d", &vf->priv->mode); | 394 if (args) sscanf(args, "%d", &vf->priv->mode); |
395 | 395 |
396 pack_nn = (pack_func_t *)pack_nn_C; | 396 pack_nn = (pack_func_t *)pack_nn_C; |
397 pack_li_0 = pack_li_0_C; | 397 pack_li_0 = pack_li_0_C; |
398 pack_li_1 = pack_li_1_C; | 398 pack_li_1 = pack_li_1_C; |
399 #ifdef HAVE_MMX | 399 #if HAVE_MMX |
400 if(gCpuCaps.hasMMX) { | 400 if(gCpuCaps.hasMMX) { |
401 pack_nn = (pack_func_t *)pack_nn_MMX; | 401 pack_nn = (pack_func_t *)pack_nn_MMX; |
402 pack_li_0 = pack_li_0_MMX; | 402 pack_li_0 = pack_li_0_MMX; |
403 pack_li_1 = pack_li_1_MMX; | 403 pack_li_1 = pack_li_1_MMX; |
404 } | 404 } |