307 static word s_CMasks6[3] = {
312 static int bit_count[256] = {
313 0,1,1,2,1,2,2,3,1,2,2,3,2,3,3,4,1,2,2,3,2,3,3,4,2,3,3,4,3,4,4,5,
314 1,2,2,3,2,3,3,4,2,3,3,4,3,4,4,5,2,3,3,4,3,4,4,5,3,4,4,5,4,5,5,6,
315 1,2,2,3,2,3,3,4,2,3,3,4,3,4,4,5,2,3,3,4,3,4,4,5,3,4,4,5,4,5,5,6,
316 2,3,3,4,3,4,4,5,3,4,4,5,4,5,5,6,3,4,4,5,4,5,5,6,4,5,5,6,5,6,6,7,
317 1,2,2,3,2,3,3,4,2,3,3,4,3,4,4,5,2,3,3,4,3,4,4,5,3,4,4,5,4,5,5,6,
318 2,3,3,4,3,4,4,5,3,4,4,5,4,5,5,6,3,4,4,5,4,5,5,6,4,5,5,6,5,6,6,7,
319 2,3,3,4,3,4,4,5,3,4,4,5,4,5,5,6,3,4,4,5,4,5,5,6,4,5,5,6,5,6,6,7,
320 3,4,4,5,4,5,5,6,4,5,5,6,5,6,6,7,4,5,5,6,5,6,6,7,5,6,6,7,6,7,7,8
324 for ( i = 0; i < 256; i++, printf(
" },\n{ ") )
325 for ( k = 0; k < 32; k++ )
327 printf(
"ABC_CONST(0x0%d", bit_count[i] );
328 for ( c = 3; c >= 0; c-- )
329 printf(
"0%d", (((k >> c) & 1) == 0) * bit_count[i] );
330 for ( c = 2; c >= 0; c-- )
331 printf(
"0%d", bit_count[s_CMasks6[c] & i] );
332 printf(
")%s", k == 31 ?
"":
", " );