Need assembly-language routines for

1) Copy packet with vector operations

   memcpy( void *dest, void *src, int len );
   len can be a multiple of 8 bytes (or 4 or 16) if necessary

2) Set integer field with vector operations

   int *ready;
   "sync writes" (complete all pending hardware writes; these were 
                  made with (1) above)
   *ready = 1;

   and 

   *ready = 0;

3) Read/test integer field with vector operations

   (*ready == 1)

4) Read/test integer vector with vector operations

    int *ready;
    int *mask, i, n;
    for (i=0; i<n; i++)
        mask[i] = ( ready[i] == 1);

    

    