Mercurial > mplayer.hg
comparison libmpcodecs/vf_ass.c @ 35582:373c7154ec54
Rename consts & avoid using a GNU extension.
author | upsuper |
---|---|
date | Thu, 13 Dec 2012 05:19:29 +0000 |
parents | a50eb4e27138 |
children | fb92c6de7f70 |
comparison
equal
deleted
inserted
replaced
35581:a50eb4e27138 | 35582:373c7154ec54 |
---|---|
61 /* map 0 - 0xFF -> 0 - 0x10101 */ | 61 /* map 0 - 0xFF -> 0 - 0x10101 */ |
62 #define MAP_24BIT(v) RSHIFT(0x10203 * (v), 8) | 62 #define MAP_24BIT(v) RSHIFT(0x10203 * (v), 8) |
63 | 63 |
64 #if HAVE_SSE4 | 64 #if HAVE_SSE4 |
65 | 65 |
66 DECLARE_ASM_CONST(16, uint32_t, SSE_32BIT_80H[4]) = { [0 ... 3] = 0x80 }; | 66 DECLARE_ASM_CONST(16, uint32_t, sse_int32_80h[4]) |
67 DECLARE_ASM_CONST(16, uint32_t, SSE_32BIT_MAP[4]) = { [0 ... 3] = 0x102 }; | 67 = { 0x80, 0x80, 0x80, 0x80 }; |
68 DECLARE_ASM_CONST(16, uint32_t, sse_int32_map_factor[4]) | |
69 = { 0x102, 0x102, 0x102, 0x102 }; | |
68 | 70 |
69 #endif // HAVE_SSE4 | 71 #endif // HAVE_SSE4 |
70 | 72 |
71 static const struct vf_priv_s { | 73 static const struct vf_priv_s { |
72 int outh, outw; | 74 int outh, outw; |
237 "movq (%[alpha], %[j], 1), %%xmm0 \n\t" | 239 "movq (%[alpha], %[j], 1), %%xmm0 \n\t" |
238 "punpcklbw %%xmm7, %%xmm0 \n\t" | 240 "punpcklbw %%xmm7, %%xmm0 \n\t" |
239 "movdqa %%xmm0, %%xmm1 \n\t" | 241 "movdqa %%xmm0, %%xmm1 \n\t" |
240 "punpcklwd %%xmm7, %%xmm0 \n\t" | 242 "punpcklwd %%xmm7, %%xmm0 \n\t" |
241 "punpckhwd %%xmm7, %%xmm1 \n\t" | 243 "punpckhwd %%xmm7, %%xmm1 \n\t" |
242 "pmulld "MANGLE(SSE_32BIT_MAP)", %%xmm0 \n\t" | 244 "pmulld "MANGLE(sse_int32_map_factor)", %%xmm0 \n\t" |
243 "pmulld "MANGLE(SSE_32BIT_MAP)", %%xmm1 \n\t" | 245 "pmulld "MANGLE(sse_int32_map_factor)", %%xmm1 \n\t" |
244 "paddd "MANGLE(SSE_32BIT_80H)", %%xmm0 \n\t" | 246 "paddd "MANGLE(sse_int32_80h)", %%xmm0 \n\t" |
245 "paddd "MANGLE(SSE_32BIT_80H)", %%xmm1 \n\t" | 247 "paddd "MANGLE(sse_int32_80h)", %%xmm1 \n\t" |
246 "psrld $8, %%xmm0 \n\t" | 248 "psrld $8, %%xmm0 \n\t" |
247 "psrld $8, %%xmm1 \n\t" | 249 "psrld $8, %%xmm1 \n\t" |
248 "movdqa %%xmm0, %%xmm2 \n\t" | 250 "movdqa %%xmm0, %%xmm2 \n\t" |
249 "movdqa %%xmm1, %%xmm3 \n\t" | 251 "movdqa %%xmm1, %%xmm3 \n\t" |
250 "packssdw %%xmm1, %%xmm0 \n\t" | 252 "packssdw %%xmm1, %%xmm0 \n\t" |
448 "movdqa %%xmm2, %%xmm3 \n\t" \ | 450 "movdqa %%xmm2, %%xmm3 \n\t" \ |
449 "punpcklwd %%xmm7, %%xmm0 \n\t" \ | 451 "punpcklwd %%xmm7, %%xmm0 \n\t" \ |
450 "punpckhwd %%xmm7, %%xmm1 \n\t" \ | 452 "punpckhwd %%xmm7, %%xmm1 \n\t" \ |
451 "punpcklwd %%xmm7, %%xmm2 \n\t" \ | 453 "punpcklwd %%xmm7, %%xmm2 \n\t" \ |
452 "punpckhwd %%xmm7, %%xmm3 \n\t" \ | 454 "punpckhwd %%xmm7, %%xmm3 \n\t" \ |
453 "pmulld "MANGLE(SSE_32BIT_MAP)", %%xmm0 \n\t" \ | 455 "pmulld "MANGLE(sse_int32_map_factor)", %%xmm0 \n\t"\ |
454 "pmulld "MANGLE(SSE_32BIT_MAP)", %%xmm1 \n\t" \ | 456 "pmulld "MANGLE(sse_int32_map_factor)", %%xmm1 \n\t"\ |
455 "pmulld "MANGLE(SSE_32BIT_MAP)", %%xmm2 \n\t" \ | 457 "pmulld "MANGLE(sse_int32_map_factor)", %%xmm2 \n\t"\ |
456 "pmulld "MANGLE(SSE_32BIT_MAP)", %%xmm3 \n\t" \ | 458 "pmulld "MANGLE(sse_int32_map_factor)", %%xmm3 \n\t"\ |
457 "paddd "MANGLE(SSE_32BIT_80H)", %%xmm0 \n\t" \ | 459 "paddd "MANGLE(sse_int32_80h)", %%xmm0 \n\t" \ |
458 "paddd "MANGLE(SSE_32BIT_80H)", %%xmm1 \n\t" \ | 460 "paddd "MANGLE(sse_int32_80h)", %%xmm1 \n\t" \ |
459 "paddd "MANGLE(SSE_32BIT_80H)", %%xmm2 \n\t" \ | 461 "paddd "MANGLE(sse_int32_80h)", %%xmm2 \n\t" \ |
460 "paddd "MANGLE(SSE_32BIT_80H)", %%xmm3 \n\t" \ | 462 "paddd "MANGLE(sse_int32_80h)", %%xmm3 \n\t" \ |
461 "psrld $8, %%xmm0 \n\t" \ | 463 "psrld $8, %%xmm0 \n\t" \ |
462 "psrld $8, %%xmm1 \n\t" \ | 464 "psrld $8, %%xmm1 \n\t" \ |
463 "psrld $8, %%xmm2 \n\t" \ | 465 "psrld $8, %%xmm2 \n\t" \ |
464 "psrld $8, %%xmm3 \n\t" \ | 466 "psrld $8, %%xmm3 \n\t" \ |
465 "packssdw %%xmm1, %%xmm0 \n\t" \ | 467 "packssdw %%xmm1, %%xmm0 \n\t" \ |