diff --git a/src/singeli/src/base.singeli b/src/singeli/src/base.singeli index 1319486b..fb002cd8 100644 --- a/src/singeli/src/base.singeli +++ b/src/singeli/src/base.singeli @@ -1,5 +1,6 @@ include 'skin/c' include 'arch/c' +include 'util/kind' oper ~~ reinterpret infix right 55 def Size = u64 @@ -12,8 +13,8 @@ def cdiv{a,b} = (a+b-1)/b def lb{n & knum{n} & (n>>1<<1) == n & n>0} = lb{n>>1}+1 def lb{n==1} = 0 -def tail{n,x} = x - (x>>n << n) # get the n least significant bits -def bit {k,x} = tail{1,x>>k} << k # get the k-th bit +def tail{n,x} = x & ((1<