Imported Upstream version 1.0.0
[platform/upstream/js.git] / js / src / metrics / jint / sunspider / bitops-bits-in-byte.js
1 // Copyright (c) 2004 by Arthur Langereis (arthur_ext at domain xfinitegames, tld com)
2
3
4 // 1 op = 2 assigns, 16 compare/branches, 8 ANDs, (0-8) ADDs, 8 SHLs
5 // O(n)
6 function bitsinbyte(b) {
7 var m = 1, c = 0;
8 /* BEGIN LOOP */
9 while(m<0x100) {
10 if(b & m) c++;
11 m <<= 1;
12 }
13 /* END LOOP */
14 return c;
15 }
16
17 function TimeFunc(func) {
18 var x, y, t;
19 /* BEGIN LOOP */
20 for(var x=0; x<350; x++) {
21 /* BEGIN LOOP */
22 for(var y=0; y<256; y++) func(y);
23 /* END LOOP */
24 }
25 /* END LOOP */
26 }
27
28 TimeFunc(bitsinbyte);