RESOLVED FIXED Bug 154325
[JSC] Remove the overflow check on ArithAbs when possible
https://bugs.webkit.org/show_bug.cgi?id=154325
Summary [JSC] Remove the overflow check on ArithAbs when possible
Benjamin Poulain
Reported 2016-02-16 21:13:52 PST
[JSC] Remove the overflow check on ArithAbs when possible
Attachments
Patch (14.47 KB, patch)
2016-02-16 21:21 PST, Benjamin Poulain
no flags
Benjamin Poulain
Comment 1 2016-02-16 21:21:07 PST
Benjamin Poulain
Comment 2 2016-02-16 21:22:55 PST
About 1% on gaussian-blur. Neutral elsewhere. Conf#1 Conf#2 SunSpider: 3d-cube 4.8852+-0.0913 ? 4.9328+-0.1325 ? 3d-morph 5.4792+-0.1419 5.4662+-0.0827 3d-raytrace 5.6336+-0.0367 ? 5.6627+-0.0506 ? access-binary-trees 2.2280+-0.1050 2.2134+-0.0759 access-fannkuch 6.0196+-0.0881 ? 6.0701+-0.0785 ? access-nbody 2.7521+-0.1064 ? 2.9307+-0.2636 ? might be 1.0649x slower access-nsieve 3.2474+-0.0860 ? 3.3969+-0.1118 ? might be 1.0460x slower bitops-3bit-bits-in-byte 1.1719+-0.0139 ? 1.2097+-0.0258 ? might be 1.0322x slower bitops-bits-in-byte 3.2384+-0.0499 3.2269+-0.0372 bitops-bitwise-and 2.0868+-0.0539 2.0597+-0.0322 might be 1.0131x faster bitops-nsieve-bits 3.0554+-0.0537 ? 3.0681+-0.0652 ? controlflow-recursive 2.3878+-0.0264 ? 2.4110+-0.0278 ? crypto-aes 4.1863+-0.1245 4.1284+-0.0360 might be 1.0140x faster crypto-md5 2.6582+-0.1438 2.6224+-0.0352 might be 1.0136x faster crypto-sha1 2.3763+-0.0208 ? 2.4676+-0.1245 ? might be 1.0384x slower date-format-tofte 7.3401+-0.3186 7.2486+-0.2181 might be 1.0126x faster date-format-xparb 4.8938+-0.1406 4.8368+-0.1926 might be 1.0118x faster math-cordic 3.0269+-0.0445 ? 3.0382+-0.0701 ? math-partial-sums 5.0036+-0.1445 5.0022+-0.1835 math-spectral-norm 2.0618+-0.0267 2.0421+-0.0326 regexp-dna 6.2351+-0.2049 6.2270+-0.1641 string-base64 4.6818+-0.2319 4.6268+-0.0718 might be 1.0119x faster string-fasta 6.0590+-0.1843 ? 6.2068+-0.2719 ? might be 1.0244x slower string-tagcloud 8.5210+-0.3996 8.3247+-0.1083 might be 1.0236x faster string-unpack-code 19.8429+-0.8882 19.4293+-0.9452 might be 1.0213x faster string-validate-input 4.5056+-0.1359 4.4980+-0.1766 <arithmetic> 4.7530+-0.0369 4.7441+-0.0556 might be 1.0019x faster Conf#1 Conf#2 Octane: encrypt 0.16671+-0.00106 ? 0.16685+-0.00107 ? decrypt 2.91460+-0.00975 ? 2.93072+-0.02343 ? deltablue x2 0.14030+-0.00226 0.13972+-0.00153 earley 0.29154+-0.00167 0.29101+-0.00171 boyer 4.93106+-0.01808 4.86143+-0.09170 might be 1.0143x faster navier-stokes x2 5.04207+-0.02320 ? 5.05507+-0.02160 ? raytrace x2 0.91352+-0.00406 ? 0.91421+-0.00534 ? richards x2 0.08400+-0.00066 0.08392+-0.00053 splay x2 0.34998+-0.00302 0.34869+-0.00271 regexp x2 25.27832+-0.13485 25.20888+-0.15894 pdfjs x2 38.44316+-0.15362 ? 38.67179+-0.16234 ? mandreel x2 44.68798+-0.16031 ? 44.87991+-0.22278 ? gbemu x2 25.59351+-0.12919 ? 25.64263+-0.16530 ? closure 0.57957+-0.00316 ? 0.58092+-0.00318 ? jquery 7.55344+-0.04260 ? 7.55806+-0.02417 ? box2d x2 9.45053+-0.03911 ? 9.49386+-0.05957 ? zlib x2 388.87441+-8.38504 ? 391.93851+-8.38512 ? typescript x2 674.75188+-4.74647 673.14893+-5.30719 <geometric> 5.37967+-0.01471 ? 5.38340+-0.01215 ? might be 1.0007x slower Conf#1 Conf#2 Kraken: ai-astar 98.396+-1.130 96.892+-0.786 might be 1.0155x faster audio-beat-detection 46.954+-0.824 ? 47.703+-0.611 ? might be 1.0159x slower audio-dft 99.965+-1.460 ? 100.517+-0.757 ? audio-fft 35.679+-0.037 ? 36.137+-0.737 ? might be 1.0128x slower audio-oscillator 50.258+-0.968 49.872+-0.598 imaging-darkroom 61.414+-0.538 61.397+-0.540 imaging-desaturate 45.678+-0.408 ? 45.916+-0.500 ? imaging-gaussian-blur 72.446+-0.706 71.673+-0.526 might be 1.0108x faster json-parse-financial 37.368+-0.449 36.998+-0.290 json-stringify-tinderbox 24.570+-1.302 23.562+-0.547 might be 1.0428x faster stanford-crypto-aes 41.861+-0.883 41.510+-0.315 stanford-crypto-ccm 38.282+-0.915 37.509+-0.475 might be 1.0206x faster stanford-crypto-pbkdf2 104.535+-1.080 104.453+-0.999 stanford-crypto-sha256-iterative 39.596+-0.348 39.466+-0.486 <arithmetic> 56.929+-0.213 56.686+-0.136 might be 1.0043x faster Conf#1 Conf#2 AsmBench: bigfib.cpp 455.5875+-4.6346 452.5373+-4.6232 cray.c 376.2461+-1.7561 ? 377.4903+-1.7701 ? dry.c 485.6156+-49.3191 470.5792+-41.0831 might be 1.0320x faster FloatMM.c 731.1863+-7.4604 ? 732.6157+-8.7676 ? gcc-loops.cpp 3727.8752+-34.9629 ? 3727.9101+-33.5049 ? n-body.c 833.2843+-4.5505 ? 833.9909+-5.3119 ? Quicksort.c 414.6915+-3.9985 ? 416.5589+-2.5578 ? stepanov_container.cpp 3404.4785+-13.0150 3397.8032+-23.7670 Towers.c 275.5373+-1.5047 ? 276.8855+-2.0215 ? <geometric> 747.6155+-9.1220 745.7240+-6.6491 might be 1.0025x faster Conf#1 Conf#2 Geomean of preferred means: <scaled-result> 32.2974+-0.1299 32.2328+-0.0917 might be 1.0020x faster
Filip Pizlo
Comment 3 2016-02-17 14:01:58 PST
Comment on attachment 271533 [details] Patch Nice!!
WebKit Commit Bot
Comment 4 2016-02-17 15:35:10 PST
Comment on attachment 271533 [details] Patch Clearing flags on attachment: 271533 Committed r196726: <http://trac.webkit.org/changeset/196726>
WebKit Commit Bot
Comment 5 2016-02-17 15:35:13 PST
All reviewed patches have been landed. Closing bug.
Note You need to log in before you can comment on or make changes to this bug.