pyfec: remove (optimize) unused code
authorZooko O'Whielacronx <zooko@zooko.com>
Sat, 27 Jan 2007 03:10:28 +0000 (20:10 -0700)
committerZooko O'Whielacronx <zooko@zooko.com>
Sat, 27 Jan 2007 03:10:28 +0000 (20:10 -0700)
pyfec/fec/fec.c
pyfec/fec/fec.h

index bfe5a70dc7f3ffcb655163fcbb90924206fba79b..485fb1dfb91139f052535db24e3f98483b13981b 100644 (file)
@@ -584,40 +584,17 @@ fec_encode(const fec_t* code, const gf*restrict const*restrict const src, gf*res
     unsigned i, j;
     unsigned char fecnum;
     gf* p;
-    unsigned fecs_ix = 0; /* index into the fecs array */
 
     for (i=0; i<num_share_ids; i++) {
         fecnum=share_ids[i];
-        if (fecnum >= code->k) {
-            memset(fecs[fecs_ix], 0, sz);
-            p = &(code->enc_matrix[fecnum * code->k]);
-            for (j = 0; j < code->k; j++)
-                addmul (fecs[fecs_ix], src[j], p[j], sz);
-            fecs_ix++;
-        }
+        assert (fecnum >= code->k);
+        memset(fecs[i], 0, sz);
+        p = &(code->enc_matrix[fecnum * code->k]);
+        for (j = 0; j < code->k; j++)
+            addmul (fecs[i], src[j], p[j], sz);
     }
 }
 
-#if 0
-/* By turning the nested loop inside out, we might incur different cache usage and therefore go slower or faster.  However in practice I'm not able to detect a difference, since >90% of the time is spent in my Python test script anyway.  :-) */
-void
-fec_encode(const fec_t* code, const gf*restrict const*restrict const src, gf*restrict const*restrict const fecs, const unsigned char*restrict const share_ids, unsigned char num_share_ids, size_t sz) {
-    for (unsigned j=0; j < code->k; j++) {
-        unsigned fecs_ix = 0; /* index into the fecs array */
-        for (unsigned i=0; i<num_share_ids; i++) {
-            unsigned char fecnum=share_ids[i];
-            if (fecnum >= code->k) {
-                if (j == 0)
-                    memset(fecs[fecs_ix], 0, sz);
-                gf* p = &(code->enc_matrix[fecnum * code->k]);
-                addmul (fecs[fecs_ix], src[j], p[j], sz);
-                fecs_ix++;
-            }
-        }
-    }
-}
-#endif
-
 /**
  * Build decode matrix into some memory space.
  *
index b17999cd56b03798f9080dd8268c5b596e5f3d32..d9056dc916205662e967601fc256cf56600c7071 100644 (file)
  * OF SUCH DAMAGE.
  */
 
-/*
- * If you get a error returned (negative value) from a fec_* function, 
- * look in here for the error message.
- */
-
-extern char fec_error[];
-
 typedef unsigned char gf;
 
 typedef struct {