Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2026-04-09 07:49:30

0001 // name=sbibit ; gcc $name.cc -std=c++11 -lstdc++ -o /tmp/$name && /tmp/$name
0002 
0003 #include <cassert>
0004 #include <cstdio>
0005 #include "sbibit.h"
0006 
0007 int main(int argc, char** argv)
0008 {
0009     for(unsigned a=0 ; a < 4 ; a++)
0010     for(unsigned b=0 ; b < 4 ; b++)
0011     for(unsigned c=0 ; c < 4 ; c++)
0012     for(unsigned d=0 ; d < 4 ; d++)
0013     {
0014          unsigned char packed = sbibit_PACK4(a, b, c, d); 
0015 
0016          unsigned a1 = sbibit_UNPACK4_0(packed) ; 
0017          unsigned b1 = sbibit_UNPACK4_1(packed) ; 
0018          unsigned c1 = sbibit_UNPACK4_2(packed) ; 
0019          unsigned d1 = sbibit_UNPACK4_3(packed) ; 
0020  
0021          assert( a == a1 ); 
0022          assert( b == b1 ); 
0023          assert( c == c1 ); 
0024          assert( d == d1 ); 
0025 
0026          printf(" a %d b %d c %d d %d \n", a,b,c,d); 
0027 
0028     }
0029     return 0 ; 
0030 }