Get rid of forward exit on DoubleAsInt32
[WebKit-https.git] / PerformanceTests / SunSpider / ChangeLog
1 2013-12-10  Filip Pizlo  <fpizlo@apple.com>
2
3         Get rid of forward exit on DoubleAsInt32
4         https://bugs.webkit.org/show_bug.cgi?id=125552
5
6         Reviewed by Oliver Hunt.
7         
8         Use SunSpider as a kind of spot-check for the
9         no-architecture-specific-optimization paths in the compiler.
10
11         * no-architecture-specific-optimizations.yaml: Added.
12
13 2013-10-08  Geoffrey Garen  <ggaren@apple.com>
14
15         Refined power management in SunSpider 1.0.2
16         https://bugs.webkit.org/show_bug.cgi?id=122525
17
18         Reviewed by Gavin Barraclough.
19
20         * hosted/sunspider.css:
21         (#frameparent):
22         (#countdown):
23         * resources/TEMPLATE.html: Provide an explicit countdown element in the
24         parent, instead of hacking it into each child frame.
25
26         * resources/driver-TEMPLATE.html: Be more explicit about how we respond
27         to power management. Just moving setTimeout(0) inside the loop is a
28         little too subtle, and may not work across browsers.
29
30         Also, leave a little extra time after changing the countdown graphic,
31         to give the browser some time to paint.
32
33 2013-10-02  Geoffrey Garen  <ggaren@apple.com>
34
35         Improved painting behavior in SunSpider 1.0.2
36         https://bugs.webkit.org/show_bug.cgi?id=122257
37
38         Reviewed by Oliver Hunt.
39
40         Individual test names with times was a good painting strategy years
41         back, when each benchmark took hundreds of milliseconds to run. Now,
42         the whole suite can finish in a a few hundres milliseconds, and things
43         look pretty flashy.
44
45         Instead, display a countdown that indicates which iteration of the
46         test we're on.
47
48         * resources/TEMPLATE.html: Work around a bug in Firefox by specifying
49         our style inside the .html file instead of in an external stylesheet.
50         Under heavy JavaScript load, Firefox neglects to apply external
51         stylesheets -- probably due to a starved timer.
52         
53         * resources/driver-TEMPLATE.html: Delay a little between runs to ensure
54         that our countdown has enough time to paint.
55
56 2013-09-26  Geoffrey Garen  <ggaren@apple.com>
57
58         Fixed a version number string in SunSpider 1.0.2
59         https://bugs.webkit.org/show_bug.cgi?id=122004
60
61         Reviewed by Gavin Barraclough.
62
63         * resources/driver-TEMPLATE.html:
64         * resources/results-TEMPLATE.html: 1.0.2!
65
66 2013-09-26  Geoffrey Garen  <ggaren@apple.com>
67
68         Tentative SunSpider 1.0.2
69         https://bugs.webkit.org/show_bug.cgi?id=122002
70
71         Reviewed by Gavin Barraclough.
72
73         Be even more aggressive about asking for zero delay between tests by
74         setting a timeout at the beginning of a test instead of the end. This is
75         another step toward reducing noise -- particularly noise caused by
76         power management -- just like the step down from 10ms to 0ms.
77
78         Browsers typically put a 4ms floor on timers. The sooner we set
79         our timer, the sooner it will fire.
80
81         * make-hosted:
82         * resources/driver-TEMPLATE.html: Changed the driver to set the timeout
83         earlier.
84         * tests/sunspider-1.0.2: Added. These tests are unchanged from 1.0.1.
85
86 2013-09-09  Filip Pizlo  <fpizlo@apple.com>
87
88         Stress tests should test the jsc profiler (-p)
89         https://bugs.webkit.org/show_bug.cgi?id=121043
90
91         Reviewed by Mark Hahnenberg.
92         
93         Add a jsc-stress-test that tries to profile SunSpider.
94
95         * profiler-test.yaml: Added.
96
97 2013-08-08  Cosmin Truta  <ctruta@blackberry.com>
98
99         SunSpider: Move the 3d-morph fix from version 1.0 to version 1.0.1
100         https://bugs.webkit.org/show_bug.cgi?id=117993
101
102         Reviewed by George Staikos.
103
104         Bump the SunSpider version to 1.0.1.
105
106         Unroll r149548 in order to restore version 1.0 to its original,
107         and add the 3d-morph fix to version 1.0.1 instead.
108
109         * hosted/sunspider.html: Updated to version 1.0.1.
110         * hosted/versions.html: Updated to version 1.0.1.
111         * make-hosted: Added support for version 1.0.1.
112         * resources/driver-TEMPLATE.html: Updated to version 1.0.1.
113         * resources/results-TEMPLATE.html: Updated to version 1.0.1.
114         * sunspider: Updated to version 1.0.1.
115         * sunspider-compare-results: Updated to version 1.0.1.
116         * tests/sunspider-1.0/3d-morph.js: Rolled back to the original version.
117         * tests/sunspider-1.0.1/LIST: Added.
118         * tests/sunspider-1.0.1/3d-cube.js: Added.
119         * tests/sunspider-1.0.1/3d-morph.js: Added.
120         * tests/sunspider-1.0.1/3d-raytrace.js: Added.
121         * tests/sunspider-1.0.1/access-binary-trees.js: Added.
122         * tests/sunspider-1.0.1/access-fannkuch.js: Added.
123         * tests/sunspider-1.0.1/access-nbody.js: Added.
124         * tests/sunspider-1.0.1/access-nsieve.js: Added.
125         * tests/sunspider-1.0.1/bitops-3bit-bits-in-byte.js: Added.
126         * tests/sunspider-1.0.1/bitops-bits-in-byte.js: Added.
127         * tests/sunspider-1.0.1/bitops-bitwise-and.js: Added.
128         * tests/sunspider-1.0.1/bitops-nsieve-bits.js: Added.
129         * tests/sunspider-1.0.1/controlflow-recursive.js: Added.
130         * tests/sunspider-1.0.1/crypto-aes.js: Added.
131         * tests/sunspider-1.0.1/crypto-md5.js: Added.
132         * tests/sunspider-1.0.1/crypto-sha1.js: Added.
133         * tests/sunspider-1.0.1/date-format-tofte.js: Added.
134         * tests/sunspider-1.0.1/date-format-xparb.js: Added.
135         * tests/sunspider-1.0.1/math-cordic.js: Added.
136         * tests/sunspider-1.0.1/math-partial-sums.js: Added.
137         * tests/sunspider-1.0.1/math-spectral-norm.js: Added.
138         * tests/sunspider-1.0.1/regexp-dna.js: Added.
139         * tests/sunspider-1.0.1/string-base64.js: Added.
140         * tests/sunspider-1.0.1/string-fasta.js: Added.
141         * tests/sunspider-1.0.1/string-tagcloud.js: Added.
142         * tests/sunspider-1.0.1/string-unpack-code.js: Added.
143         * tests/sunspider-1.0.1/string-validate-input.js: Added.
144
145 2013-05-03  Cosmin Truta  <ctruta@blackberry.com>
146
147         SunSpider 1.0: 3d-morph: use epsilon to check result
148         https://bugs.webkit.org/show_bug.cgi?id=115553
149
150         Reviewed by George Staikos.
151
152         SunSpider/3d-morph should be more lenient in validating its results, since they depend on Math.sin, which isn't formally specified.
153
154         * tests/sunspider-1.0/3d-morph.js:
155
156 2013-04-19  Filip Pizlo  <fpizlo@apple.com>
157
158         SunSpider/string-tagcloud should be more lenient in validating its results, since they depend on Math.log, which isn't formally specified
159         https://bugs.webkit.org/show_bug.cgi?id=114895
160
161         Reviewed by Michael Saboff.
162
163         * tests/sunspider-1.0/string-tagcloud.js:
164
165 2013-04-18  Filip Pizlo  <fpizlo@apple.com>
166
167         Whenever it is cheap and non-invasive, SunSpider tests should validate their results to ensure that the browser runs them correctly
168         https://bugs.webkit.org/show_bug.cgi?id=114852
169
170         Reviewed by Geoffrey Garen.
171         
172         This adds low-overhead checking of the results of each SunSpider tests. This is not
173         meant to be an exhaustive test that everything was executed correctly, but rather a
174         simple sanity check that will catch glaring mistakes. The philosophy here is that we're
175         not trying to prevent all forms of cheating, or that we're trying to prove the
176         browser's correctness. Moreover, these checks are meant to incur minimal overhead;
177         they currently clock in at <2% slow-down in SunSpider 1.0.
178         
179         The test expectations were generated using the LLInt on command-line, and I've verified
180         that Firefox 20, Chrome 26, IE 10, Safari 6, and ToT with all of the JITs agree. Note
181         that some tests cannot be precisely validated because they use Math functions, which
182         ECMAScript chooses to not formally specify - those functions like sin() and friends are
183         allowed to return implementation-dependent results. Also some tests cannot be validated
184         at all because their behavior is either intentionally random or is timezone-dependent.
185         But 23 out of 26 tests now have some kind of validation.
186         
187         I've updated the harnesses to show erroneous runs when displaying results.
188
189         * resources/TEMPLATE.html:
190         * resources/driver-TEMPLATE.html:
191         * resources/sunspider-analyze-results.js:
192         (formatResult):
193         (resultLine):
194         (printOutput):
195         * resources/sunspider-compare-results.js:
196         (.formatMean):
197         (.resultLine):
198         (.printOutput):
199         (sunspiderCompareResults):
200         * resources/sunspider-standalone-driver.js:
201         * tests/sunspider-1.0/3d-cube.js:
202         (Init):
203         * tests/sunspider-1.0/3d-morph.js:
204         * tests/sunspider-1.0/3d-raytrace.js:
205         * tests/sunspider-1.0/access-binary-trees.js:
206         * tests/sunspider-1.0/access-fannkuch.js:
207         * tests/sunspider-1.0/access-nbody.js:
208         * tests/sunspider-1.0/access-nsieve.js:
209         (sieve):
210         * tests/sunspider-1.0/bitops-3bit-bits-in-byte.js:
211         * tests/sunspider-1.0/bitops-bits-in-byte.js:
212         * tests/sunspider-1.0/bitops-bitwise-and.js:
213         * tests/sunspider-1.0/bitops-nsieve-bits.js:
214         * tests/sunspider-1.0/controlflow-recursive.js:
215         * tests/sunspider-1.0/crypto-aes.js:
216         * tests/sunspider-1.0/crypto-md5.js:
217         * tests/sunspider-1.0/crypto-sha1.js:
218         * tests/sunspider-1.0/date-format-tofte.js:
219         * tests/sunspider-1.0/date-format-xparb.js:
220         * tests/sunspider-1.0/math-cordic.js:
221         * tests/sunspider-1.0/math-partial-sums.js:
222         (partial):
223         * tests/sunspider-1.0/math-spectral-norm.js:
224         * tests/sunspider-1.0/regexp-dna.js:
225         * tests/sunspider-1.0/string-base64.js:
226         * tests/sunspider-1.0/string-fasta.js:
227         (fastaRepeat):
228         (fastaRandom):
229         * tests/sunspider-1.0/string-tagcloud.js:
230         * tests/sunspider-1.0/string-unpack-code.js:
231         * tests/sunspider-1.0/string-validate-input.js:
232
233 2013-04-11  Filip Pizlo  <fpizlo@apple.com>
234
235         Get rid of the 10ms delay between test executions
236         https://bugs.webkit.org/show_bug.cgi?id=114458
237         <rdar://problem/13631112>
238
239         Reviewed by Darin Adler and Geoffrey Garen.
240         
241         More details on this in the bug. Long story short, I don't know why the 10ms delay is
242         there, and it appears to be the root of some noisyness and unreliability in the results.
243         Removing it makes results more consistent, which is a good thing.
244
245         * resources/driver-TEMPLATE.html:
246
247 2013-01-16  Eric Seidel  <eric@webkit.org>
248
249         Remove --shark* support from sunspider/run-sunspider now that Shark is dead
250         https://bugs.webkit.org/show_bug.cgi?id=99512
251
252         Reviewed by Darin Adler.
253
254         I tried to use --instruments, but that also seems broken (in the same way before/after this patch).
255
256         * sunspider:
257         (runTestsOnce):
258
259 2012-08-02  Filip Pizlo  <fpizlo@apple.com>
260
261         Unreviewed, revert debugging stuff I landed in http://trac.webkit.org/changeset/124557
262         by accident.
263
264         * tests/v8-v6/v8-crypto.js:
265         (am1):
266         (am2):
267         (am3):
268         (am4):
269         (bnpCopyTo):
270         (bnpFromString):
271         (bnpClamp):
272
273 2012-03-11  Maciej Stachowiak  <mjs@apple.com>
274
275         Add --instruments option to sunspider to profile with Instruments
276         https://bugs.webkit.org/show_bug.cgi?id=80783
277
278         Reviewed by Filip Pizlo.
279
280         * resources/TimeProfile20us.tracetemplate: Added.
281         * sunspider:
282         (runTestsOnce):
283
284 2011-11-15  Andy Wingo  <wingo@igalia.com>
285
286         Extend sunspider driver to be able to run kraken
287         https://bugs.webkit.org/show_bug.cgi?id=71799
288
289         Reviewed by Filip Pizlo.
290
291         * resources/sunspider-standalone-driver.js: Try to load a -data
292         file.  If that succeeds, we have a kraken-like test, so we time
293         the test using `load'.  Otherwise fall back to using `run'.
294
295 2011-08-11  Mark Rowe  <mrowe@apple.com>
296
297         Fix sunspider-compare-results to default to the same suite version as the sunspider script.
298
299         Rubber-stamped by Maciej Stachowiak.
300
301         * sunspider-compare-results:
302
303 2011-07-02  Maciej Stachowiak  <mjs@apple.com>
304
305         Update SunSpider versioning to 1.0
306         https://bugs.webkit.org/show_bug.cgi?id=63870
307
308         Reviewed by Dan Bernstein.
309
310         * hosted/sunspider.html:
311         * hosted/versions.html:
312         * resources/driver-TEMPLATE.html:
313         * resources/results-TEMPLATE.html:
314         * sunspider:
315
316 2011-07-02  Maciej Stachowiak  <mjs@apple.com>
317
318         Sunspider 0.9.1 harness doesn't actually close() its test documents
319         https://bugs.webkit.org/show_bug.cgi?id=47045
320
321         Reviewed by Daniel Bates.
322
323         * hosted/versions.html:
324         * resources/driver-TEMPLATE.html:
325
326 2011-07-02  Maciej Stachowiak  <mjs@apple.com>
327
328         Not Reviewed. 
329         
330         Fix obviou typo in previous commit.
331
332         * tests/sunspider-1.0/bitops-bitwise-and.js:
333
334 2011-07-02  Maciej Stachowiak  <mjs@apple.com>
335
336         Reviewed by Anders Carlsson.
337
338         SunSpider: all four bitops benchmarks can be replaced with NOP
339         https://bugs.webkit.org/show_bug.cgi?id=38446
340
341         * tests/sunspider-1.0/bitops-3bit-bits-in-byte.js:
342         (TimeFunc): Save the result.
343         * tests/sunspider-1.0/bitops-bits-in-byte.js:
344         (TimeFunc): Save the result.
345         * tests/sunspider-1.0/bitops-bitwise-and.js: More explicitly
346         save the results.
347         * tests/sunspider-1.0/bitops-nsieve-bits.js:
348         (sieve): Save the result.
349
350 2011-07-02  Maciej Stachowiak  <mjs@apple.com>
351
352         SunSpider: string-validate-input.js uses an undeclared variable named 'name', which is a DOM API
353         https://bugs.webkit.org/show_bug.cgi?id=60937
354
355         Reviewed by Dan Bernstein.
356
357         * tests/sunspider-1.0/string-validate-input.js:
358         (doTest): Rename the variable to username
359
360 2011-07-02  Maciej Stachowiak  <mjs@apple.com>
361
362         Reviewed by Darin Adler.
363
364         SunSpider: The main function of math-cordic is dead code
365         https://bugs.webkit.org/show_bug.cgi?id=63863
366         
367         Try to prevent math-cordic from being eliminated as dead code or
368         compiled down to a constant.
369
370         * tests/sunspider-1.0/math-cordic.js:
371         (cordicsincos):
372         (cordic):
373
374 2011-06-30  Maciej Stachowiak  <mjs@apple.com>
375
376         Reviewed by Adam Barth.
377
378         Create sunspider-1.0 directory in preparation for fixing a bunch of bugs
379         https://bugs.webkit.org/show_bug.cgi?id=63782
380
381         * make-hosted: Learn about the new directory.
382         * tests/sunspider-1.0: Copied from PerformanceTests/SunSpider/tests/sunspider-0.9.1.
383
384 2010-11-29  Geoffrey Garen  <ggaren@apple.com>
385
386         Reviewed by Gavin Barraclough.
387
388         Improved accuracy of command-line SunSpider.
389
390         * resources/sunspider-standalone-driver.js: Use the returned number of
391         elapsed milliseconds from "run" and "checkSyntax" instead of measuring
392         ourselves, for slightly more accurate numbers.
393
394 2010-09-16  Gavin Barraclough  <barraclough@apple.com>
395
396         Reviewed by Mark Rowe.
397         https://bugs.webkit.org/show_bug.cgi?id=45924
398
399         Modify the SunSpider harness to allow a path to be passed to the --suite
400         argument, supress the normal prepend-"tests/" behaviour for suite names
401         containing a '/'.
402
403         Also wrap the code in an anonymous function to move variables out of global
404         scope (currently the harness cannot handle running tests the overwrite the
405         variable 'j').
406
407         * resources/sunspider-standalone-driver.js:
408         * sunspider:
409
410 2010-08-27  Michael Saboff  <msaboff@apple.com>
411
412         Reviewed by Stephanie Lewis.
413
414         Added version 5 and version 6 of V8 tests with modifications similar
415         to the version 4 tests so they'll work with the SunSpider test harness.
416         Note that these files are external source and therefore don't conform 
417         to WebKit coding standards.
418         https://bugs.webkit.org/show_bug.cgi?id=44638
419
420         * tests/v8-v5: Added.
421         * tests/v8-v5/LIST: Added.
422         * tests/v8-v5/v8-crypto.js: Added.
423         * tests/v8-v5/v8-deltablue.js: Added.
424         * tests/v8-v5/v8-earley-boyer.js: Added.
425         * tests/v8-v5/v8-raytrace.js: Added.
426         * tests/v8-v5/v8-regexp.js: Added.
427         * tests/v8-v5/v8-richards.js: Added.
428         * tests/v8-v5/v8-splay.js: Added.
429         * tests/v8-v6: Added.
430         * tests/v8-v6/LIST: Added.
431         * tests/v8-v6/v8-crypto.js: Added.
432         * tests/v8-v6/v8-deltablue.js: Added.
433         * tests/v8-v6/v8-earley-boyer.js: Added.
434         * tests/v8-v6/v8-raytrace.js: Added.
435         * tests/v8-v6/v8-regexp.js: Added.
436         * tests/v8-v6/v8-richards.js: Added.
437         * tests/v8-v6/v8-splay.js: Added.
438
439 2010-07-15  Stephanie Lewis  <slewis@apple.com>
440
441         Reviewed by Geoff Garen.
442
443         http://bugs.webkit.org/show_bug.cgi?id=42406
444         Output location of results file.
445
446         * sunspider:
447
448 2010-05-17  Maciej Stachowiak  <mjs@apple.com>
449
450         Reviewed by Mark Rowe.
451
452         Browser-hosted version of SunSpider runs tests twice as many times as advertised
453         https://bugs.webkit.org/show_bug.cgi?id=39201
454
455         * make-hosted: Make sure to reset test list after every test suite.
456
457 2010-05-07  Adam Roben  <aroben@apple.com>
458
459         Fix typo in sunspider-compare-results.js that caused incorrect
460         two-sample t statistics to be computed
461
462         Fixes <http://webkit.org/b/38768> SunSpider computes incorrect
463         two-sample t statistics
464
465         Reviewed by Darin Adler.
466
467         * resources/sunspider-compare-results.js:
468         (sunspiderCompareResults.resultLine): Fixed the calculation of the t
469         variable to match the definition of a two-sample t statistic. Looks
470         like this was just a simple typo.
471
472 2010-04-05  Darin Adler  <darin@apple.com>
473
474         Updated the ignore property for changes to the contents here.
475
476         * .: Modified property svn:ignore.
477
478 2010-02-20  Maciej Stachowiak  <mjs@apple.com>
479
480         Reviewed by Adam Barth.
481
482         Add sunspider-0.9.1 to the site in preparation for announcing it.
483         https://bugs.webkit.org/show_bug.cgi?id=35206
484
485         * hosted/sunspider.css: Remove tabs, which I noticed where present while
486         copying to the WebKitSite directory.
487
488 2010-01-11  Oliver Hunt  <oliver@apple.com>
489
490         Reviewed by Darin Adler.
491
492         Sunspider parse-only tests don't run
493         https://bugs.webkit.org/show_bug.cgi?id=33489
494
495         Fix parse-only test list
496
497         * tests/parse-only/LIST:
498
499 2009-12-15  Maciej Stachowiak  <mjs@apple.com>
500
501         Reviewed by Adele Peterson.
502
503         Make SunSpider version more prominent in the title
504         https://bugs.webkit.org/show_bug.cgi?id=32574
505
506         * hosted/sunspider.html:
507         * hosted/versions.html:
508         * resources/driver-TEMPLATE.html:
509         * resources/results-TEMPLATE.html:
510
511 2009-12-15  Maciej Stachowiak  <mjs@apple.com>
512
513         Reviewed by Darin Adler.
514
515         Make SunSpider refuse to compare results across content versions
516         https://bugs.webkit.org/show_bug.cgi?id=32573
517         
518         The results URL now includes a version indicator, and compare mode
519         will refuse to compare between versions.
520
521         * resources/driver-TEMPLATE.html:
522         * resources/results-TEMPLATE.html:
523
524 2009-12-14  Maciej Stachowiak  <mjs@apple.com>
525
526         Reviewed by Darin Adler.
527
528         Some Browser-hosted SunSpider files are not valid HTML5
529         https://bugs.webkit.org/show_bug.cgi?id=32536
530         
531         Made various fixes to validate as HTML5 with no warnings (mainly removing bogus
532         close tags and adding a meta charset declaration).
533
534         * hosted/sunspider.html:
535         * hosted/versions.html:
536         * resources/TEMPLATE.html:
537         * resources/driver-TEMPLATE.html:
538         * resources/results-TEMPLATE.html:
539
540 2009-12-14  Maciej Stachowiak  <mjs@apple.com>
541
542         Reviewed by Eric Seidel.
543
544         Make sunspider-0.9.1 the default content set (both command-line and hosted)
545         https://bugs.webkit.org/show_bug.cgi?id=32537
546
547         * hosted/sunspider.html: Change default suite link.
548         * sunspider: Change default suite.
549         * sunspider-compare-results: Likewise.
550
551 2009-12-14  Maciej Stachowiak  <mjs@apple.com>
552
553         Reviewed by Sam Weinig.
554
555         in-browser SunSpider suffers excessive penalty under power management
556         https://bugs.webkit.org/show_bug.cgi?id=32505
557         
558         I have made a few changes to address this:
559         
560         1) Change how browser-hosted SunSpider loads tests - preload the content and write it in with
561         document.write to reduce triggering of progress UI.
562         2) Reduce time between tests to 10ms from 500ms, so that power management doesn't keep the CPU
563         stepped all the way down the whole time.
564         3) Run the test cycle an extra time for warmup before the runs that count.
565
566         * hosted/sunspider-record-result.js: Removed.
567         * make-hosted:
568         * resources/TEMPLATE.html:
569         * resources/driver-TEMPLATE.html:
570
571 2009-12-13  Maciej Stachowiak  <mjs@apple.com>
572
573         Reviewed by Gavin Barraclough.
574
575         SunSpider/tests/string-base64.js does not compute a valid base64 encoded string
576         https://bugs.webkit.org/show_bug.cgi?id=16806
577
578         Based on a patch by Eric Seidel.
579         
580         Fix the base64 computation to actually compute correct results. The impact on runtime of
581         the test is pretty small, but noticeable for some browsers. But at least it's not
582         doing a wrong and meaningless computation any more.
583         
584         * tests/sunspider-0.9.1/string-base64.js:
585         ():
586         (base64ToString):
587
588 2009-12-13  Maciej Stachowiak  <mjs@apple.com>
589
590         Fixing commit error...
591         
592         I accidentally committed my last patch in a form that broke Web-hosted SunSpider. Fixing.
593
594         * resources/driver-TEMPLATE.html:
595
596 2009-12-13  Maciej Stachowiak  <mjs@apple.com>
597
598         Reviewed by Sam Weinig.
599
600         Use JSON.parse instead of eval for Web-hosted SunSpider results processing
601         https://bugs.webkit.org/show_bug.cgi?id=32490
602
603         * hosted/json2.js: Added. Incorporated from json.org
604         * resources/driver-TEMPLATE.html: Fix an HTML validation bug I noticed.
605         * resources/results-TEMPLATE.html: Use JSON.parse instead of eval to process
606         results.
607
608 2009-12-12  Maciej Stachowiak  <mjs@apple.com>
609
610         Reviewed by Oliver Hunt.
611
612         Enable Web-hosted version of SunSpider to handle multiple versions
613         https://bugs.webkit.org/show_bug.cgi?id=32478
614
615         * make-hosted: Now generate the hosted version to be able to run both the
616         0.9 and the 0.9.1 test suites.
617         * hosted: Modified property svn:ignore.
618         * hosted/sunspider-driver.html: Removed.
619         * hosted/sunspider-results.html: Removed.
620         * hosted/sunspider.html:
621         * hosted/versions.html: Added.
622         * resources/TEMPLATE.html:
623         * resources/driver-TEMPLATE.html: Copied from hosted/sunspider-driver.html.
624         * resources/driver-TEMPLATE.html: Copied from hosted/sunspider-results.html.
625
626 2009-12-12  Maciej Stachowiak  <mjs@apple.com>
627
628         Reviewed by Oliver Hunt.
629
630         Give command-line sunspider the ability to handle multiple suites and versions
631         https://bugs.webkit.org/show_bug.cgi?id=32477
632         
633         Each suite/version's set of tests are now in a separate subdirectory of tests/, with a file named LIST
634         enumerating the tests. Current suites are:
635         
636         sunspider-0.9 - riginal SunSpider content 
637         sunspider-0.9.1 - SunSpider suite with a few tests fixed (and a few more to come)
638         ubench - "ubench" microbenchmark suite
639         v8-v4 - version 4 of the v8 benchmark
640         parse-only - some parser tests
641         
642         Sunspider can now be run with the --suite= parameter to select a
643         suite. The default is --suite=sunspider-0.9.
644
645         * .: Modified property svn:ignore to ignore new results directories.
646         * make-hosted: Generate based on sunspider-0.9 suite.
647         * resources/TEMPLATE.html: Fix an HTML compliance problem.
648         * resources/sunspider-standalone-driver.js: Become aware of suite names.
649         * sunspider: Modified to handle multiple suites as described above.
650         * sunspider-compare-results: ditto
651         * tests/LIST: Moved to tests/sunspider-0.9/ and tests/sunspider-0.9.1/
652         * tests/LIST-PARSE-ONLY: Moved to parse-only/LIST
653         * tests/LIST-UBENCH: Removed.
654         * tests/LIST-V8: Removed.
655         * tests/3d-cube.js: Moved to tests/sunspider-0.9 and tests/sunspider-0.9.1
656         * tests/3d-morph.js: ditto
657         * tests/3d-raytrace.js: ditto
658         * tests/access-binary-trees.js: ditto
659         * tests/access-fannkuch.js: ditto
660         * tests/access-nbody.js: ditto
661         * tests/access-nsieve.js: ditto
662         * tests/bitops-3bit-bits-in-byte.js: ditto
663         * tests/bitops-bits-in-byte.js: ditto
664         * tests/bitops-bitwise-and.js: ditto
665         * tests/bitops-nsieve-bits.js: ditto
666         * tests/controlflow-recursive.js: ditto
667         * tests/crypto-aes.js: ditto
668         * tests/crypto-md5.js: ditto
669         * tests/crypto-sha1.js: ditto
670         * tests/date-format-tofte.js: ditto
671         * tests/date-format-xparb.js: ditto
672         * tests/math-cordic.js: ditto
673         * tests/math-partial-sums.js: ditto
674         * tests/math-spectral-norm.js: ditto
675         * tests/regexp-dna.js: ditto
676         * tests/string-base64.js: ditto
677         * tests/string-fasta.js: ditto
678         * tests/string-tagcloud.js: ditto
679         * tests/string-unpack-code.js: ditto
680         * tests/string-validate-input.js: ditto
681         * tests/sunspider-0.9/: Added
682         * tests/sunspider-0.9/*.js: Moved from one level up
683         * tests/sunspider-0.9.1: Added.
684         * tests/sunspider-0.9.1/*.js: Moved from one level up.
685         * tests/v8-crypto.js: Moved to v8-v4/ directory.
686         * tests/v8-deltablue.js: ditto
687         * tests/v8-earley-boyer.js: ditto
688         * tests/v8-raytrace.js: ditto
689         * tests/v8-regexp.js: ditto
690         * tests/v8-richards.js: ditto
691         * tests/v8-splay.js: ditto
692         * tests/v8-v4: Added.
693
694 2009-09-30  Csaba Osztrogonac  <oszi@inf.u-szeged.hu>
695
696         Reviewed by Darin Adler.
697
698         Platform specific null device replaced with a platform independent.
699         https://bugs.webkit.org/show_bug.cgi?id=29544
700
701         * sunspider: Using File::Spec->devnull() instead of /dev/null and NUL.
702
703 2009-09-21  Csaba Osztrogonac  <oszi@inf.u-szeged.hu>
704
705         Reviewed by Maciej Stachowiak.
706
707         [Qt] Make sunspider script work on Windows platform.
708         https://bugs.webkit.org/show_bug.cgi?id=29544
709
710         * sunspider:
711         Using platform specific null device instead of /dev/null.
712
713 2009-06-19  Adam Treat  <adam.treat@torchmobile.com>
714
715         Reviewed by Oliver Hunt.
716
717         https://bugs.webkit.org/show_bug.cgi?id=26540
718         Currently the SunSpider test driver lacks an option to run a test suite that
719         will test JavaScriptCore parsing performance only.  This patch adds just such
720         a test suite and option to SunSpider as well as the jsc test shell.  I've included
721         three large javascript source files found in the wild: jquery, mootools and prototype.
722         Combined with the concatenation of all three, these form a new testsuite to measure
723         and test pure JavaScriptCore parsing performance.
724
725         * resources/sunspider-standalone-driver.js:
726           Load the js with parse-only flag if it is part of the parse-only suite.
727         * sunspider:
728           Add the parse-only suite to the list of options.
729         * sunspider-compare-results:
730           Add the parse-only suite to the list of options.
731         * tests/LIST-PARSE-ONLY: Added.
732         * tests/parse-only/concat-jquery-mootools-prototype.js: Added.
733           A very large concatenation of the scripts found below.  This js takes ~30ms to parse on my machine.
734         * tests/parse-only/jquery-1.3.2.js: Added.
735           Latest version from jquery.com.
736         * tests/parse-only/mootools-1.2.2-core-nc.js: Added.
737           Latest version from mootools.net.
738         * tests/parse-only/prototype-1.6.0.3.js: Added.
739           Latest version from prototypejs.org.
740
741 2009-06-13  Steve Falkenburg  <sfalken@apple.com>
742
743         Update V8 benchmark to version 4.
744         
745         Reviewed by Cameron Zwarich.
746
747         * tests/LIST-V8:
748         * tests/v8-crypto.js:
749         * tests/v8-deltablue.js:
750         * tests/v8-earley-boyer.js:
751         * tests/v8-raytrace.js:
752         * tests/v8-regexp.js: Added.
753         * tests/v8-richards.js:
754         * tests/v8-splay.js: Added.
755
756 2009-05-26  Olivier DOLE  <odole@pleyo.com>
757
758         Reviewed by Maciej.
759
760         Store sunspider test suite results in a specific directory for each
761         different type of benchmark (sunspider, V8 or ubench).
762
763         * sunspider:
764         * sunspider-compare-results:
765
766 2009-05-12  Steve Falkenburg  <sfalken@apple.com>
767
768         Build fix.
769
770         * SunSpider.make:
771
772 2009-05-11  Steve Falkenburg  <sfalken@apple.com>
773
774         Include SunSpider tests in production builds.
775         
776         Reviewed by Adam Roben.
777
778         * SunSpider.make: Added.
779         * xcopy.excludes: Added.
780
781 2009-03-04  Oliver Hunt  <oliver@apple.com>
782
783         Added a few more tests to ubench
784
785         RS=Gavin Barraclough
786
787         Adding a couple of test to cover too few and too many arguments.  This
788         is needed to prevent regressions in all call paths from my current refactoring.
789
790         * tests/LIST-UBENCH:
791         * tests/ubench/function-correct-args.js: Added.
792         (f):
793         * tests/ubench/function-excess-args.js: Added.
794         (f):
795
796 2008-10-30  Zoltan Horvath  <Horvath.Zoltan.6@stud.u-szeged.hu>
797
798         Fix a bug where when V8's or UBENCH's test suite list file is missing
799         the error message is suggesting that SunSpider's list file is missing.
800
801         Reviewed by Sam Weinig.
802
803         * sunspider:
804         (loadTestsList): Fix the error message to use the right list name.
805
806 2008-10-07  David Hyatt  <hyatt@apple.com>
807
808         https://bugs.webkit.org/show_bug.cgi?id=18989
809
810         Remove global substitution from SunSpider regexp test, since only Firefox was honoring it and
811         we want all browsers to be doing the same thing on the test.
812
813         Reviewed by Maciej
814
815         * tests/regexp-dna.js:
816
817 2008-09-09  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
818
819         Rubber-stamped by Maciej Stachowiak.
820
821         The bleeding edge branch of V8 now supports passing fileanmes after
822         '-f', so the SunSpider script should be changed to do this again.
823         This allows all 3 major JavaScript engines to be used with the
824         unmodified SunSpider script.
825
826         * sunspider:
827
828 2008-09-04  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
829
830         Reviewed by Maciej Stachowiak.
831
832         Add a '--args' option to SunSpider, so that we can pass '-j' to TraceMonkey
833         and '--expose-gc' to V8. Also, rename the '--v8' option to '--v8-suite' and
834         correct the punctuation in its documentation.
835
836         * sunspider:
837
838 2008-09-04  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
839
840         Reviewed by Oliver Hunt.
841
842         Bug 20616: Incorporate V8 benchmarks in testing
843         <https://bugs.webkit.org/show_bug.cgi?id=20616>
844
845         This is a first attempt at running the V8 benchmarks within SunSpider,
846         with the --v8 option. The number of iterations is fixed for each
847         benchmark, and was chosen to make each of the benchmarks run between
848         500 ms and 600 ms in V8 on my machine, a 2.16 GHz MacBook Pro.
849
850         * sunspider:
851         * tests/LIST-V8: Added.
852         * tests/v8-crypto.js: Added.
853         * tests/v8-deltablue.js: Added.
854         * tests/v8-earley-boyer.js: Added.
855         * tests/v8-raytrace.js: Added.
856         * tests/v8-richards.js: Added.
857
858 2008-09-02  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
859
860         Not reviewed.
861
862         Remove a local change that was accidentally committed in r36034.
863
864         * resources/sunspider-standalone-driver.js:
865
866 2008-09-02  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
867
868         Rubber-stamped by Oliver Hunt.
869
870         Make SunSpider work with JavaScript shells that don't take filenames
871         after a '-f' argument.
872
873         * sunspider:
874
875 2008-06-07  Cameron Zwarich  <cwzwarich@uwaterloo.ca>
876
877         Reviewed by Timothy.
878
879         Remove the --squirrelfish option from SunSpider, as it is no longer needed.
880
881         * sunspider:
882         * tests/LIST-SQUIRRELFISH: Removed.
883
884 2008-06-03  Alexey Proskuryakov  <ap@webkit.org>
885
886         Rubber-stamped by Mark Rowe.
887
888         Roll out r31215 - with Mac OS X 10.5.3, there is no need to pause update daemon any more.
889
890         * sunspider:
891
892 2008-04-15  Maciej Stachowiak  <mjs@apple.com>
893
894         Rubber stamped by Oliver.
895         
896         - add newly working tests to squirrelfish list
897
898         * tests/LIST-SQUIRRELFISH: Add 3d-raytrace and string-unpack-code
899
900 2008-04-14  Maciej Stachowiak  <mjs@apple.com>
901
902         Rubber stamped by Oliver.
903         
904         - move ubench tests properly.
905
906         * tests/ubench: Added.
907         * tests/ubench/function-closure.js: Added.
908         * tests/ubench/function-empty.js: Added.
909         * tests/ubench/function-missing-args.js: Added.
910         * tests/ubench/function-sum.js: Added.
911         * tests/ubench/loop-empty-resolve.js: Added.
912         * tests/ubench/loop-empty.js: Added.
913         * tests/ubench/loop-sum.js: Added.
914
915 2008-04-14  Maciej Stachowiak  <mjs@apple.com>
916
917         Rubber stamped by Oliver.
918
919         * sunspider: Don't force --runs=1 in squirrelfish mode any more.
920
921 2008-04-14  Maciej Stachowiak  <mjs@apple.com>
922
923         Reviewed by Oliver.
924
925         - make --squirrelfish mode use the real harness, but a reduced set of tests
926
927         Also add a new ubench mode which runs the older squirrelfish microbenchmarks.
928
929         * sunspider:
930         * tests/LIST-SQUIRRELFISH:
931         * tests/LIST-UBENCH: Added.
932         * tests/squirrelfish: Moved to tests/ubench
933
934 2008-04-14  Geoffrey Garen  <ggaren@apple.com>
935
936         Reviewed by Maciej Stachowiak.
937         
938         Removed an unused test.
939
940         * tests/squirrelfish/loop-resolve.js: Removed.
941
942 2008-04-10  Maciej Stachowiak  <mjs@apple.com>
943
944         Reviewed by Oliver.
945         
946         Add newly runnable tests to --squirrelfish mode.
947
948         * tests/LIST-SQUIRRELFISH:
949
950 2008-04-06  Geoffrey Garen  <ggaren@apple.com>
951
952         Reviewed by Maciej Stachowiak.
953         
954         A little more love for --squirrelfish mode:
955         
956         Fixed a misplaced sort. Results properly sort now.
957         
958         Added a test list just for squirrelfish, and updated it to include
959         all currently passing SunSpider tests.
960         
961         Fixed the pruning regexp to match 3d-morph.js.
962
963         * sunspider:
964
965 2008-03-26  Geoffrey Garen  <ggaren@apple.com>
966
967         Reviewed by Oliver Hunt.
968         
969         --squirrelfish mode: pared down tests for squirrelfish to chew on.
970
971         * sunspider:
972         * tests/LIST:
973         * tests/squirrelfish: Added.
974         * tests/squirrelfish/function-closure.js: Added.
975         * tests/squirrelfish/function-empty.js: Added.
976         * tests/squirrelfish/function-missing-args.js: Added.
977         * tests/squirrelfish/function-sum.js: Added.
978         * tests/squirrelfish/loop-empty-resolve.js: Added.
979         * tests/squirrelfish/loop-empty.js: Added.
980         * tests/squirrelfish/loop-resolve.js: Added.
981         * tests/squirrelfish/loop-sum.js: Added.
982
983 2008-03-21  Alexey Proskuryakov  <ap@webkit.org>
984
985         Reviewed by Geoff.
986
987         * sunspider: Pause update daemon on Darwin to make results reliable
988         again (workaround for <rdar://problem/5811127>).
989
990 2008-02-07  Eric Seidel  <eric@webkit.org>
991
992         Reviewed by Sam.
993
994         * sunspider: add an error message when ./tests/LIST is not found
995
996 2007-12-29  Alp Toker  <alp@atoker.com>
997
998         Fix typo.
999
1000         * hosted/sunspider.html:
1001
1002 2007-12-29  Alp Toker  <alp@atoker.com>
1003
1004         Reviewed by Maciej.
1005
1006         Provide the current URL in the SunSpider results page. Useful for
1007         copying benchmark results out of browsers without a location bar or
1008         where the location bar can't handle long URLs.
1009
1010         * hosted/sunspider-results.html:
1011
1012 2007-12-20  Eric Seidel  <eric@webkit.org>
1013
1014         Reviewed by mjs.
1015
1016         * sunspider: increase default number of runs for more accurate numbers
1017
1018 2007-12-18  Mark Rowe  <mrowe@apple.com>
1019
1020         Fix typo.
1021
1022         * hosted/sunspider.html:
1023
1024 2007-12-18  Maciej Stachowiak  <mjs@apple.com>
1025
1026         Reviewed by Eric.
1027         
1028         - give an extra digit of precision for small differences.
1029
1030         * resources/sunspider-compare-results.js:
1031
1032 2007-12-17  Maciej Stachowiak  <mjs@apple.com>
1033
1034         Reviewed by Eric.
1035         
1036         - work around IE layout bugs
1037
1038         * hosted/sunspider.css:
1039
1040 2007-12-17  Maciej Stachowiak  <mjs@apple.com>
1041
1042         Reviewed by Mark.
1043         
1044         - fix compare feature
1045
1046         * hosted/sunspider-results.html:
1047
1048 2007-12-17  Maciej Stachowiak  <mjs@apple.com>
1049
1050         Reviewed by Mark.
1051         
1052         - Change the format of the output URL to be shorter, to meet IE constraints
1053
1054         * hosted/sunspider-driver.html:
1055         * hosted/sunspider-results.html:
1056
1057 2007-12-13  Maciej Stachowiak  <mjs@apple.com>
1058
1059         Reviewed by Oliver.
1060         
1061         - Add some explanatory test and a dumb logo to SunSpider web hosted version
1062
1063         * hosted/sunspider-driver.html:
1064         * hosted/sunspider-results.html:
1065         * hosted/sunspider.css:
1066         * hosted/sunspider.html:
1067
1068 2007-12-13  Maciej Stachowiak  <mjs@apple.com>
1069
1070         Reviewed by Oliver.
1071         
1072         - Make the web-hosted version of SunSpider look a little bit less drab.
1073
1074         * hosted/sunspider-driver.html:
1075         * hosted/sunspider-results.html:
1076         * hosted/sunspider.css: Added.
1077         * hosted/sunspider.html:
1078         * resources/TEMPLATE.html:
1079
1080 2007-12-12  Maciej Stachowiak  <mjs@apple.com>
1081
1082         Reviewed by Sam.
1083         
1084         - Change sunspider-compare-results output from showing "% faster" values to "x as fast" values.
1085         
1086         A sample of what new-style results would look like:
1087         
1088         TEST                   COMPARISON            FROM                 TO             DETAILS
1089         ...
1090         ** TOTAL **:           1.41x as fast     6613.6ms +/- 0.1%   4703.0ms +/- 0.1%     significant
1091         ...
1092             3bit-bits-in-byte: *1.36x as slow*     88.8ms +/- 0.6%    121.1ms +/- 0.6%     significant
1093         
1094         * resources/sunspider-compare-results.js:
1095
1096 2007-11-14  Eric Seidel  <eric@webkit.org>
1097
1098         Reviewed by Sam.
1099
1100         * sunspider: add --shark-cache for L2 Cache Miss profiling
1101
1102 2007-11-09  Alexey Proskuryakov  <ap@webkit.org>
1103
1104         Reviewed by Darin Adler.
1105
1106         http://bugs.webkit.org/show_bug.cgi?id=15925
1107         SunSpider should check for Shark being installed
1108
1109         * sunspider: Explicitly test that shark command line tool is installed.
1110
1111 2007-11-04  Darin Adler  <darin@apple.com>
1112
1113         * hosted/sunspider.html: Tweaked formatting a bit.
1114
1115 2007-11-03  Maciej Stachowiak  <mjs@apple.com>
1116
1117         Reviewed by Darin Adler.
1118
1119         - Add compare mode and a description of the benchmark to the hosted version.
1120
1121         * hosted/sunspider-results.html: Add compare mode - you can just paste in another results URL.
1122         * hosted/sunspider.html: Added intro text.
1123         * make-hosted: Copy new file.
1124         * resources/sunspider-compare-results.js: Made more reusable by putting the implementation in
1125         a function.
1126         * resources/sunspider-standalone-compare.js: Added. Calls the function in the way standalone mode
1127         expects.
1128         * sunspider-compare-results: Use sunspider-standalone-compare.js.
1129
1130 2007-11-02  Darin Adler  <darin@apple.com>
1131
1132         * sunspider: Changed "--base" to "--set-baseline".
1133
1134 2007-11-02  Darin Adler  <darin@apple.com>
1135
1136         Reviewed by Maciej.
1137
1138         * sunspider: Added a "--base" option that records the current test as a baseline.
1139         Moved the code to find the newest .mshark file into a function (since I needed to use
1140         it in the other script and I prefer to copy/paste a function).
1141
1142         * sunspider-compare-results: Added logic to compare the baseline with the last
1143         run when you don't pass any parameters.
1144
1145 2007-10-29  Maciej Stachowiak  <mjs@apple.com>
1146
1147         Reviewed by Eric.
1148         
1149         - Added list of ECMAScript3 features that SunSpider does not cover currently.
1150
1151         * UNCOVERED: Added.
1152
1153 2007-10-29  Maciej Stachowiak  <mjs@apple.com>
1154
1155         Reviewed by Oliver.
1156         
1157         - Give better error messages when sunspider-compare-results fails
1158
1159         * sunspider-compare-results:
1160
1161 2007-10-29  Maciej Stachowiak  <mjs@apple.com>
1162
1163         Reviewed by Darin Adler.
1164         
1165         - fix Date tests to work in command-line SpiderMonkey
1166
1167         * tests/date-format-tofte.js:
1168         * tests/date-format-xparb.js:
1169
1170 2007-10-29  Darin Adler  <darin@apple.com>
1171
1172         Reviewed by Maciej.
1173
1174         * sunspider: Added --shark20 option, to run Shark at its highest sample
1175         resolution instead of its default.
1176
1177 2007-10-28  Adam Roben  <aroben@apple.com>
1178
1179         Fix SunSpider on Windows
1180
1181         Reviewed by Eric.
1182
1183         * sunspider: Don't use colons in filenames.
1184
1185 2007-10-28  Darin Adler  <darin@apple.com>
1186
1187         Reviewed by Adam.
1188
1189         * resources/sunspider-analyze-results.js: Tweak the output format a little.
1190         Change so that when there's only one run we don't write out confidence
1191         intervals at all rather than writing "NaN" over and over again.
1192
1193         * sunspider: Use the time and date as a suffix on the results file, that way
1194         all the results are left behind in the tmp directory. This will make it easy
1195         for us to add features that compare past results in the future. Also rename
1196         the .mshark files using the same scheme.
1197
1198         * sunspider-compare-results: Relax the parsing rules so we can parse the
1199         results file exactly as it's emitted from sunspider.
1200
1201 2007-10-25  Adam Roben  <aroben@apple.com>
1202
1203         Strip carriage returns from results
1204
1205         Carriage returns were screwing up sunspider-compare-results on
1206         Windows.
1207
1208         Rubberstamped by Oliver.
1209
1210         * sunspider:
1211
1212 2007-10-24  Darin Adler  <darin@apple.com>
1213
1214         Reviewed by Eric.
1215
1216         * sunspider: Open the profile in shark after completing a run.
1217         * sunspider-compare-results: Tiny perl tweaks.
1218
1219 2007-10-23  Maciej Stachowiak  <mjs@apple.com>
1220
1221         Reviewed by Darin Adler.
1222
1223         - Don't hardcode my path to testkjs
1224         
1225         * sunspider-compare-results:
1226
1227 2007-10-23  Maciej Stachowiak  <mjs@apple.com>
1228
1229         Reviewed by Darin Adler.
1230         
1231         - Add a compare script to compare results, and improve formatting of standard results a bit.
1232
1233         * resources/sunspider-analyze-results.js:
1234         * resources/sunspider-compare-results.js: Added.
1235         * sunspider-compare-results: Added.
1236
1237 2007-10-23  Maciej Stachowiak  <mjs@apple.com>
1238
1239         Reviewed by Darin Adler.
1240
1241         * resources/sunspider-analyze-results.js: Do the error range
1242         properly, using the t-distribution instead of 1.96 (which was
1243         based on the normal distribution).
1244         
1245         * sunspider: Print results in a way that will be friendlier to the
1246         soon-to-come compare mode.
1247
1248 2007-10-22  Maciej Stachowiak  <mjs@apple.com>
1249
1250         Reviewed by Review.
1251         
1252         - add more tests (probably the final set for now)
1253         
1254         Already balanced. Added date, regexp, control flow, and a few
1255         more string and object/array access tests.
1256         
1257         * tests/LIST:
1258         * tests/access-fannkuch.js: Added.
1259         * tests/access-nbody.js: Added.
1260         * tests/controlflow-recursive.js: Added.
1261         * tests/date-format-tofte.js: Added.
1262         * tests/date-format-xparb.js: Added.
1263         * tests/regexp-dna.js: Added.
1264         * tests/string-validate-input.js: Added.
1265
1266 2007-10-21  Eric Seidel  <eric@webkit.org>
1267
1268         Reviewed by mjs.
1269
1270         * sunspider: make --shark only sample from testkjs
1271
1272 2007-10-21  Maciej Stachowiak  <mjs@apple.com>
1273
1274         Rubber stamped by Eric.
1275         
1276         - added crypto tests (already balanced)
1277
1278         * tests/LIST:
1279         * tests/crypto-aes.js: Added.
1280         * tests/crypto-md5.js: Added.
1281         * tests/crypto-sha1.js: Added.
1282
1283 2007-10-21  Maciej Stachowiak  <mjs@apple.com>
1284
1285         Reviewed by Adam.
1286         
1287         - rebalance new tests
1288         
1289         Scaled the new tests so they take 400-600ms on a reasonably normal user setup:
1290         
1291         Internet Explorer 7, Window XP, Dell Latitude D810 with a 2.13GHz Pentium M
1292
1293         This balances them with the existing tests.
1294
1295         * tests/access-binary-trees.js:
1296         * tests/access-nsieve.js:
1297         * tests/bitops-nsieve-bits.js:
1298         * tests/math-partial-sums.js:
1299         * tests/math-spectral-norm.js:
1300         * tests/string-fasta.js:
1301
1302 2007-10-20  Eric Seidel  <eric@webkit.org>
1303
1304         Reviewed by darin.
1305         
1306         Add improved argument handling to sunspider, including
1307         --runs=<number>, --tests=<pattern, --shark, and --help
1308         Also re-factor code into subroutines
1309
1310         * sunspider: improved argument handling
1311
1312 2007-10-20  Maciej Stachowiak  <mjs@apple.com>
1313
1314         Reviewed by Mark.
1315
1316         - Add more new tests, mostly from the computer language shootout. Not normalized yet.
1317         
1318         * TODO:
1319         * tests/LIST:
1320         * tests/access-binary-trees.js: Added.
1321         * tests/access-nsieve.js: Added.
1322         * tests/bitops-nsieve-bits.js: Added.
1323         * tests/math-partial-sums.js: Added.
1324         * tests/math-spectral-norm.js: Added.
1325         * tests/string-fasta.js: Added.
1326
1327 2007-10-20  Maciej Stachowiak  <mjs@apple.com>
1328
1329         Reviewed by Darin Adler.
1330
1331         * TODO: Updated to note areas that are now well-covered.
1332         
1333         - Change the tests and the driver to avoid leaving large object
1334         graphs hanging around, since that throws off the subsequent tests.
1335         
1336         * resources/sunspider-standalone-driver.js:
1337         * tests/3d-cube.js:
1338         * tests/3d-morph.js:
1339         * tests/3d-raytrace.js:
1340         * tests/bitops-bitwise-and.js:
1341         * tests/string-base64.js:
1342         * tests/string-tagcloud.js:
1343
1344 2007-10-20  Maciej Stachowiak  <mjs@apple.com>
1345
1346         Reviewed by Nikolas.
1347         
1348         - Rebalance test complexity.
1349         
1350         Scaled all the tests so they take 400-600ms on a reasonably normal user setup:
1351         
1352         Internet Explorer 7, Window XP, Dell Latitude D810 with a 2.13GHz Pentium M
1353
1354         However, for some tests, IE7 was a huge outlier compared to other
1355         major browsers. For those tests, I used Firefox 2.0.0.8 on the
1356         same OS and hardware as a normalization basis.
1357         
1358         * tests/3d-morph.js:
1359         * tests/3d-raytrace.js:
1360         * tests/bitops-3bit-bits-in-byte.js:
1361         * tests/bitops-bits-in-byte.js:
1362         * tests/bitops-bitwise-and.js:
1363         * tests/math-cordic.js:
1364         * tests/string-base64.js:
1365         * tests/string-tagcloud.js:
1366         * tests/string-unpack-code.js:
1367
1368 2007-10-20  Maciej Stachowiak  <mjs@apple.com>
1369
1370         Reviewed by Oliver.
1371         
1372         - Fix the browser-hosted driver to be compatible with Safari 2
1373
1374         * hosted/sunspider-driver.html:
1375
1376 2007-10-20  Maciej Stachowiak  <mjs@apple.com>
1377
1378         Rubber stamped by Hyatt.
1379         
1380         - Add BSD license notice to cordic test, the original author said to do so.
1381
1382         * tests/math-cordic.js:
1383
1384 2007-10-18  Maciej Stachowiak  <mjs@apple.com>
1385
1386         Reviewed by Eric.
1387         
1388         - Support Windows and Windows browsers.
1389
1390         * hosted/sunspider-results.html: Display results correctly in IE.
1391         * sunspider: tweaks to work on Windows, and with spaces in the path.
1392
1393 2007-10-18  Maciej Stachowiak  <mjs@apple.com>
1394
1395         Rubber stamped by Oliver.
1396
1397         * tests/string-tagcloud.js: Remove stray print()
1398
1399 2007-10-17  Maciej Stachowiak  <mjs@apple.com>
1400
1401         Reviewed by Oliver.
1402         
1403         Add some string test cases.
1404
1405         * tests/string-base64.js: Added. Does base64 encoding and decoding.
1406         * tests/string-tagcloud.js: Added. Parses a JSON string and
1407         generates tagcloud HTML markup based on the data.        
1408         * tests/string-unpack-code.js: Added. Unpack compressed versions of
1409         four of the most popular JavaScript libraries.
1410         * tests/LIST: Added the new tests.
1411
1412 2007-10-16  Maciej Stachowiak  <mjs@apple.com>
1413
1414         Reviewed by Anders.
1415
1416         * TODO: Updated with info on how to do the stats properly.
1417
1418         * hosted/sunspider-driver.html: Reduce timeout from 500 to 200 to
1419         avoid overly slowing down the benchmark.
1420
1421         Added some 3D-related test cases.
1422         
1423         * tests/3d-cube.js: Added.
1424         * tests/3d-morph.js: Added.
1425         * tests/3d-raytrace.js: Added.
1426         * tests/LIST:
1427
1428 2007-10-14  Maciej Stachowiak  <mjs@apple.com>
1429
1430         Reviewed by Darin Adler.
1431
1432         - New JavaScript benchmark
1433         http://bugs.webkit.org/show_bug.cgi?id=15515
1434         
1435         A start on a new JavaScript benchmark, with standalone and
1436         browser-hosted drivers.
1437         
1438         The test content is still incomplete and the drivers could use
1439         some more features but there is enough here to make a good start.
1440         
1441         The drivers compute a 95% confidence interval on the mean for the
1442         whole test, each category, and each individual test to make it
1443         easier to tell whether differences are statistically
1444         significant. The confidence interval can be narrowed by running
1445         the test more times.
1446         
1447         * TODO: Added. Remaining things that need to be done.
1448         * sunspider: Added. Perl script that acts as the standalone test driver.
1449         * resources/sunspider-standalone-driver.js: Added. JavaScript part
1450         of standalone test driver.
1451         * resources/sunspider-analyze-results.js: Added. JavaScript statistical
1452         analysis code.
1453         * resources/TEMPLATE.html: Added. Template for browser-hosted tests.
1454         * make-hosted: Added. Script to generate browser-hosted tests.
1455         * hosted/sunspider.html: Added. Start page for browser-hosted test.
1456         * hosted/sunspider-driver.html: Added. Driver for browser-hosted tests.
1457         * hosted/sunspider-results.html: Added. Results page for browser-hosted
1458         tests.
1459         * hosted/sunspider-record-result.js: Added. Helper file for browser-hosted
1460         tests.
1461         * tests/LIST: Added. List of tests to use.
1462         * tests/bitops-3bit-bits-in-byte.js: Added. Some initial test content.
1463         * tests/bitops-bits-in-byte.js: Added. Ditto.
1464         * tests/bitops-bitwise-and.js: Added. Ditto.
1465         * tests/math-cordic.js: Added. Ditto.
1466