[XviD-devel] [CVS Commit] Fixed quant4_intra_xmm and quant_intra_3dne bug for DC<0.

Edouard Gomez ed.gomez at free.fr
Thu Jul 17 02:04:14 CEST 2003


2003-07-16 22:57:44 GMT	Edouard Gomez <ed.gomez at free.fr>	patch-8

    Summary:
      Fixed quant4_intra_xmm and quant_intra_3dne bug for DC<0.
    Revision:
      xvidcore--devapi4--1.0--patch-8

    These two functions were suffering the same error that consists in
    emulating idiv with some an inversed divisor array and an imul
    instruction followed by a right shift...
    
    That was always decreasing the ressult by 1 for negative DC values.
    A not so bad solution is simply to use a cmov instruction and choose
    the right value according to the DC value. As these function were
    for PIII and Athlon, we are sure we can use the cmov instruction.
    
    PS: the fix is somewhere in cosmetic changes... sorry but the code was
    too ugly to fix it like it was.

    modified files:
     ./src/quant/x86_asm/quantize4_xmm.asm
     ./src/quant/x86_asm/quantize_3dne.asm

-- 
Edouard Gomez


More information about the XviD-devel mailing list