[SCM] libav/experimental: x86: fix overflow in h264 8x8 planar prediction

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 17:22:36 UTC 2013


The following commit has been merged in the experimental branch:
commit 80944df720da98d6e5ee0e355db5814735914ec9
Author: Mans Rullgard <mans at mansr.com>
Date:   Mon Jan 24 23:24:28 2011 +0000

    x86: fix overflow in h264 8x8 planar prediction
    
    Signed-off-by: Mans Rullgard <mans at mansr.com>

diff --git a/libavcodec/x86/h264_intrapred.asm b/libavcodec/x86/h264_intrapred.asm
index dbe6b8a..28c2f39 100644
--- a/libavcodec/x86/h264_intrapred.asm
+++ b/libavcodec/x86/h264_intrapred.asm
@@ -637,10 +637,6 @@ cglobal pred8x8_plane_%1, 2, 7, %2
 %endif
     paddw        m0, m1           ; sum of H coefficients
 
-    pmullw       m0, [pw_17]
-    paddw        m0, [pw_16]
-    psraw        m0, 5
-
     lea          r4, [r0+r2*4-1]
     lea          r3, [r0     -1]
     add          r4, r2
@@ -694,6 +690,10 @@ cglobal pred8x8_plane_%1, 2, 7, %2
     shl          r3, 4
     movd        r1d, m0
     movsx       r1d, r1w
+    imul        r1d, 17
+    add         r1d, 16
+    sar         r1d, 5
+    movd         m0, r1d
     add         r1d, r5d
     sub         r3d, r1d
     add         r1d, r1d

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list