[cvs] / xvidcore / src / quant / x86_asm / quantize_h263_3dne.asm Repository:
ViewVC logotype

Diff of /xvidcore/src/quant/x86_asm/quantize_h263_3dne.asm

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

revision 1.4, Sun Aug 22 11:46:10 2004 UTC revision 1.8, Tue Nov 11 20:46:24 2008 UTC
# Line 34  Line 34 
34  %macro cglobal 1  %macro cglobal 1
35          %ifdef PREFIX          %ifdef PREFIX
36                  %ifdef MARK_FUNCS                  %ifdef MARK_FUNCS
37                          global _%1:function                          global _%1:function %1.endfunc-%1
38                          %define %1 _%1:function                          %define %1 _%1:function %1.endfunc-%1
39                            %define ENDFUNC .endfunc
40                  %else                  %else
41                          global _%1                          global _%1
42                          %define %1 _%1                          %define %1 _%1
43                            %define ENDFUNC
44                  %endif                  %endif
45          %else          %else
46                  %ifdef MARK_FUNCS                  %ifdef MARK_FUNCS
47                          global %1:function                          global %1:function %1.endfunc-%1
48                            %define ENDFUNC .endfunc
49                  %else                  %else
50                          global %1                          global %1
51                            %define ENDFUNC
52                  %endif                  %endif
53          %endif          %endif
54  %endmacro  %endmacro
# Line 377  Line 381 
381    
382  ALIGN 16  ALIGN 16
383    
384  .q1loop  .q1loop:
385    quant_intra1 0    quant_intra1 0
386    mov ebp, [esp + 16 + 16]          ; dcscalar    mov ebp, [esp + 16 + 16]          ; dcscalar
387    movsx eax, word [byte ecx]        ; DC    movsx eax, word [byte ecx]        ; DC
# Line 396  Line 400 
400    
401    quant_intra1 3    quant_intra1 3
402    psubw mm5, mm4                    ;C8    psubw mm5, mm4                    ;C8
403    mov esi, [dword esp + 12]         ; pop back the register value    mov esi, [esp + 12]         ; pop back the register value
404    mov edi, [esp + 4]                ; pop back the register value    mov edi, [esp + 4]                ; pop back the register value
405    sar eax, 16    sar eax, 16
406    lea ebx, [byte eax + 1]           ; workaround for eax < 0    lea ebx, [byte eax + 1]           ; workaround for eax < 0
# Line 410  Line 414 
414    
415    xor eax, eax    xor eax, eax
416    ret    ret
417    ENDFUNC
418    
419    
420    
# Line 545  Line 550 
550    ret    ret
551    
552  ALIGN 16  ALIGN 16
553  .q1loop  .q1loop:
554    movq mm6, [byte ebx]    movq mm6, [byte ebx]
555    
556    quantinter1 0    quantinter1 0
# Line 566  Line 571 
571    pop ebx    pop ebx
572    
573    ret    ret
574    ENDFUNC
575    
576  ;-----------------------------------------------------------------------------  ;-----------------------------------------------------------------------------
577  ;  ;
# Line 717  Line 723 
723    
724    xor eax, eax    xor eax, eax
725    ret    ret
726    ENDFUNC
727    
728  ;-----------------------------------------------------------------------------  ;-----------------------------------------------------------------------------
729  ;  ;
# Line 752  Line 759 
759    pmaxsw mm2, mm3                   ;|c|        ;B4 (2nd)    pmaxsw mm2, mm3                   ;|c|        ;B4 (2nd)
760    pmullw mm2, [edi]                 ;*= 2Q      ;B8 (3rd+)    pmullw mm2, [edi]                 ;*= 2Q      ;B8 (3rd+)
761    psraw mm3, 15                     ; sign(c)   ;B7 (2nd)    psraw mm3, 15                     ; sign(c)   ;B7 (2nd)
762    mov edx, [dword esp+ 4+12]        ; data    mov edx, [esp+ 4+12]        ; data
763    
764  ALIGN 8  ALIGN 8
765    
# Line 779  Line 786 
786    
787    xor eax, eax    xor eax, eax
788    ret    ret
789    ENDFUNC
790    
791    
792    %ifidn __OUTPUT_FORMAT__,elf
793    section ".note.GNU-stack" noalloc noexec nowrite progbits
794    %endif
795    

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.8

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