[cvs] / xvidcore / src / utils / x86_asm / mem_transfer_mmx.asm Repository:
ViewVC logotype

Diff of /xvidcore/src/utils/x86_asm/mem_transfer_mmx.asm

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.9.2.1, Tue Oct 28 22:23:03 2003 UTC revision 1.13, Sat Jul 24 11:46:08 2004 UTC
# Line 37  Line 37 
37  %endmacro  %endmacro
38    
39  ;=============================================================================  ;=============================================================================
40    ; Read only data
41    ;=============================================================================
42    
43    %ifdef FORMAT_COFF
44    SECTION .rodata
45    %else
46    SECTION .rodata align=16
47    %endif
48    
49    ALIGN 16
50    mmx_one:
51            dw 1, 1, 1, 1
52    
53    ;=============================================================================
54  ; Code  ; Code
55  ;=============================================================================  ;=============================================================================
56    
# Line 231  Line 245 
245    punpckhbw mm3, mm7    punpckhbw mm3, mm7
246    paddusw mm4, mm1    paddusw mm4, mm1
247    paddusw mm6, mm3    paddusw mm6, mm3
248      paddusw mm4, [mmx_one]
249      paddusw mm6, [mmx_one]
250    psrlw mm4, 1    psrlw mm4, 1
251    psrlw mm6, 1    psrlw mm6, 1
252    packuswb mm4, mm6    packuswb mm4, mm6
253      movq [eax], mm4
254    
255      ; mm5 <- (ref1+ref2+1) / 2      ; mm5 <- (ref1+ref2+1) / 2
256    movq mm5, [ebx+edx]  ; ref1    movq mm5, [ebx+edx]  ; ref1
# Line 246  Line 263 
263    punpckhbw mm3, mm7    punpckhbw mm3, mm7
264    paddusw mm5, mm1    paddusw mm5, mm1
265    paddusw mm6, mm3    paddusw mm6, mm3
266      paddusw mm5, [mmx_one]
267      paddusw mm6, [mmx_one]
268    lea esi, [esi+2*edx]    lea esi, [esi+2*edx]
269    psrlw mm5, 1    psrlw mm5, 1
270    psrlw mm6, 1    psrlw mm6, 1
271    packuswb mm5, mm6    packuswb mm5, mm6
272      movq [eax+edx], mm5
273    
274    movq mm1, mm0    movq mm1, mm0
275    movq mm3, mm2    movq mm3, mm2
# Line 318  Line 337 
337    punpcklbw mm2, mm7    punpcklbw mm2, mm7
338    movq mm4, [ebx]     ; ref1    movq mm4, [ebx]     ; ref1
339    pavgb mm4, [esi]     ; ref2    pavgb mm4, [esi]     ; ref2
340      movq [eax], mm4
341    punpckhbw mm1, mm7    punpckhbw mm1, mm7
342    punpckhbw mm3, mm7    punpckhbw mm3, mm7
343    movq mm5, [ebx+edx] ; ref    movq mm5, [ebx+edx] ; ref
344    pavgb mm5, [esi+edx] ; ref2    pavgb mm5, [esi+edx] ; ref2
345      movq [eax+edx], mm5
346    
347    movq mm6, mm4    movq mm6, mm4
348    punpcklbw mm4, mm7    punpcklbw mm4, mm7

Legend:
Removed from v.1.9.2.1  
changed lines
  Added in v.1.13

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4