921e5a0eb4
From-SVN: r14840
46 lines
860 B
C
46 lines
860 B
C
|
|
byte_match_count2 (buf, n, xm, m1, m2, m3, m4)
|
|
unsigned *buf;
|
|
unsigned n;
|
|
unsigned xm;
|
|
unsigned m1, m2, m3, m4;
|
|
{
|
|
unsigned w, cnt = 0;
|
|
unsigned *bp;
|
|
|
|
n /= 4;
|
|
|
|
bp = buf;
|
|
while (bp < buf + n)
|
|
{
|
|
w = *bp++;
|
|
w ^= xm;
|
|
cnt += ((m1 & w) == 0);
|
|
cnt += ((m2 & w) == 0);
|
|
cnt += ((m3 & w) == 0);
|
|
cnt += ((m4 & w) == 0);
|
|
|
|
w = *bp++;
|
|
w ^= xm;
|
|
cnt += ((m1 & w) == 0);
|
|
cnt += ((m2 & w) == 0);
|
|
cnt += ((m3 & w) == 0);
|
|
cnt += ((m4 & w) == 0);
|
|
|
|
w = *bp++;
|
|
w ^= xm;
|
|
cnt += ((m1 & w) == 0);
|
|
cnt += ((m2 & w) == 0);
|
|
cnt += ((m3 & w) == 0);
|
|
cnt += ((m4 & w) == 0);
|
|
|
|
w = *bp++;
|
|
w ^= xm;
|
|
cnt += ((m1 & w) == 0);
|
|
cnt += ((m2 & w) == 0);
|
|
cnt += ((m3 & w) == 0);
|
|
cnt += ((m4 & w) == 0);
|
|
}
|
|
return cnt;
|
|
}
|