RESOLVED FIXED 155063
[JSC] Simplify the overflow check of ArithAbs
https://bugs.webkit.org/show_bug.cgi?id=155063
Summary [JSC] Simplify the overflow check of ArithAbs
Benjamin Poulain
Reported 2016-03-05 02:31:56 PST
[JSC] Simplify the overflow check of ArithAbs
Attachments
Patch (5.85 KB, patch)
2016-03-05 02:34 PST, Benjamin Poulain
no flags
Benjamin Poulain
Comment 1 2016-03-05 02:34:52 PST
Benjamin Poulain
Comment 2 2016-03-06 20:23:46 PST
On Haswell: SunSpider: 3d-cube 4.7856+-0.0548 ? 4.8207+-0.1310 ? 3d-morph 5.3725+-0.1251 5.2825+-0.0559 might be 1.0171x faster 3d-raytrace 5.7417+-0.1170 5.6902+-0.0454 access-binary-trees 2.1692+-0.0313 ? 2.2476+-0.1125 ? might be 1.0361x slower access-fannkuch 6.0703+-0.0753 5.9986+-0.1603 might be 1.0119x faster access-nbody 2.6806+-0.0763 2.6597+-0.0260 access-nsieve 3.0471+-0.0565 ? 3.0496+-0.0470 ? bitops-3bit-bits-in-byte 1.1901+-0.0186 1.1871+-0.0236 bitops-bits-in-byte 3.3331+-0.0262 ? 3.3533+-0.0543 ? bitops-bitwise-and 2.0959+-0.0902 2.0381+-0.0350 might be 1.0283x faster bitops-nsieve-bits 3.1103+-0.1510 3.0497+-0.0304 might be 1.0199x faster controlflow-recursive 2.3931+-0.0362 2.3655+-0.0208 might be 1.0117x faster crypto-aes 4.0649+-0.0620 4.0557+-0.0441 crypto-md5 2.5895+-0.0159 ? 2.6721+-0.1192 ? might be 1.0319x slower crypto-sha1 2.4031+-0.1327 2.3903+-0.0747 date-format-tofte 7.1285+-0.2289 6.8601+-0.0953 might be 1.0391x faster date-format-xparb 4.9558+-0.0749 ? 4.9838+-0.1390 ? math-cordic 2.9353+-0.0206 2.9150+-0.0134 math-partial-sums 4.9730+-0.1306 4.9600+-0.1150 math-spectral-norm 2.0278+-0.0187 ? 2.0440+-0.0279 ? regexp-dna 6.2013+-0.3193 6.1352+-0.2132 might be 1.0108x faster string-base64 4.4610+-0.0545 ? 4.5683+-0.2109 ? might be 1.0240x slower string-fasta 6.0016+-0.1293 6.0001+-0.1553 string-tagcloud 8.4228+-0.3017 8.1113+-0.0398 might be 1.0384x faster string-unpack-code 19.3553+-0.7232 19.1201+-0.6404 might be 1.0123x faster string-validate-input 4.3465+-0.0912 4.2759+-0.0546 might be 1.0165x faster <arithmetic> 4.6868+-0.0315 4.6475+-0.0336 might be 1.0085x faster Conf#1 Conf#2 Octane: encrypt 0.15923+-0.00174 0.15882+-0.00169 decrypt 2.83926+-0.00583 ? 2.85139+-0.01125 ? deltablue x2 0.13966+-0.00679 0.13850+-0.00345 earley 0.28578+-0.00179 0.28479+-0.00109 boyer 4.87358+-0.08566 ? 4.93210+-0.05304 ? might be 1.0120x slower navier-stokes x2 4.93811+-0.01302 4.93421+-0.01598 raytrace x2 0.89026+-0.00184 ? 0.89479+-0.00431 ? richards x2 0.08302+-0.00083 0.08239+-0.00068 splay x2 0.34890+-0.00197 0.34773+-0.00159 regexp x2 19.87283+-0.25684 19.83057+-0.21000 pdfjs x2 39.46175+-0.47671 39.27575+-0.41332 mandreel x2 42.72600+-0.13902 42.50807+-0.15921 gbemu x2 24.78756+-0.19688 24.70680+-0.05377 closure 0.56833+-0.00198 ? 0.56959+-0.00162 ? jquery 7.43524+-0.03975 ? 7.46962+-0.04667 ? box2d x2 9.39669+-0.04391 ? 9.41259+-0.15368 ? zlib x2 386.84209+-5.70594 381.17715+-8.88199 might be 1.0149x faster typescript x2 663.35127+-4.82876 661.21490+-4.90204 <geometric> 5.21782+-0.00943 5.20512+-0.00816 might be 1.0024x faster Conf#1 Conf#2 Kraken: ai-astar 97.569+-1.075 97.545+-2.078 audio-beat-detection 47.329+-0.392 ? 47.369+-0.366 ? audio-dft 96.693+-0.368 ? 97.978+-1.076 ? might be 1.0133x slower audio-fft 35.942+-0.479 35.689+-0.024 audio-oscillator 48.481+-0.169 ? 49.083+-0.980 ? might be 1.0124x slower imaging-darkroom 60.152+-0.129 ? 60.477+-0.766 ? imaging-desaturate 44.467+-0.188 44.348+-0.210 imaging-gaussian-blur 67.439+-1.491 66.710+-1.425 might be 1.0109x faster json-parse-financial 37.286+-1.077 ? 38.065+-2.346 ? might be 1.0209x slower json-stringify-tinderbox 24.492+-0.751 23.682+-0.415 might be 1.0342x faster stanford-crypto-aes 40.248+-0.855 ? 40.647+-1.063 ? stanford-crypto-ccm 36.224+-0.363 ? 36.677+-0.993 ? might be 1.0125x slower stanford-crypto-pbkdf2 101.551+-0.869 101.488+-0.971 stanford-crypto-sha256-iterative 38.680+-0.147 ? 38.882+-0.301 ? <arithmetic> 55.468+-0.213 ? 55.617+-0.285 ? might be 1.0027x slower Conf#1 Conf#2 AsmBench: bigfib.cpp 436.2413+-4.1508 ? 438.4149+-5.2125 ? cray.c 365.9619+-1.8848 365.8913+-2.3726 dry.c 451.3673+-29.6051 441.5889+-30.9445 might be 1.0221x faster FloatMM.c 709.3479+-3.4799 708.3343+-3.6155 gcc-loops.cpp 3672.0742+-8.8953 ? 3684.8484+-16.3618 ? n-body.c 808.3586+-1.3298 ? 810.3794+-2.4229 ? Quicksort.c 395.0697+-1.4128 ? 395.1814+-1.5932 ? stepanov_container.cpp 3289.6397+-13.2463 3277.0521+-14.6003 Towers.c 268.9848+-1.2906 ? 269.0375+-1.3590 ? <geometric> 721.1718+-4.7547 719.8552+-5.2612 might be 1.0018x faster Conf#1 Conf#2 Geomean of preferred means: <scaled-result> 31.4483+-0.0698 31.3699+-0.1122 might be 1.0025x faster
Geoffrey Garen
Comment 3 2016-03-07 09:29:25 PST
Comment on attachment 273080 [details] Patch r=me
WebKit Commit Bot
Comment 4 2016-03-07 10:30:21 PST
Comment on attachment 273080 [details] Patch Clearing flags on attachment: 273080 Committed r197688: <http://trac.webkit.org/changeset/197688>
WebKit Commit Bot
Comment 5 2016-03-07 10:30:25 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.