Annotation of researchv8dc/cmd/trace/trace6.c, revision 1.1.1.1

1.1       root        1: #include <stdio.h>
                      2: #include "trace.h"
                      3: #include "trace.d"
                      4: 
                      5:  extern int  *processes, *state, nrprocs, nrtbl;
                      6:  extern char mask[MAXPROC], althash;
                      7:  extern struct TBL *tbl;
                      8: 
                      9:  short *Factor;
                     10:  short maxr = 0;
                     11: 
                     12: inihash()
                     13: { register int i;
                     14:   char *Smalloc();
                     15: 
                     16:        for (i = 0; i < nrtbl; i++)
                     17:                if (tbl[i].nrrows > maxr)
                     18:                        maxr = tbl[i].nrrows;
                     19: 
                     20:        Factor = (short *)
                     21:                Smalloc(maxr * sizeof(short));
                     22: 
                     23:        for (i = 0; i < maxr; i++)
                     24:                Factor[i] = rand()%NOTOOBIG;    /* number between 0 and 16k */
                     25: }
                     26: 
                     27: hashvalue()
                     28: { register int i, h;
                     29: 
                     30:        for (i = h = 0; i < nrprocs; i++)
                     31:        {       if (mask[i])
                     32:                        continue;
                     33:                h = ((h << 2) | (h >> 13));     /* rotate */
                     34:                h ^= Factor[state[i]] ^ Factor[processes[i]];
                     35:        }
                     36: 
                     37:        return (h & NOTOOBIG);  /* return value will be stored in a short */
                     38: }

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.