# HG changeset patch # User vitor # Date 1211387779 0 # Node ID bf3bc36715e60ed014c7f70d0d3f7fe94d30be25 # Parent 37464a7b3f59626c0d5ca6e2aed72d8991a4923a Simplify ra144_decode_frame() by unrolling a senseless loop. Thanks mkhdor for suggesting this patch. diff -r 37464a7b3f59 -r bf3bc36715e6 ra144.c --- a/ra144.c Wed May 21 16:33:49 2008 +0000 +++ b/ra144.c Wed May 21 16:36:19 2008 +0000 @@ -401,25 +401,14 @@ val = decodeval[get_bits(&gb, 5) << 1]; // Useless table entries? a = t_sqrt(val*glob->oldval) >> 12; - for (c=0; c < NBLOCKS; c++) { - if (c == (NBLOCKS - 1)) { - dec1(glob, glob->swapbuf1, glob->swapbuf2, 3, val); - } else { - if (c * 2 == (NBLOCKS - 2)) { - if (glob->oldval < val) { - dec2(glob, glob->swapbuf1, glob->swapbuf2, 3, a, glob->swapbuf2alt, c); - } else { - dec2(glob, glob->swapbuf1alt, glob->swapbuf2alt, 3, a, glob->swapbuf2, c); - } - } else { - if (c * 2 < (NBLOCKS - 2)) { - dec2(glob, glob->swapbuf1alt, glob->swapbuf2alt, 3, glob->oldval, glob->swapbuf2, c); - } else { - dec2(glob, glob->swapbuf1, glob->swapbuf2, 3, val, glob->swapbuf2alt, c); - } - } - } + dec2(glob, glob->swapbuf1alt, glob->swapbuf2alt, 3, glob->oldval, glob->swapbuf2, 0); + if (glob->oldval < val) { + dec2(glob, glob->swapbuf1, glob->swapbuf2, 3, a, glob->swapbuf2alt, 1); + } else { + dec2(glob, glob->swapbuf1alt, glob->swapbuf2alt, 3, a, glob->swapbuf2, 1); } + dec2(glob, glob->swapbuf1, glob->swapbuf2, 3, val, glob->swapbuf2alt, 2); + dec1(glob, glob->swapbuf1, glob->swapbuf2, 3, val); /* do output */ for (b=0, c=0; c<4; c++) {