changeset 7363:d346c4da00bd libavcodec

Simplify co(), use memcpy/memmove and colmult() when useful.
author vitor
date Thu, 24 Jul 2008 03:19:52 +0000
parents 443fdc440854
children 907d3376da93
files ra288.c
diffstat 1 files changed, 4 insertions(+), 8 deletions(-) [+]
line wrap: on
line diff
--- a/ra288.c	Thu Jul 24 00:45:18 2008 +0000
+++ b/ra288.c	Thu Jul 24 03:19:52 2008 +0000
@@ -141,19 +141,15 @@
                float *st2, const float *table)
 {
     unsigned int x;
-    const float *fp;
     float buffer1[37];
     float buffer2[37];
     float work[111];
 
     /* rotate and multiply */
-    fp = st1 + i;
-    for (x=0; x < n + i + j; x++) {
-        if (x == n + j)
-            fp=in;
-        st1[x] = *(fp++);
-        work[x] = table[x] * st1[x];
-    }
+    memmove(st1        , st1 + i, (n + j)*sizeof(*st1));
+    memcpy (st1 + n + j, in     , i      *sizeof(*st1));
+
+    colmult(work, table, st1, n + i + j);
 
     prodsum(buffer1, work + n    , i, n);
     prodsum(buffer2, work + n + i, j, n);