Unreviewed, fix build failure
[WebKit-https.git] / PerformanceTests / ChangeLog
1 2019-04-16  Jon Lee  <jonlee@apple.com>
2
3         [MotionMark] The text "kkkj" is causing Firefox console warning: `unreachable code after return statement`
4         https://bugs.webkit.org/show_bug.cgi?id=196814
5
6         Reviewed by Wenson Hsieh.
7
8         * MotionMark/resources/extensions.js:
9         (subtract.subtract.sampleY):
10
11 2019-04-15  Myles C. Maxfield  <mmaxfield@apple.com>
12
13         [Cocoa] FontPlatformData objects aren't cached at all when using font-family:system-ui
14         https://bugs.webkit.org/show_bug.cgi?id=196846
15         <rdar://problem/49499971>
16
17         Reviewed by Simon Fraser and Darin Adler.
18
19         * Layout/system-ui-rebuild-emoji.html: Added.
20
21 2019-04-03  Myles C. Maxfield  <mmaxfield@apple.com>
22
23         -apple-trailing-word is needed for browser detection
24         https://bugs.webkit.org/show_bug.cgi?id=196575
25
26         Unreviewed.
27
28         * MotionMark/resources/debug-runner/motionmark.css:
29         (#intro .start-benchmark p):
30
31 2019-03-27  Ryan Haddad  <ryanhaddad@apple.com>
32
33         REGRESSION (r242911?): High Sierra Release WK2 Perf bot timing out while running IndexedDB/large-number-of-inserts.html
34         https://bugs.webkit.org/show_bug.cgi?id=195952
35
36         Unreviewed test gardening.
37
38         * Skipped: Skip the affected test so the bot will finish the run.
39
40 2019-03-27  Saam Barati  <sbarati@apple.com>
41
42         JetStream 2 should not report time values as scores
43         https://bugs.webkit.org/show_bug.cgi?id=196334
44
45         Reviewed by Yusuke Suzuki.
46
47         * JetStream2/JetStreamDriver.js:
48         (toTimeValue):
49         (Driver.prototype.async.reportScoreToRunBenchmarkRunner):
50
51 2019-03-27  Saam barati  <sbarati@apple.com>
52
53         Unreviewed. Fix individual benchmark description urls to go to in-depth.html instead of about.html
54
55         * JetStream2/JetStreamDriver.js:
56         (Driver.prototype.prepareToRun.text.div.id.string_appeared_here.h3):
57
58 2019-03-25  Saam barati  <sbarati@apple.com>
59
60         Update the blurb describing JetStream2 and fix a broken link in the in-depth page.
61
62         Rubber-stamped by Filip Pizlo.
63
64         * JetStream2/in-depth.html:
65         * JetStream2/index.html:
66
67 2019-03-18  Saam Barati  <sbarati@apple.com>
68
69         Add a plan file for JetStream 2
70         https://bugs.webkit.org/show_bug.cgi?id=190734
71
72         Reviewed by Mark Lam.
73
74         Make the delay when starting via run-benchmark longer to allow
75         the page's animation to finish.
76
77         * JetStream2/JetStreamDriver.js:
78         (Driver.prototype.async.initialize):
79
80 2019-03-15  Jon Davis  <jond@apple.com>
81
82         Fixed a bug preventing the overall sore to be displayed on JetStream2
83         https://bugs.webkit.org/show_bug.cgi?id=195817
84
85         Rubber-stamped by Saam Barati.
86
87         * JetStream2/JetStreamDriver.js:
88         (Driver.prototype.async.start):
89
90 2019-03-14  Jon Davis  <jond@apple.com>
91
92         Implement a new design for JetStream2
93         https://bugs.webkit.org/show_bug.cgi?id=195492
94
95         Reviewed by Saam Barati.
96
97         * JetStream2/JetStream.css:
98         (html):
99         (body):
100         (::selection):
101         (main):
102         (.logo):
103         (.logo .logo-image):
104         (#jetstreams):
105         (#jetstreams svg):
106         (.summary):
107         (.summary + .summary):
108         (.summary:empty):
109         (article, .summary):
110         (h1):
111         (h2, h3, h4, h5, h6):
112         (h4, h5, h6):
113         (p):
114         (h5, h6):
115         (h6):
116         (a:link,):
117         (a:hover,):
118         (#status):
119         (#status label,):
120         (a.button):
121         (#status.loading):
122         (#status.error):
123         (.error h2, .error p):
124         (.error h2):
125         (#result-summary):
126         (#result-summary label):
127         (#result-summary .score):
128         (#result-summary .score .interval):
129         (#results):
130         (.benchmark):
131         (.benchmark h3, .benchmark h4, .benchmark .result, .benchmark label):
132         (.benchmark-running h4, .benchmark-running .result, .benchmark-running label):
133         (.benchmark-done h3, .benchmark-done h4, .benchmark-done .result, .benchmark-done label):
134         (.benchmark h3):
135         (.benchmark-running h3):
136         (.benchmark-done h3):
137         (.benchmark h3 a,):
138         (.benchmark-done h3 a:hover):
139         (.benchmark h4):
140         (.benchmark-done h4):
141         (.benchmark p,):
142         (.benchmark .result):
143         (.benchmark-done .result):
144         (.benchmark label):
145         (.benchmark-done label):
146         (@keyframes fadein):
147         (to):
148         (@keyframes scaledown):
149         (@keyframes shine):
150         (100%):
151         (@keyframes swingin):
152         (@media (max-width: 415px)):
153         (#logo): Deleted.
154         (p.summary): Deleted.
155         (p.summary + p.summary): Deleted.
156         (p.summary:empty): Deleted.
157         (p:first-of-type): Deleted.
158         (#status a:link): Deleted.
159         (.interval): Deleted.
160         (a:link, a:visited): Deleted.
161         (a:link:hover): Deleted.
162         (table): Deleted.
163         (td, th): Deleted.
164         (th): Deleted.
165         (tr:first-child > th:nth-child(even)): Deleted.
166         (tr:nth-child(even):not(:first-child, .benchmark-running)): Deleted.
167         (.result): Deleted.
168         (.benchmark-running): Deleted.
169         (:not(.benchmark-running) .result): Deleted.
170         (.benchmark-running .result): Deleted.
171         (.benchmark-name): Deleted.
172         (.result.category,): Deleted.
173         (.benchmark-name:not(.category):not(.geometric-mean)): Deleted.
174         (.geometric-mean): Deleted.
175         (.benchmark-name:not(:first-child)): Deleted.
176         (.benchmark-name a:link,): Deleted.
177         (.highlighted-result): Deleted.
178         * JetStream2/JetStream2Logo.svg: Added.
179         * JetStream2/JetStreamDriver.js:
180         (updateUI):
181         (Driver.prototype.async.start):
182         (Driver.prototype.prepareToRun.text.div.id.string_appeared_here.h3):
183         (Driver.prototype.prepareToRun.text.span):
184         (Driver.prototype.prepareToRun.a.h3.h4):
185         (Driver.prototype.prepareToRun.text.div):
186         (Driver.prototype.async.initialize):
187         (Driver.prototype.async.fetchResources.prototype.statusElement.onclick):
188         (prototype.fetchResources):
189         (prototype.updateUIBeforeRun):
190         (prototype.updateUIAfterRun):
191         (Driver.prototype.async.fetchResources.statusElement.innerHTML.a.href.string_appeared_here):
192         (Driver.prototype.async.fetchResources):
193         (Driver.prototype.prepareToRun.text.tr.id.string_appeared_here.FIXME.link.to.benchmark.explanation.td): Deleted.
194         * JetStream2/clouds.svg: Added.
195         * JetStream2/in-depth.html:
196         * JetStream2/index.html:
197         * JetStream2/jetstreams.svg: Added.
198
199 2019-03-11  Caio Lima  <ticaiolima@gmail.com>
200
201         [ESNext][BigInt] Implement "~" unary operation
202         https://bugs.webkit.org/show_bug.cgi?id=182216
203
204         Reviewed by Keith Miller.
205
206         * BigIntBench/big-int-simple-bit-not.js: Added.
207
208 2019-03-04  Saam Barati  <sbarati@apple.com>
209
210         Add a detailed summary page for JetStream 2
211         https://bugs.webkit.org/show_bug.cgi?id=195014
212
213         Rubber-stamped by Darin Adler.
214
215         * JetStream2/JetStream.css:
216         (a:link, a:visited):
217         * JetStream2/in-depth.html: Added.
218
219 2019-02-08  Saam barati  <sbarati@apple.com>
220
221         Update JetStream2 CLI to not print "ms" since we now just print the score values
222         https://bugs.webkit.org/show_bug.cgi?id=193981
223
224         Reviewed by Yusuke Suzuki.
225
226         * JetStream2/JetStreamDriver.js:
227         (DefaultBenchmark.prototype.updateUIAfterRun):
228         (DefaultBenchmark):
229         (WSLBenchmark.prototype.updateUIAfterRun):
230         (WSLBenchmark):
231         (WasmBenchmark.prototype.updateUIAfterRun):
232         (WasmBenchmark):
233
234 2019-01-31  Sihui Liu  <sihui_liu@apple.com>
235
236         REGRESSION (r240358): IndexedDB/large-binary-keys.html and IndexedDB/large-string-keys.html perf tests failing
237         https://bugs.webkit.org/show_bug.cgi?id=193956
238         <rdar://problem/47623109>
239
240         Reviewed by Ryosuke Niwa.
241
242         r240358 sets default IDB quota as 50 MB for single test, we need to increase that for big tests. 
243
244         * IndexedDB/large-binary-keys.html:
245         * IndexedDB/large-string-keys.html:
246
247 2019-01-18  Saam Barati  <sbarati@apple.com>
248
249         Use scores everywhere in JetStream2's UI
250         https://bugs.webkit.org/show_bug.cgi?id=193593
251
252         Reviewed by Keith Miller.
253
254         * JetStream2/JetStreamDriver.js:
255         (DefaultBenchmark.prototype.processResults):
256         (DefaultBenchmark.prototype.get score):
257         (DefaultBenchmark.scoreDescription):
258         (WSLBenchmark.prototype.processResults):
259         (WSLBenchmark.prototype.get score):
260         (WSLBenchmark.scoreDescription):
261         (WasmBenchmark.prototype.processResults):
262         (WasmBenchmark.prototype.get score):
263         (WasmBenchmark.scoreDescription):
264         * JetStream2/index.html:
265
266 2019-01-18  Jer Noble  <jer.noble@apple.com>
267
268         SDK_VARIANT build destinations should be separate from non-SDK_VARIANT builds
269         https://bugs.webkit.org/show_bug.cgi?id=189553
270
271         Reviewed by Tim Horton.
272
273         * MediaTime/Configurations/Base.xcconfig:
274         * MediaTime/Configurations/SDKVariant.xcconfig: Added.
275
276 2019-01-17  Truitt Savell  <tsavell@apple.com>
277
278         Unreviewed, rolling out r240124.
279
280         This commit broke an internal build.
281
282         Reverted changeset:
283
284         "SDK_VARIANT build destinations should be separate from non-
285         SDK_VARIANT builds"
286         https://bugs.webkit.org/show_bug.cgi?id=189553
287         https://trac.webkit.org/changeset/240124
288
289 2019-01-17  Jer Noble  <jer.noble@apple.com>
290
291         SDK_VARIANT build destinations should be separate from non-SDK_VARIANT builds
292         https://bugs.webkit.org/show_bug.cgi?id=189553
293
294         Reviewed by Tim Horton.
295
296         * MediaTime/Configurations/Base.xcconfig:
297         * MediaTime/Configurations/SDKVariant.xcconfig: Added.
298
299 2018-12-20  Caio Lima  <ticaiolima@gmail.com>
300
301         [BigInt] We should enable CSE into arithmetic operations that speculate BigIntUse
302         https://bugs.webkit.org/show_bug.cgi?id=192723
303
304         Reviewed by Yusuke Suzuki.
305
306         * BigIntBench/big-int-cse.js: Added.
307         * BigIntBench/big-int-global-cse.js: Added.
308         * BigIntBench/big-int-licm.js: Added.
309
310 2018-12-19  Commit Queue  <commit-queue@webkit.org>
311
312         Unreviewed, rolling out r239377.
313         https://bugs.webkit.org/show_bug.cgi?id=192921
314
315         broke 32-bit JSC tests (Requested by keith_miller on #webkit).
316
317         Reverted changeset:
318
319         "[BigInt] We should enable CSE into arithmetic operations that
320         speculate BigIntUse"
321         https://bugs.webkit.org/show_bug.cgi?id=192723
322         https://trac.webkit.org/changeset/239377
323
324 2018-12-19  Caio Lima  <ticaiolima@gmail.com>
325
326         [BigInt] We should enable CSE into arithmetic operations that speculate BigIntUse
327         https://bugs.webkit.org/show_bug.cgi?id=192723
328
329         Reviewed by Saam Barati.
330
331         * BigIntBench/big-int-cse.js: Added.
332         * BigIntBench/big-int-global-cse.js: Added.
333         * BigIntBench/big-int-licm.js: Added.
334
335 2018-12-17  Suresh Koppisetty  <skoppisetty@apple.com>
336
337         Add "-o/--output" option to startup.py and new_tab.py benchmark scripts to save the results in json format.
338         https://bugs.webkit.org/show_bug.cgi?id=192385
339
340         Reviewed by Ryosuke Niwa.
341
342         Sample json output for new tab benchmark script after running for 2 iterations and 2 groups. Values are in milliseconds.
343         {
344                 "NewTabBenchmark": {
345                         "metrics": {
346                                 "Time": {
347                                         "current": [
348                                                 [
349                                                         410.2939453125,
350                                                         307.81494140625
351                                                 ],
352                                                 [
353                                                         340.616943359375,
354                                                         265.94384765625
355                                                 ]
356                                         ]
357                                 }
358                         }
359                 }
360         }
361
362         Sample json output for startup time benchmark script after running for 2 iterations. Values are in milliseconds.
363         {
364                 "StartupBenchmark": {
365                         "metrics": {
366                                 "Time": {
367                                         "current": [
368                                                 [
369                                                         1415.2099609375,
370                                                         1439.552978515625
371                                                 ]
372                                         ]
373                                 }
374                         }
375                 }
376         }
377
378         * LaunchTime/launch_time.py:
379         * LaunchTime/new_tab.py:
380         (NewTabBenchmark.get_test_name):
381         * LaunchTime/startup.py:
382         (StartupBenchmark.get_test_name):
383
384 2018-12-17  Suresh Koppisetty  <skoppisetty@apple.com>
385
386         Import FeedbackServer only if "-f/--feedback-in-browser" option is enabled.
387         https://bugs.webkit.org/show_bug.cgi?id=192378
388
389         Reviewed by Ryosuke Niwa.
390
391         FeedbackServer currently depends on Tornado-5.1, which further adds
392         dependency of "singledispatch", "backports-abc" and "futures" python libraries.
393         Importing FeedbackServer only if "-f/--feedback-in-browser" option is enabled
394         will let us run the benchmark scripts without installing any new python libraries.
395
396         * LaunchTime/launch_time.py:
397         * LaunchTime/new_tab.py:
398
399 2018-12-13  Caio Lima  <ticaiolima@gmail.com>
400
401         [BigInt] Add ValueDiv into DFG
402         https://bugs.webkit.org/show_bug.cgi?id=186178
403
404         Reviewed by Yusuke Suzuki.
405
406         * BigIntBench/big-int-simple-div.js: Added.
407         * BigIntBench/value-div-type-propagation.js: Added.
408
409 2018-12-10  Caio Lima  <ticaiolima@gmail.com>
410
411         [BigInt] Add ValueMul into DFG
412         https://bugs.webkit.org/show_bug.cgi?id=186175
413
414         Reviewed by Yusuke Suzuki.
415
416         * BigIntBench/big-int-simple-mul.js: Added.
417         * BigIntBench/value-mul-type-propagation.js: Added.
418
419 2018-11-07  Caio Lima  <ticaiolima@gmail.com>
420
421         [BigInt] Add support to BigInt into ValueAdd
422         https://bugs.webkit.org/show_bug.cgi?id=186177
423
424         Reviewed by Keith Miller.
425
426         The idea of BigIntBench is to provide a set of microbenchmarks and
427         benchmarks to evaluate how fast BigInt computations are happening on
428         JSC implementation.
429
430         Now, we are adding microbenchmarks in this set,
431         but the plan is to move these tests to "JSTest/microbenchmarks" when
432         BigInt is enabled by default. After that, the focus of Bigint bench is
433         to provide a set of tests that represents real use cases of BigInt in
434         JS programs.
435
436         * BigIntBench/big-int-add-prediction-propagation.js: Added.
437         * BigIntBench/big-int-simple-add.js: Added.
438         * BigIntBench/big-int-simple-sub.js: Added.
439
440 2018-11-07  Tadeu Zagallo  <tzagallo@apple.com>
441
442         REGRESSION(r237547): Test failures on 32-bit JSC since the JIT was disabled
443         https://bugs.webkit.org/show_bug.cgi?id=191184
444
445         Reviewed by Saam Barati.
446
447         Skip test when the JIT is disabled, it takes too long to run on CLoop.
448
449         * JetStream/cdjs/main.js:
450
451 2018-11-05  Myles C. Maxfield  <mmaxfield@apple.com>
452
453         Cache glyph paths and share underline skipping code between all the ports
454         https://bugs.webkit.org/show_bug.cgi?id=191239
455
456         Reviewed by Alex Christensen.
457
458         Measures the performance of drawing a whole lot of underlines
459
460         * Layout/underline.html: Added.
461
462 2018-10-25  Saam Barati  <sbarati@apple.com>
463
464         Check in corresponding C code in JetStream 2
465         https://bugs.webkit.org/show_bug.cgi?id=190733
466
467         Rubber-stamped by Filip Pizlo.
468
469         * JetStream2/simple/float-mm.c: Added.
470         * JetStream2/wasm/HashSet.cpp: Added.
471         * JetStream2/wasm/gcc-loops.cpp: Added.
472         * JetStream2/wasm/quicksort.c: Added.
473         * JetStream2/wasm/TSF: Added.
474         * JetStream2/wasm/TSF/build.sh: Added.
475         * JetStream2/wasm/TSF/config.h: Added.
476         * JetStream2/wasm/TSF/gpc.h: Added.
477         * JetStream2/wasm/TSF/gpc_code_gen_util.c: Added.
478         * JetStream2/wasm/TSF/gpc_instruction.c: Added.
479         * JetStream2/wasm/TSF/gpc_instruction_dispatch.gen: Added.
480         * JetStream2/wasm/TSF/gpc_instruction_size.gen: Added.
481         * JetStream2/wasm/TSF/gpc_instruction_stack_effects.gen: Added.
482         * JetStream2/wasm/TSF/gpc_instruction_static_size.gen: Added.
483         * JetStream2/wasm/TSF/gpc_instruction_to_string.gen: Added.
484         * JetStream2/wasm/TSF/gpc_int_common.h: Added.
485         * JetStream2/wasm/TSF/gpc_intable.c: Added.
486         * JetStream2/wasm/TSF/gpc_internal.h: Added.
487         * JetStream2/wasm/TSF/gpc_interpreter.gen: Added.
488         * JetStream2/wasm/TSF/gpc_program.c: Added.
489         * JetStream2/wasm/TSF/gpc_proto.c: Added.
490         * JetStream2/wasm/TSF/gpc_stack_height.c: Added.
491         * JetStream2/wasm/TSF/gpc_threaded.c: Added.
492         * JetStream2/wasm/TSF/gpc_worklist.h: Added.
493         * JetStream2/wasm/TSF/tsf.h: Added.
494         * JetStream2/wasm/TSF/tsf_adaptive_reader.c: Added.
495         * JetStream2/wasm/TSF/tsf_asprintf.c: Added.
496         * JetStream2/wasm/TSF/tsf_atomics.h: Added.
497         * JetStream2/wasm/TSF/tsf_buf_reader.c: Added.
498         * JetStream2/wasm/TSF/tsf_buf_writer.c: Added.
499         * JetStream2/wasm/TSF/tsf_buffer.c: Added.
500         * JetStream2/wasm/TSF/tsf_build_defines.h: Added.
501         * JetStream2/wasm/TSF/tsf_config.h: Added.
502         * JetStream2/wasm/TSF/tsf_config_stub.h: Added.
503         * JetStream2/wasm/TSF/tsf_copier.c: Added.
504         * JetStream2/wasm/TSF/tsf_define_helpers.c: Added.
505         * JetStream2/wasm/TSF/tsf_define_helpers.h: Added.
506         * JetStream2/wasm/TSF/tsf_destructor.c: Added.
507         * JetStream2/wasm/TSF/tsf_error.c: Added.
508         * JetStream2/wasm/TSF/tsf_format.h: Added.
509         * JetStream2/wasm/TSF/tsf_fsdb.c: Added.
510         * JetStream2/wasm/TSF/tsf_fsdb_protocol.c: Added.
511         * JetStream2/wasm/TSF/tsf_fsdb_protocol.h: Added.
512         * JetStream2/wasm/TSF/tsf_generator.c: Added.
513         * JetStream2/wasm/TSF/tsf_gpc_code_gen.c: Added.
514         * JetStream2/wasm/TSF/tsf_indent.h: Added.
515         * JetStream2/wasm/TSF/tsf_internal.h: Added.
516         * JetStream2/wasm/TSF/tsf_internal_config.h: Added.
517         * JetStream2/wasm/TSF/tsf_internal_config_stub.h: Added.
518         * JetStream2/wasm/TSF/tsf_inttypes.h: Added.
519         * JetStream2/wasm/TSF/tsf_io.c: Added.
520         * JetStream2/wasm/TSF/tsf_io_utils.c: Added.
521         * JetStream2/wasm/TSF/tsf_ir.c: Added.
522         * JetStream2/wasm/TSF/tsf_ir.h: Added.
523         * JetStream2/wasm/TSF/tsf_ir_different.c: Added.
524         * JetStream2/wasm/TSF/tsf_ir_different.h: Added.
525         * JetStream2/wasm/TSF/tsf_ir_speed.c: Added.
526         * JetStream2/wasm/TSF/tsf_limits.c: Added.
527         * JetStream2/wasm/TSF/tsf_named_type.c: Added.
528         * JetStream2/wasm/TSF/tsf_native.c: Added.
529         * JetStream2/wasm/TSF/tsf_parser.c: Added.
530         * JetStream2/wasm/TSF/tsf_primitive.c: Added.
531         * JetStream2/wasm/TSF/tsf_ra_type_man.c: Added.
532         * JetStream2/wasm/TSF/tsf_reflect.c: Added.
533         * JetStream2/wasm/TSF/tsf_region.h: Added.
534         * JetStream2/wasm/TSF/tsf_serial_in_man.c: Added.
535         * JetStream2/wasm/TSF/tsf_serial_out_man.c: Added.
536         * JetStream2/wasm/TSF/tsf_serial_protocol.h: Added.
537         * JetStream2/wasm/TSF/tsf_sha1.c: Added.
538         * JetStream2/wasm/TSF/tsf_sha1.h: Added.
539         * JetStream2/wasm/TSF/tsf_sha1_writer.c: Added.
540         * JetStream2/wasm/TSF/tsf_sort.c: Added.
541         * JetStream2/wasm/TSF/tsf_st.c: Added.
542         * JetStream2/wasm/TSF/tsf_st.h: Added.
543         * JetStream2/wasm/TSF/tsf_st_typetable.c: Added.
544         * JetStream2/wasm/TSF/tsf_stream_file_input.c: Added.
545         * JetStream2/wasm/TSF/tsf_stream_file_output.c: Added.
546         * JetStream2/wasm/TSF/tsf_type.c: Added.
547         * JetStream2/wasm/TSF/tsf_type_in_map.c: Added.
548         * JetStream2/wasm/TSF/tsf_type_out_map.c: Added.
549         * JetStream2/wasm/TSF/tsf_type_table.c: Added.
550         * JetStream2/wasm/TSF/tsf_types.h: Added.
551         * JetStream2/wasm/TSF/tsf_util.h: Added.
552         * JetStream2/wasm/TSF/tsf_version.c: Added.
553         * JetStream2/wasm/TSF/tsf_zip_abstract.c: Added.
554         * JetStream2/wasm/TSF/tsf_zip_abstract.h: Added.
555         * JetStream2/wasm/TSF/tsf_zip_attr.c: Added.
556         * JetStream2/wasm/TSF/tsf_zip_reader.c: Added.
557         * JetStream2/wasm/TSF/tsf_zip_writer.c: Added.
558
559 2018-10-18  Saam Barati  <sbarati@apple.com>
560
561         Make JetStream 2
562         https://bugs.webkit.org/show_bug.cgi?id=187829
563
564         Rubber-stamped by Mark Lam.
565
566         This patch checks in the new JetStream 2 benchmark. JetStream 2 is
567         a new JavaScript and Web Assembly benchmark. JetStream 2's goal
568         is to measure the startup, worst case, and peak throughput performance
569         of the JavaScript engine. JetStream 2 incorporates these previous
570         benchmarks:
571         - JetStream
572         - ARES-6
573         - Kraken
574         - Web Tooling Benchmark
575         - WasmBench
576         - RexBench
577         
578         JetStream 2 also adds some new benchmarks:
579         - Two tests emphasizing web worker performance.
580         - One test emphasizing Promise, async iteration, and DataView performance.
581         - Two new code load tests.
582         - WSL: a test measuring all kinds of things, especially emphasizing exception performance.
583
584         * JetStream2: Added.
585
586 2018-10-02  Chris Dumez  <cdumez@apple.com>
587
588         Regression(r236613): Parser/html-parser.html performance test is failing
589         https://bugs.webkit.org/show_bug.cgi?id=190201
590
591         Unreviewed, apply the same fix as in r236699 to make sure the iframe is treated as
592         same origin, so that calls to document.open() / document.write() succeed.
593
594         * Parser/html-parser.html:
595
596 2018-10-01  Chris Dumez  <cdumez@apple.com>
597
598         Regression(r236613): Parser/HTML5-8266-ParseOnly.html performance tests no longer runs
599         https://bugs.webkit.org/show_bug.cgi?id=190174
600
601         Reviewed by Ryosuke Niwa.
602
603         Update iframe's sandbox to use 'allow-same-origin' so that the iframe is treated as same-origin and so that
604         the top frame can call document.open() / document.write() on the subframe. This test was also failing in
605         Firefox without this change.
606
607         * Parser/HTML5-8266-ParseOnly.html:
608
609 2018-08-27  Aditya Keerthi  <akeerthi@apple.com>
610
611         Consolidate ENABLE_INPUT_TYPE_COLOR and ENABLE_INPUT_TYPE_COLOR_POPOVER
612         https://bugs.webkit.org/show_bug.cgi?id=188931
613
614         Reviewed by Wenson Hsieh.
615
616         * StitchMarker/wtf/FeatureDefines.h: Removed ENABLE_INPUT_TYPE_COLOR_POPOVER.
617
618 2018-08-23  Don Olmstead  <don.olmstead@sony.com>
619
620         [CMake] Have checks are not getting set inside CMake properly
621         https://bugs.webkit.org/show_bug.cgi?id=188901
622
623         Reviewed by Michael Catanzaro.
624
625         Add notification that MallocBench is disabled.
626
627         * CMakeLists.txt:
628
629 2018-08-23  Don Olmstead  <don.olmstead@sony.com>
630
631         [CMake] Add HAVE_MALLOC_TRIM definition
632         https://bugs.webkit.org/show_bug.cgi?id=188897
633
634         Reviewed by Konstantin Tokarev.
635
636         MallocBench should only be built on Apple platforms and platforms that
637         have malloc_trim.
638
639         * CMakeLists.txt:
640
641 2018-08-13  Jon Lee  <jonlee@apple.com>
642
643         Update MotionMark version number
644         https://bugs.webkit.org/show_bug.cgi?id=188535
645         <rdar://problem/43254078>
646
647         Reviewed by Said Abou-Hallawa.
648
649         * MotionMark/resources/strings.js: To 1.1.
650
651 2018-08-13  Jon Lee  <jonlee@apple.com>
652
653         [MotionMark] Update Multiply test
654         https://bugs.webkit.org/show_bug.cgi?id=188532
655         <rdar://problem/43252151>
656
657         Reviewed by Said Abou-Hallawa.
658
659         Update Multiply test to have a larger upper limit of number of particles. Cycle through three
660         different ways of hiding an element. Add new Multiple suite that isolates those components for
661         debugging purposes.
662
663         * MotionMark/resources/debug-runner/tests.js:
664         * MotionMark/tests/dom/multiply.html: Added.
665         * MotionMark/tests/dom/resources/multiply.js: Added.
666         * MotionMark/tests/master/resources/multiply.js:
667
668 2018-08-13  Jon Lee  <jonlee@apple.com>
669
670         [MotionMark] Update Leaves test
671         https://bugs.webkit.org/show_bug.cgi?id=188530
672         <rdar://problem/43251862>
673
674         Reviewed by Said Abou-Hallawa.
675
676         Update Leaves test to include opacity and scale. Add new Leaves suite that isolate those components
677         for debugging purposes.
678
679         * MotionMark/resources/debug-runner/tests.js:
680         * MotionMark/tests/dom/leaves.html:
681         * MotionMark/tests/dom/resources/leaves.js:
682         * MotionMark/tests/master/resources/leaves.js:
683
684 2018-08-10  Ben Richards  <benton_richards@apple.com>
685
686         Add ability to ignore process prewarming for launch time benchmark
687         https://bugs.webkit.org/show_bug.cgi?id=188462
688
689         Reviewed by Ryosuke Niwa.
690
691         Added a flag to the new tab benchmark that will open a blank tab before the tab to be measured in order to ignore process prewarming.
692
693         * LaunchTime/launch_time.py:
694         (DefaultLaunchTimeHandler):
695         (DefaultLaunchTimeHandler.on_receive_stop_time): Deleted.
696         (DefaultLaunchTimeHandler.on_receive_stop_signal):
697         (DefaultLaunchTimeHandler.do_HEAD):
698         (DefaultLaunchTimeHandler.do_GET):
699         (DefaultLaunchTimeHandler.do_POST):
700         (LaunchTimeBenchmark):
701         (LaunchTimeBenchmark._standard_deviation): Fixed divide by zero bug when '-n' is set to 1
702         (LaunchTimeBenchmark.open_tab): Added option to open a blank tab
703         (LaunchTimeBenchmark.run):
704         * LaunchTime/new_tab.py:
705         (NewTabBenchmark.initialize):
706         (NewTabBenchmark.run_iteration):
707         (NewTabBenchmark.will_parse_arguments):
708         (NewTabBenchmark.did_parse_arguments):
709         (NewTabBenchmark.ResponseHandler.Handler.get_test_page):
710         (NewTabBenchmark.ResponseHandler.Handler.on_receive_stop_time): Deleted.
711         (NewTabBenchmark.ResponseHandler.Handler.on_receive_stop_signal):
712         (NewTabBenchmark):
713         * LaunchTime/startup.py:
714         (StartupBenchmark.ResponseHandler.Handler.get_test_page):
715         (StartupBenchmark.ResponseHandler.Handler.on_receive_stop_time): Deleted.
716         (StartupBenchmark.ResponseHandler.Handler.on_receive_stop_signal):
717         (StartupBenchmark):
718
719 2018-08-10  Truitt Savell  <tsavell@apple.com>
720
721         Unreviewed, rolling out r234750.
722
723         Caused 185 perf test failures.
724
725         Reverted changeset:
726
727         "Add ability to ignore process prewarming for launch time
728         benchmark"
729         https://bugs.webkit.org/show_bug.cgi?id=188462
730         https://trac.webkit.org/changeset/234750
731
732 2018-08-09  Ben Richards  <benton_richards@apple.com>
733
734         Add ability to ignore process prewarming for launch time benchmark
735         https://bugs.webkit.org/show_bug.cgi?id=188462
736
737         Reviewed by Ryosuke Niwa.
738
739         Added a flag to the new tab benchmark that will open a blank tab before the tab to be measured in order to ignore process prewarming.
740
741         * LaunchTime/launch_time.py:
742         (DefaultLaunchTimeHandler):
743         (DefaultLaunchTimeHandler.on_receive_stop_time): Deleted.
744         (DefaultLaunchTimeHandler.on_receive_stop_signal):
745         (DefaultLaunchTimeHandler.do_HEAD):
746         (DefaultLaunchTimeHandler.do_GET):
747         (DefaultLaunchTimeHandler.do_POST):
748         (LaunchTimeBenchmark):
749         (LaunchTimeBenchmark._standard_deviation): Fixed divide by zero bug when '-n' is set to 1
750         (LaunchTimeBenchmark.open_tab): Added option to open a blank tab
751         (LaunchTimeBenchmark.run):
752         * LaunchTime/new_tab.py:
753         (NewTabBenchmark.initialize):
754         (NewTabBenchmark.run_iteration):
755         (NewTabBenchmark.will_parse_arguments):
756         (NewTabBenchmark.did_parse_arguments):
757         (NewTabBenchmark.ResponseHandler.Handler.get_test_page):
758         (NewTabBenchmark.ResponseHandler.Handler.on_receive_stop_time): Deleted.
759         (NewTabBenchmark.ResponseHandler.Handler.on_receive_stop_signal):
760         (NewTabBenchmark):
761         * LaunchTime/startup.py:
762         (StartupBenchmark.ResponseHandler.Handler.get_test_page):
763         (StartupBenchmark.ResponseHandler.Handler.on_receive_stop_time): Deleted.
764         (StartupBenchmark.ResponseHandler.Handler.on_receive_stop_signal):
765         (StartupBenchmark):
766
767 2018-07-26  Andy VanWagoner  <andy@vanwagoner.family>
768
769         [INTL] Remove INTL sub-feature compile flags
770         https://bugs.webkit.org/show_bug.cgi?id=188081
771
772         Reviewed by Michael Catanzaro.
773
774         Removed old and unused i18n flag.
775
776         * StitchMarker/wtf/FeatureDefines.h:
777
778 2018-07-20  David Fenton  <david_fenton@apple.com>
779
780         REGRESSION (234006) ERROR: Blocked access to external URL http://code.jquery.com/jquery-1.9.1.min.js
781         https://bugs.webkit.org/show_bug.cgi?id=187858
782
783         Unreviewed test gardening, skipped test.
784
785         * Skipped: LaunchTime
786
787 2018-07-19  Ben Richards  <benton_richards@apple.com>
788
789         Add benchmark for WebKit process launch times
790         https://bugs.webkit.org/show_bug.cgi?id=186414
791
792         Reviewed by Ryosuke Niwa.
793
794         Added two benchmarks, one for measuring browser new tab launch time and one for browser startup time.
795
796         * LaunchTime/.gitignore: Added.
797         * LaunchTime/feedback_client.html: Added.
798         Displays benchmark progress in browser
799         * LaunchTime/feedback_server.py: Added.
800         (FeedbackServer): Sends data to feedback_client via websocket
801         (FeedbackServer.__init__):
802         (FeedbackServer._create_app):
803         (FeedbackServer._start_server):
804         (FeedbackServer._send_all_messages):
805         (FeedbackServer.start):
806         (FeedbackServer.stop):
807         (FeedbackServer.send_message): Send a message to the feedback_client
808         (FeedbackServer.wait_until_client_has_loaded): Wait until the feedback_client has opened a websocket connection to the feedback_server
809         (FeedbackServer.MainHandler): Handler factory to create handler that serves feedback_client.html
810         (FeedbackServer.MainHandler.Handler):
811         (FeedbackServer.MainHandler.Handler.get):
812         (FeedbackServer.WSHandler): Handler factory to create handler that sends data to feedback client
813         (FeedbackServer.WSHandler.Handler):
814         (FeedbackServer.WSHandler.Handler.open): On websocket connection opened
815         (FeedbackServer.WSHandler.Handler.on_close): On websocket connection closed
816         * LaunchTime/launch_time.py: Added.
817         (DefaultLaunchTimeHandler): Abstract HTTP request handler for launch time benchmarks
818         (DefaultLaunchTimeHandler.get_test_page): Default test page to be overridden by benchmarks
819         (DefaultLaunchTimeHandler.get_blank_page):
820         (DefaultLaunchTimeHandler.on_receive_stop_time):
821         (DefaultLaunchTimeHandler.do_HEAD):
822         (DefaultLaunchTimeHandler.do_GET):
823         (DefaultLaunchTimeHandler.do_POST):
824         (DefaultLaunchTimeHandler.log_message): Suppresses HTTP logs from SimpleHTTPRequestHandler
825         (LaunchTimeBenchmark): Abstract class which launch time benchmarks inherit from and override methods desired to customize
826         (LaunchTimeBenchmark.__init__):
827         (LaunchTimeBenchmark._parse_browser_bundle_path): Parser for bundle path option
828         (LaunchTimeBenchmark._parse_args):
829         (LaunchTimeBenchmark._run_server): Target function for main server thread
830         (LaunchTimeBenchmark._setup_servers):
831         (LaunchTimeBenchmark._clean_up):
832         (LaunchTimeBenchmark._exit_due_to_exception):
833         (LaunchTimeBenchmark._geometric_mean):
834         (LaunchTimeBenchmark._standard_deviation):
835         (LaunchTimeBenchmark._compute_results): Returns mean and std dev of list of results and pretty prints if should_print=True is specified
836         (LaunchTimeBenchmark._wait_times): Mimic numpy.linspace
837         (LaunchTimeBenchmark.open_tab): Open a browser tab with the html given by self.response_handler.get_test_page
838         (LaunchTimeBenchmark.launch_browser): Open a broser to either the feedback client (if option is set) or a blank page
839         (LaunchTimeBenchmark.quit_browser):
840         (LaunchTimeBenchmark.quit_browser.quit_app):
841         (LaunchTimeBenchmark.quit_browser.is_app_closed):
842         (LaunchTimeBenchmark.close_tab):
843         (LaunchTimeBenchmark.wait):
844         (LaunchTimeBenchmark.log): Print to console and send to feedback client if --feedback-in-browser flag is used
845         (LaunchTimeBenchmark.log_verbose): Only logs if --verbose flag is used
846         (LaunchTimeBenchmark.run):
847         (LaunchTimeBenchmark.group_init): Initialization done before each round of iterations
848         (LaunchTimeBenchmark.run_iteration):
849         (LaunchTimeBenchmark.initialize): Convenience method to be overriden by subclasses which is called at the end of __init__
850         (LaunchTimeBenchmark.will_parse_arguments): Called before argparse.parse_args to let subclasses add new command line arguments
851         (LaunchTimeBenchmark.did_parse_arguments): Called after argparse.parse_args to let subclass initialize based on command line arguments
852         * LaunchTime/new_tab.py: Added
853         (NewTabBenchmark):
854         (NewTabBenchmark._parse_wait_time): Parser for wait time option
855         (NewTabBenchmark.initialize):
856         (NewTabBenchmark.run_iteration):
857         (NewTabBenchmark.group_init):
858         (NewTabBenchmark.will_parse_arguments):
859         (NewTabBenchmark.did_parse_arguments):
860         (NewTabBenchmark.ResponseHandler):
861         (NewTabBenchmark.ResponseHandler.Handler):
862         (NewTabBenchmark.ResponseHandler.Handler.get_test_page):
863         * LaunchTime/startup.py: Added
864         (StartupBenchmark): This benchmark measures browser startup time and initial page load time
865         (StartupBenchmark.initialize):
866         (StartupBenchmark.run_iteration):
867         (StartupBenchmark.ResponseHandler):
868         (StartupBenchmark.ResponseHandler.Handler):
869         (StartupBenchmark.ResponseHandler.Handler.get_test_page):
870         * LaunchTime/thirdparty/__init__.py: Added.
871         (AutoinstallImportHook): Auto installs tornado package for feedback server
872         (AutoinstallImportHook.__init__):
873         (AutoinstallImportHook._ensure_autoinstalled_dir_is_in_sys_path):
874         (AutoinstallImportHook.find_module):
875         (AutoinstallImportHook._install_tornado):
876         (AutoinstallImportHook.greater_than_equal_to_version):
877         (AutoinstallImportHook._install):
878         (AutoinstallImportHook.get_latest_pypi_url):
879         (AutoinstallImportHook.install_binary):
880         (autoinstall_everything):
881         (get_os_info):
882
883 2018-06-25  Jon Lee  <jonlee@apple.com>
884
885         [MotionMark] Add support for version numbers
886         https://bugs.webkit.org/show_bug.cgi?id=186479
887
888         Reviewed by Said Abou-Hallawa.
889
890         Add support for displaying the version number as well as including it in the JSON results.
891
892         When loading the front page, script replaces any element with classname version with the
893         version number of the benchmark, which is stored in Strings.version.
894
895         The JSON structure for the results includes a new version property:
896             {
897               "version": "1.0",
898               "options": { ... },
899               "data": [ ... ]
900             }
901
902         When dragging a results file, the version listed will come from the JSON file. Older
903         results will not have had the version property, in which case it will default to "1.0".
904
905         * MotionMark/index.html: Update title to some other default. Script will update it.
906         Include the version number in the logo title.
907         * MotionMark/developer.html: Ditto.
908         * MotionMark/about.html: Ditto.
909
910         * MotionMark/resources/runner/motionmark.js:
911         (ResultsDashboard): Update constructor to include version. This is used when serializing
912         results out to JSON, and displaying the results panel in developer mode.
913         (ResultsDashboard._processData): When running the benchmark, include benchmark version string
914         in the results object.
915         (ResultsDashboard.version):
916         (window.benchmarkRunnerClient.willStartFirstIteration): When running the benchmark, pass the
917         benchmark version string to the dashboard, which holds the results.
918         (window.sectionsManager.setSectionVersion): Helper function to update the element in the
919         section with the class name version.
920         (window.benchmarkController.initialize): Populate all DOM elements with class name "version"
921         with the version string. Update the page title.
922         (window.benchmarkController.showResults): When showing results, update the version string
923         based on what is included in the JSON results, which would be the same as the benchmark version.
924         * MotionMark/resources/runner/motionmark.css: Include missing copyright. Wrap the SVG logo
925         in a div and include the version string.
926         * MotionMark/resources/strings.js: Add strings for the page title template, and the version.
927
928         * MotionMark/resources/debug-runner/motionmark.css:
929         * MotionMark/resources/debug-runner/motionmark.js:
930         (window.benchmarkRunnerClient.willStartFirstIteration): When running the benchmark, pass the
931         benchmark version string to the dashboard, which holds the results.
932         (window.benchmarkController.initialize): Populate all DOM elements with class name "version"
933         with the version string. Update the page title. When dragging in JSON results, look for
934         version to pass to the dashboard. If it doesn't exist, default to "1.0".
935         (window.benchmarkController.showResults): When showing results, update the version string
936         based on what is included in the JSON results, instead of the current benchmark version.
937         * MotionMark/resources/debug-runner/tests.js: Update page title template.
938
939 2018-06-08  Jon Lee  <jonlee@apple.com>
940
941         [MotionMark] Rename Suits test files
942         https://bugs.webkit.org/show_bug.cgi?id=186447
943
944         Reviewed by Said Abou-Hallawa.
945
946         * MotionMark/resources/runner/tests.js:
947         * MotionMark/tests/master/resources/suits.js: Renamed from PerformanceTests/MotionMark/tests/master/resources/svg-particles.js.
948         * MotionMark/tests/master/suits.html: Renamed from PerformanceTests/MotionMark/tests/master/svg-particles.html.
949         * MotionMark/tests/svg/suits.html:
950
951 2018-06-08  Jon Lee  <jonlee@apple.com>
952
953         Add sub-tests based on Suits
954         https://bugs.webkit.org/show_bug.cgi?id=186260
955
956         Reviewed by Said Abou-Hallawa.
957
958         Add a new developer Suits suite with sub-tests that isolate parts of each particle.
959         The sub-tests are:
960             - Particles using only clip paths
961             - Particles using only shapes
962             - Particles that have no gradients
963             - Particles that have no rotation
964             - Particles that do not move around at all (but all of the physics calculations are
965             still performed)
966
967         * MotionMark/resources/debug-runner/tests.js:
968         * MotionMark/tests/master/resources/svg-particles.js: Rename the stage, particle, and
969         benchmark to "Suits" from "SVG". Change SuitsParticle so that we guarantee 50% clip and
970         shape paths rather than relying on random chance. Wrap a check around creation of the
971         gradient element, and use a simple fill color when we aren't using a gradient.
972         * MotionMark/tests/svg/suits.html: Added.
973         * MotionMark/tests/svg/suits.js: Added.
974         Look for the query string and set the particle based on what is selected.
975
976 2018-06-06  Jon Lee  <jonlee@apple.com>
977
978         Allow the ramp controller to run tests that take less time than the initial ramp-up phase
979         https://bugs.webkit.org/show_bug.cgi?id=186257
980
981         Reviewed by Said Abou-Hallawa.
982
983         * MotionMark/tests/resources/main.js: Extend the desired end timestamp when ramp-up occurs.
984         Previously the controller assumed that the duration of the test was always longer than the
985         time it took to figure out the order of magnitude of particles to render. When that range
986         is determined, the end timestamp is then extended. If the duration is too short, the controller
987         would throw an exception. The fix is to continue extending the timestamp every time the order of
988         magnitude tiers up.
989
990         In general testing with really short durations isn't practical, but sometimes it is
991         desired for debugging.
992
993         To avoid confusion of the private variables, I renamed Benchmark._startTimestamp to
994         Benchmark._benchmarkStartTimestamp, to disambiguate from Controller._startTimestamp.
995         Benchmark._startTimestamp is set once and never changed, after the initial 100ms warm-up.
996         Controller._startTimestamp is initialized to 0 (which means "not initialized"), and then after
997         the warm up is complete, set in Controller.start() to the same wall clock timestamp, and never
998         changed afterwards.
999
1000 2018-06-06  Jon Lee  <jonlee@apple.com>
1001
1002         Remove unneeded data processing in MotionMark
1003         https://bugs.webkit.org/show_bug.cgi?id=186256
1004
1005         Reviewed by Said Abou-Hallawa.
1006
1007         Remove calculation of average frame rate based on multiple samples at a given complexity.
1008         It is not used in the calculation of the score, and is just extra work to do at the end
1009         of a test.
1010
1011         * MotionMark/developer.html: Remove options to show average data and regression based on
1012         that data.
1013         * MotionMark/resources/debug-runner/graph.js: Remove data. Update the time graph that
1014         shows the relationship between the break point in the regression against the complexity
1015         graph.
1016         * MotionMark/resources/debug-runner/motionmark.css: Make the confidence intervals easier
1017         to see.
1018         * MotionMark/resources/runner/motionmark.js: Simplify score calculation now that we are
1019         only calculating regressions on the raw data. We were calculating it based on the averages,
1020         but that was just for analysis, and not used in the actual score. Get rid of the
1021         |complexitySamples| local variable.
1022         * MotionMark/resources/strings.js: Remove unneeded string constant.
1023         * MotionMark/tests/resources/main.js:
1024         (processSamples): Refactor so that more of it can be shared between Controller and
1025         RampController. It also avoids processing the raw samples (controllerSamples) twice for
1026         the ramp controller.
1027         (_processComplexitySamples): Remove logic to calculate averages based on complexity.
1028         (_processMarks): Split this out from the old processSamples.
1029         (_processControllerSamples): Split this out from the old processSamples.
1030
1031 2018-06-06  Jon Lee  <jonlee@apple.com>
1032
1033         Strip out more characters when creating permalinks
1034         https://bugs.webkit.org/show_bug.cgi?id=186259
1035
1036         Reviewed by Said Abou-Hallawa.
1037
1038         Tests and suites may have names that make permalinks to the tests less readable when
1039         shared. Expand the set of characters that are stripped out of the names.
1040
1041         * MotionMark/resources/debug-runner/motionmark.js: Refactor to call
1042         stripUnwantedCharactersForURL. For existing links, decode the suite and test names.
1043         * MotionMark/resources/extensions.js:
1044         (Utilities.stripUnwantedCharactersForURL): Rename from stripNonASCIICharacters.
1045         Remove any non-alphanumeric character.
1046
1047 2018-06-04  Jon Lee  <jonlee@apple.com>
1048
1049         Remove unnecessary MotionMark controllers
1050         https://bugs.webkit.org/show_bug.cgi?id=186255
1051
1052         Reviewed by Said Abou-Hallawa.
1053
1054         Get rid of the ramp30 and the fixed-with-a-step controllers, which aren't used for testing
1055         or debugging.
1056
1057         * MotionMark/developer.html: Move the "ramp" option as first, since that is the default
1058         controller for the benchmark.
1059         * MotionMark/resources/debug-runner/motionmark.js:
1060         * MotionMark/resources/runner/motionmark.js: Added missing copyright notice.
1061         * MotionMark/tests/resources/main.js:
1062
1063 2018-05-25  Myles C. Maxfield  <mmaxfield@apple.com>
1064
1065         Improve the performance of Font::canRenderCombiningCharacterSequence()
1066         https://bugs.webkit.org/show_bug.cgi?id=185933
1067
1068         Reviewed by Ryosuke Niwa.
1069
1070         * Layout/ComplexLongUnique.html: Added.
1071
1072 2018-05-25  Saam Barati  <sbarati@apple.com>
1073
1074         Have a memory test where we can validate JSCs mini memory mode
1075         https://bugs.webkit.org/show_bug.cgi?id=185932
1076
1077         Reviewed by Mark Lam.
1078
1079         We add a directory here with the contents of the testmem benchmark.
1080         To run it, use `Tools/Scripts/run-testmem`. To add new tests in the future,
1081         you just need to add JS files to this directory.
1082
1083         * testmem: Added.
1084         * testmem/air.js: Added.
1085         * testmem/base64.js: Added.
1086         * testmem/basic.js: Added.
1087         * testmem/box2d.js: Added.
1088         * testmem/crypto-md5.js: Added.
1089         * testmem/date-format-tofte.js: Added.
1090         * testmem/earley-boyer.js: Added.
1091         * testmem/hash-map.js: Added.
1092         * testmem/regex-dna.js: Added.
1093         * testmem/splay.js: Added.
1094         * testmem/tagcloud.js: Added.
1095
1096 2018-05-22  Ryan Haddad  <ryanhaddad@apple.com>
1097
1098         Unreviewed, rolling out r232052.
1099
1100         Breaks internal builds.
1101
1102         Reverted changeset:
1103
1104         "Use more C++17"
1105         https://bugs.webkit.org/show_bug.cgi?id=185176
1106         https://trac.webkit.org/changeset/232052
1107
1108 2018-05-21  Yusuke Suzuki  <utatane.tea@gmail.com>
1109
1110         Use more C++17
1111         https://bugs.webkit.org/show_bug.cgi?id=185176
1112
1113         Reviewed by JF Bastien.
1114
1115         * MallocBench/MallocBench.xcodeproj/project.pbxproj:
1116         * MediaTime/Configurations/Base.xcconfig:
1117         * MediaTime/MediaTime.xcodeproj/project.pbxproj:
1118
1119 2018-04-30  Myles C. Maxfield  <mmaxfield@apple.com>
1120
1121         Improve the performance of FontCascadeDescription's effectiveFamilies
1122         https://bugs.webkit.org/show_bug.cgi?id=184720
1123
1124         Reviewed by Simon Fraser.
1125
1126         This performance test calls SystemFontDatabase::systemFontCascadeList() around 2,000,000 times (before
1127         this patch is applied), which is roughly equivalent to the page we found the performance problem on.
1128         The calling pattern is roughly equivalent in this test.
1129
1130         * Layout/system-ui.html: Added.
1131
1132 2018-03-08  Antti Koivisto  <antti@apple.com>
1133
1134         Update StyleBench version number in page title to 0.3
1135
1136         * StyleBench/index.html:
1137
1138         There has been a bunch of changes, most notably the addition of attribute selector test step.
1139
1140 2018-02-16  Dean Jackson  <dino@apple.com>
1141
1142         Use OPENGL macros to be more clear about which OpenGL/ES WebGL uses on Cocoa
1143         https://bugs.webkit.org/show_bug.cgi?id=182894
1144
1145         Reviewed by Tim Horton.
1146
1147         Rename OPENGL_ES_2 to OPENGL_ES.
1148
1149         * StitchMarker/wtf/Platform.h:
1150
1151 2018-02-09  Ryosuke Niwa  <rniwa@webkit.org>
1152
1153         Make run-perf-tests work with Speedometer 2.0 and re-enable the test
1154         https://bugs.webkit.org/show_bug.cgi?id=182088
1155
1156         Reviewed by Antti Koivisto.
1157
1158         This patch updates the test harness to report new metrics of Speedometer 2.0.
1159
1160         Replaced the total time by the geometric mean of the time spent in each suite, and added scores
1161         as a metric in addition to time. Also, updated the PerfTestRunner harness and the results template
1162         to support "Score" metric with "pt" as its unit.
1163
1164         * Skipped: Unskipped the test.
1165         * Speedometer/resources/benchmark-report.js:
1166         (window.benchmarkClient.willStartFirstIteration..createTest): Added the unit as an optional argument
1167         to report the score in addition to time. Also report the geomean of time instead of the total time.
1168         (window.benchmarkClient.willStartFirstIteration): Report the geomean of time.
1169         (window.benchmarkClient.didRunSuites): Record the entire measuredValues instead of just tests.
1170         (window.benchmarkClient.didFinishLastIteration): Report the scores.
1171
1172 2018-02-09  Ross Kirsling  <ross.kirsling@sony.com>
1173
1174         Use REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR on any non-Windows port.
1175         https://bugs.webkit.org/show_bug.cgi?id=182623
1176
1177         Reviewed by Alex Christensen.
1178
1179         * StitchMarker/wtf/Platform.h:
1180         Simplify #if.
1181
1182 2018-02-01  Antti Koivisto  <antti@apple.com>
1183
1184         StyleBench: Attribute selectors and other improvements
1185         https://bugs.webkit.org/show_bug.cgi?id=182387
1186
1187         Reviewed by Joseph Pecoraro.
1188
1189         - Add some attributes to elements in all tests
1190         - Add some attribute selectors to stylesheets in all tests
1191         - Also add some * selectors to all stylesheets.
1192         - Add attribute mutation step to all suites
1193         - Make test steps do more mutations (25->100) and reduce the number of steps to keep testing time in check.
1194           Too fast steps were running into timer resolution limits.
1195
1196         * StyleBench/resources/style-bench.js:
1197         (defaultConfiguration):
1198         (prototype.randomAttributeName):
1199         (prototype.randomAttributeValue):
1200         (prototype.randomAttributeSelector):
1201         (prototype.makeCompoundSelector):
1202         (prototype.makeElement):
1203         (prototype.addClasses):
1204         (prototype.removeClasses):
1205         (prototype.mutateAttributes):
1206         (prototype.async.runForever):
1207         * StyleBench/resources/tests.js:
1208         (makeSteps):
1209         (makeSuite):
1210
1211 2018-02-01  Geoffrey Garen  <ggaren@apple.com>
1212
1213         Make MallocBench easier for non-WebKit engineers to run
1214         https://bugs.webkit.org/show_bug.cgi?id=182415
1215
1216         Reviewed by Saam Barati.
1217
1218         * MallocBench/MallocBench.xcodeproj/project.pbxproj: Use c++14 so we
1219         can make_unique.
1220
1221         Specify that we support all Darwin platforms so you can test them.
1222
1223         * MallocBench/run-malloc-benchmarks: Specify the path to MallocBench
1224         and libmbmalloc explicitly, rather than computing them implicitly
1225         using webkitdirs. Non-WebKit folks don't have the directory structure
1226         required by webkitdirs.
1227
1228         Remove Linux-specific and cmake-specific behaviors because we only
1229         needed them in the world of implicit path computation.
1230
1231 2018-01-31  Ryosuke Niwa  <rniwa@webkit.org>
1232
1233         Make run-perf-tests work with StyleBench and re-enable it
1234         https://bugs.webkit.org/show_bug.cgi?id=182322
1235
1236         Reviewed by Antti Koivisto.
1237
1238         This patch updates the test harness to report new metrics of StyleBench.
1239
1240         Replaced the total time by the geometric mean of the time spent in each suite, and added scores
1241         as a metric in addition to time. Also, updated the PerfTestRunner harness and the results template
1242         to support "Score" metric with "pt" as its unit.
1243
1244         * Skipped: Unskipped the test.
1245         * StyleBench/resources/benchmark-report.js:
1246         (window.benchmarkClient.willStartFirstIteration..createTest): Added the unit as an optional argument
1247         to report the score in addition to time. Also report the geomean of time instead of the total time.
1248         (window.benchmarkClient.willStartFirstIteration): Report the geomean of time.
1249         (window.benchmarkClient.didRunSuites): Record the entire measuredValues instead of just tests.
1250         (window.benchmarkClient.didFinishLastIteration): Report the scores.
1251         * resources/results-template.html: Added "Score" as a metric and "pt" as its unit.
1252         * resources/runner.js:
1253         (PerfTestRunner..finish): Ditto.
1254
1255 2018-01-30  Ryosuke Niwa  <rniwa@webkit.org>
1256
1257         StyleBench: Generate more mutation steps
1258         https://bugs.webkit.org/show_bug.cgi?id=182291
1259
1260         Rubber-stamped by Antti Koivisto
1261
1262         Use zero-based index instead of one-based index.
1263
1264         * StyleBench/resources/tests.js:
1265         (makeSteps):
1266
1267 2018-01-30  Antti Koivisto  <antti@apple.com>
1268
1269         StyleBench: Generate more mutation steps
1270         https://bugs.webkit.org/show_bug.cgi?id=182291
1271
1272         Reviewed by Ryosuke Niwa.
1273
1274         The test should be doing multiple rounds of mutations in a single document to test what is supposed to test (like it did before r227756).
1275         This also makes test results more stable and less dependent on possible first-time costs.
1276
1277         * StyleBench/resources/benchmark-runner.js:
1278
1279         Adjust correctionFactor to match the new steps count. With 1.5 Firefox is ~72rpm.
1280
1281         * StyleBench/resources/tests.js:
1282         (makeSteps):
1283
1284         Generate 10 rounds of class/element mutation steps.
1285         Give each generated step unique name so reporting works.
1286         Make individual steps do fewer mutations.
1287
1288 2018-01-29  Antti Koivisto  <antti@apple.com>
1289
1290         StyleBench: Remove : from a test name
1291         https://bugs.webkit.org/show_bug.cgi?id=182258
1292
1293         Reviewed by Ryosuke Niwa.
1294
1295         It breaks reporting.
1296
1297         * StyleBench/resources/style-bench.js:
1298         (nthPseudoClassConfiguration):
1299
1300 2018-01-29  Ryosuke Niwa  <rniwa@webkit.org>
1301
1302         Temporarily skip StyleBench until webkit.org/b/182088 is fixed.
1303
1304         * Skipped:
1305
1306 2018-01-29  Ryosuke Niwa  <rniwa@webkit.org>
1307
1308         Make StyleBench compatible with run-benchmark and run-perf-tests
1309         https://bugs.webkit.org/show_bug.cgi?id=182262
1310
1311         Reviewed by Antti Koivisto.
1312
1313         Copied resource files referenced from Speedometer directory since run-benchmark needs to be able
1314         to checkout each benchmark separately.
1315
1316         Removed the code to create tests of the same name five times in makeSteps since this
1317         won't be compatible with either run-benchmark or run-perf-tests.
1318
1319         * StyleBench/index.html: Removed the code to show warnings for local files since run-benchmark
1320         doesn't use HTTP server in WebDriver mode.
1321         * StyleBench/resources/benchmark-report.js: Copied from resources/benchmark-report.js.
1322         * StyleBench/resources/benchmark-runner.js: Copied from resources/benchmark-runner.js.
1323         (BenchmarkRunner.prototype._finalize): Use the correction factor of 8 instead of 5 in StyleBench.
1324         * StyleBench/resources/gauge.png: Copied from resources/gauge.png.
1325         * StyleBench/resources/gauge@2x.png: Copied from resources/gauge@2x.png.
1326         * StyleBench/resources/main.css: Copied from resources/main.css.
1327         * StyleBench/resources/main.js: Copied from resources/main.js.
1328         * StyleBench/resources/tests.js:
1329         (makeSteps): Only make each test once.
1330
1331 2018-01-26  Chris Nardi  <cnardi@chromium.org>
1332
1333         Addressing post-review comments after r226614
1334         https://bugs.webkit.org/show_bug.cgi?id=182151
1335
1336         Reviewed by Myles C. Maxfield.
1337
1338         * StitchMarker/wtf/text/StringImpl.h:
1339         (WTF::isSpaceOrNewline):
1340         * StitchMarker/wtf/text/TextBreakIterator.cpp:
1341         (WTF::numCodeUnitsInGraphemeClusters):
1342         * StitchMarker/wtf/text/TextBreakIterator.h:
1343
1344 2018-01-22  Antti Koivisto  <antti@apple.com>
1345
1346         StyleBench: Separate test for :nth pseudo classes
1347         https://bugs.webkit.org/show_bug.cgi?id=181932
1348
1349         Reviewed by Sam Weinig.
1350
1351         Optimization strategies for nth are different from other structural pseudo classes (:first-child etc). Move them to a separate test.
1352
1353         * StyleBench/resources/style-bench.js:
1354         (structuralPseudoClassConfiguration):
1355         (nthPseudoClassConfiguration):
1356
1357             Add a new configuration.
1358
1359         (predefinedConfigurations):
1360         (pseudoClassConfiguration): Deleted.
1361
1362 2018-01-17  Ryosuke Niwa  <rniwa@webkit.org>
1363
1364         Temporarily skip Speedometer until we fix the metrics.
1365
1366         * Skipped:
1367
1368 2018-01-16  Alex Christensen  <achristensen@webkit.org>
1369
1370         Fix Mac CMake build after r222900
1371
1372         * MallocBench/MallocBench/CMakeLists.txt:
1373         The mbmalloc target doesn't exist if we're not in developer mode, so only use it if we are.
1374
1375 2018-01-09  Ryosuke Niwa  <rniwa@webkit.org>
1376
1377         Speedometer 2.0: Update the About page.
1378         https://bugs.webkit.org/show_bug.cgi?id=175918
1379
1380         Reviewed by Keith Miller.
1381
1382         Updated the about page for Speedometer 2.0.
1383
1384         * Speedometer/index.html:
1385
1386 == Rolled over to ChangeLog-2018-01-01 ==