Mercurial > mplayer.hg
comparison libvo/osd.c @ 2843:5be2017077fb
Use new logic suggested by Michael Niedermayer
K7:
Non-MMX stuff
total=299997790
Old-MMX stuff:
total=159120928
New-MMX stuff:
total=80925337
author | nick |
---|---|
date | Sun, 11 Nov 2001 17:14:57 +0000 |
parents | 03ccbb72e2e9 |
children | ab51228bf3cf |
comparison
equal
deleted
inserted
replaced
2842:aebdcb39cadb | 2843:5be2017077fb |
---|---|
71 PREFETCH" %2\n\t" | 71 PREFETCH" %2\n\t" |
72 "pxor %%mm7, %%mm7\n\t" | 72 "pxor %%mm7, %%mm7\n\t" |
73 "pcmpeqb %%mm6, %%mm6\n\t" // F..F | 73 "pcmpeqb %%mm6, %%mm6\n\t" // F..F |
74 ::"m"(*dst),"m"(*srca),"m"(*src):"memory"); | 74 ::"m"(*dst),"m"(*srca),"m"(*src):"memory"); |
75 for(x=0;x<w;x+=2){ | 75 for(x=0;x<w;x+=2){ |
76 if(srca[x] || srca[x+1]) | |
76 asm volatile( | 77 asm volatile( |
77 PREFETCHW" 32%0\n\t" | 78 PREFETCHW" 32%0\n\t" |
78 PREFETCH" 32%1\n\t" | 79 PREFETCH" 32%1\n\t" |
79 PREFETCH" 32%2\n\t" | 80 PREFETCH" 32%2\n\t" |
80 "movq %0, %%mm0\n\t" // dstbase | 81 "movq %0, %%mm0\n\t" // dstbase |
172 PREFETCH" %2\n\t" | 173 PREFETCH" %2\n\t" |
173 "pxor %%mm7, %%mm7\n\t" | 174 "pxor %%mm7, %%mm7\n\t" |
174 "pcmpeqb %%mm6, %%mm6\n\t" // F..F | 175 "pcmpeqb %%mm6, %%mm6\n\t" // F..F |
175 ::"m"(*dstbase),"m"(*srca),"m"(*src):"memory"); | 176 ::"m"(*dstbase),"m"(*srca),"m"(*src):"memory"); |
176 for(x=0;x<w;x+=2){ | 177 for(x=0;x<w;x+=2){ |
178 if(srca[x] || srca[x+1]) | |
177 asm volatile( | 179 asm volatile( |
178 PREFETCHW" 32%0\n\t" | 180 PREFETCHW" 32%0\n\t" |
179 PREFETCH" 32%1\n\t" | 181 PREFETCH" 32%1\n\t" |
180 PREFETCH" 32%2\n\t" | 182 PREFETCH" 32%2\n\t" |
181 "movq %0, %%mm0\n\t" // dstbase | 183 "movq %0, %%mm0\n\t" // dstbase |