[svn] / branches / release-1_2-branch / xvidcore / src / quant / x86_asm / quantize_h263_3dne.asm Repository:
ViewVC logotype

Diff of /branches/release-1_2-branch/xvidcore/src/quant/x86_asm/quantize_h263_3dne.asm

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

revision 1866, Thu May 28 14:15:53 2009 UTC revision 1867, Thu May 28 15:04:35 2009 UTC
# Line 19  Line 19 
19  ; *  along with this program ; if not, write to the Free Software  ; *  along with this program ; if not, write to the Free Software
20  ; *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA  ; *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
21  ; *  ; *
22  ; * $Id: quantize_h263_3dne.asm,v 1.9.2.1 2009-05-28 08:42:37 Isibaar Exp $  ; * $Id: quantize_h263_3dne.asm,v 1.9.2.2 2009-05-28 15:04:35 Isibaar Exp $
23  ; *  ; *
24  ; *************************************************************************/  ; *************************************************************************/
25  ;  ;
# Line 344  Line 344 
344  %endif  %endif
345    
346    push _EBX    push _EBX
347    mov _EBX, mmzero    lea _EBX, [mmzero]
348    push _EDI    push _EDI
349    jz near .q1loop    jz near .q1loop
350    
# Line 753  Line 753 
753    lea _EDI, [mmx_mul + _EAX*8 - 8]    ; 2*quant    lea _EDI, [mmx_mul + _EAX*8 - 8]    ; 2*quant
754  %endif  %endif
755    push _EBP    push _EBP
756    mov _EBX, mmx_2047    lea _EBX, [mmx_2047]
757    movsx _EBP, word [_ECX]    movsx _EBP, word [_ECX]
758  %ifdef ARCH_IS_X86_64  %ifdef ARCH_IS_X86_64
759    lea r9, [mmx_add]    lea r9, [mmx_add]
# Line 762  Line 762 
762    lea _EAX, [mmx_add + _EAX*8 - 8]    ; quant or quant-1    lea _EAX, [mmx_add + _EAX*8 - 8]    ; quant or quant-1
763  %endif  %endif
764    push _ESI    push _ESI
765    mov _ESI, mmzero    lea _ESI, [mmzero]
766    pxor mm7, mm7    pxor mm7, mm7
767    movq mm3, [_ECX+120]               ;B2 ; c  = coeff[i]    movq mm3, [_ECX+120]               ;B2 ; c  = coeff[i]
768    pcmpeqw mm7, [_ECX+120]            ;B6 (c ==0) ? -1 : 0 (1st)    pcmpeqw mm7, [_ECX+120]            ;B6 (c ==0) ? -1 : 0 (1st)
# Line 876  Line 876 
876  %else  %else
877    lea _EDI, [mmx_mul + _EAX*8 - 8]    ; 2*quant    lea _EDI, [mmx_mul + _EAX*8 - 8]    ; 2*quant
878  %endif  %endif
879    mov _EBX, mmx_2047    lea _EBX, [mmx_2047]
880    pxor mm7, mm7    pxor mm7, mm7
881    movq mm3, [_ECX+120]               ;B2 ; c  = coeff[i]    movq mm3, [_ECX+120]               ;B2 ; c  = coeff[i]
882    pcmpeqw mm7, [_ECX+120]            ;B6 (c ==0) ? -1 : 0 (1st)    pcmpeqw mm7, [_ECX+120]            ;B6 (c ==0) ? -1 : 0 (1st)
# Line 887  Line 887 
887    lea _EAX, [mmx_add + _EAX*8 - 8]    ; quant or quant-1    lea _EAX, [mmx_add + _EAX*8 - 8]    ; quant or quant-1
888  %endif  %endif
889    psubw mm2, mm3                    ;-c ;B3 (1st dep)    psubw mm2, mm3                    ;-c ;B3 (1st dep)
890    mov _ESI, mmzero    lea _ESI, [mmzero]
891    pmaxsw mm2, mm3                   ;|c|        ;B4 (2nd)    pmaxsw mm2, mm3                   ;|c|        ;B4 (2nd)
892    pmullw mm2, [_EDI]                 ;*= 2Q      ;B8 (3rd+)    pmullw mm2, [_EDI]                 ;*= 2Q      ;B8 (3rd+)
893    psraw mm3, 15                     ; sign(c)   ;B7 (2nd)    psraw mm3, 15                     ; sign(c)   ;B7 (2nd)

Legend:
Removed from v.1866  
changed lines
  Added in v.1867

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