Lines 114-120
static void pack_li_0_MMX(unsigned char *dst, unsigned char *y,
Link Here
|
114 |
unsigned char *u, unsigned char *v, int w, int us, int vs) |
114 |
unsigned char *u, unsigned char *v, int w, int us, int vs) |
115 |
{ |
115 |
{ |
116 |
__asm__ volatile ("" |
116 |
__asm__ volatile ("" |
117 |
"push %%"REG_BP" \n\t" |
117 |
"push %%"REG_rBP" \n\t" |
118 |
#if ARCH_X86_64 |
118 |
#if ARCH_X86_64 |
119 |
"mov %6, %%"REG_BP" \n\t" |
119 |
"mov %6, %%"REG_BP" \n\t" |
120 |
#else |
120 |
#else |
Lines 205-211
static void pack_li_0_MMX(unsigned char *dst, unsigned char *y,
Link Here
|
205 |
"decl %%ecx \n\t" |
205 |
"decl %%ecx \n\t" |
206 |
"jnz .Lli0 \n\t" |
206 |
"jnz .Lli0 \n\t" |
207 |
"emms \n\t" |
207 |
"emms \n\t" |
208 |
"pop %%"REG_BP" \n\t" |
208 |
"pop %%"REG_rBP" \n\t" |
209 |
: |
209 |
: |
210 |
: "S" (y), "D" (dst), "a" (u), "b" (v), "c" (w/16), |
210 |
: "S" (y), "D" (dst), "a" (u), "b" (v), "c" (w/16), |
211 |
#if ARCH_X86_64 |
211 |
#if ARCH_X86_64 |
Lines 222-228
static void pack_li_1_MMX(unsigned char *dst, unsigned char *y,
Link Here
|
222 |
unsigned char *u, unsigned char *v, int w, int us, int vs) |
222 |
unsigned char *u, unsigned char *v, int w, int us, int vs) |
223 |
{ |
223 |
{ |
224 |
__asm__ volatile ("" |
224 |
__asm__ volatile ("" |
225 |
"push %%"REG_BP" \n\t" |
225 |
"push %%"REG_rBP" \n\t" |
226 |
#if ARCH_X86_64 |
226 |
#if ARCH_X86_64 |
227 |
"mov %6, %%"REG_BP" \n\t" |
227 |
"mov %6, %%"REG_BP" \n\t" |
228 |
#else |
228 |
#else |
Lines 317-323
static void pack_li_1_MMX(unsigned char *dst, unsigned char *y,
Link Here
|
317 |
"decl %%ecx \n\t" |
317 |
"decl %%ecx \n\t" |
318 |
"jnz .Lli1 \n\t" |
318 |
"jnz .Lli1 \n\t" |
319 |
"emms \n\t" |
319 |
"emms \n\t" |
320 |
"pop %%"REG_BP" \n\t" |
320 |
"pop %%"REG_rBP" \n\t" |
321 |
: |
321 |
: |
322 |
: "S" (y), "D" (dst), "a" (u), "b" (v), "c" (w/16), |
322 |
: "S" (y), "D" (dst), "a" (u), "b" (v), "c" (w/16), |
323 |
#if ARCH_X86_64 |
323 |
#if ARCH_X86_64 |