[JSC] Clean up Object.entries implementation
[WebKit-https.git] / JSTests / microbenchmarks / switch-string-basic-var.js
1 function foo(x) {
2     switch (x) {
3     case "aaa": return 1;
4     case "aab": return 2;
5     case "aac": return 3;
6     case "baaa": return 4;
7     case "baab": return 5;
8     case "baac": return 6;
9     case "caaaa": return 7;
10     case "caaab": return 8;
11     case "caaac": return 9;
12     default: return 10;
13     }
14 }
15
16 function make(pre, post) { return pre + "a" + post; }
17
18 var strings = [make("a", "a"), make("a", "b"), make("a", "c"), make("b", "aa"), make("b", "ab"), make("b", "ac"), make("c", "aaa"), make("c", "aab"), make("c", "aac"), make("a", "d"), make("b", "ad"), make("c", "aad"), "d", make("d", "a")];
19
20 var result = 0;
21 for (var i = 0; i < 1000000; ++i)
22     result += foo(strings[i % strings.length]);
23
24 if (result != 6785696)
25     throw "Bad result: " + result;