[FFmpeg-devel] [PATCH] 'j_rev_dct_ARM' bugfix

Siarhei Siamashka siarhei.siamashka
Wed Nov 12 02:17:20 CET 2008


Hi,

This is a bugfix for ARMv4 assembly implementation of 'j_rev_dct' function.

The problem was in the incorrect partially empty row detection. Even if the
first two coefficients in the row were nonzero, it handled this just like the 
case with only the first nonzero coefficient.

Now this function produces exactly the same output as the stripped down
reference C version of 'j_rev_dct' (with the nested checks like 'if (d6) { if
(d2) { ...' always evaluated as true, avoiding shortcut branches).

This function has some obviously redundant instructions and poorly scheduled
parts, not to mention that it could also get '_add' and '_put' variants in
order to improve performance. But for now the patch is strictly bugfix only.

-- 
Best regards,
Siarhei Siamashka
-------------- next part --------------
A non-text attachment was scrubbed...
Name: jrevdct_arm_fix.diff
Type: text/x-diff
Size: 1238 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20081112/c66de424/attachment.diff>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20081112/c66de424/attachment.pgp>



More information about the ffmpeg-devel mailing list