Sha256: c2ea4a0eba959cd2624df07a0d144979c80b45c5e29deb38df32cb0354d28f34

Contents?: true

Size: 431 Bytes

Versions: 5

Compression:

Stored size: 431 Bytes

Contents

// Copyright (c) 2004 by Arthur Langereis (arthur_ext at domain xfinitegames, tld com)


// 1 op = 2 assigns, 16 compare/branches, 8 ANDs, (0-8) ADDs, 8 SHLs
// O(n)
function bitsinbyte(b) {
var m = 1, c = 0;
while(m<0x100) {
if(b & m) c++;
m <<= 1;
}
return c;
}

var ret = 0;
function TimeFunc(func) {
var x, y, t;
for(var x=0; x<350; x++)
for(var y=0; y<256; y++) 
  ret += func(y);
}

TimeFunc(bitsinbyte);
print(ret == 358400)

Version data entries

5 entries across 5 versions & 2 rubygems

Version Path
johnson-2.0.0.pre0 vendor/tracemonkey/correct/check-bitops-bits-in-byte.js
smparkes-johnson-1.1.2.6 vendor/tracemonkey/correct/check-bitops-bits-in-byte.js
smparkes-johnson-1.1.2.5 vendor/tracemonkey/correct/check-bitops-bits-in-byte.js
smparkes-johnson-1.1.2.4 vendor/tracemonkey/correct/check-bitops-bits-in-byte.js
smparkes-johnson-1.1.2.3 vendor/tracemonkey/correct/check-bitops-bits-in-byte.js