RESOLVED FIXED Bug 154327
[JSC] ARM64: Support the immediate format used for bit operations in Air
https://bugs.webkit.org/show_bug.cgi?id=154327
Summary [JSC] ARM64: Support the immediate format used for bit operations in Air
Benjamin Poulain
Reported 2016-02-16 21:24:23 PST
[JSC] ARM64: Support the immediate format used for bit operations in Air
Attachments
Patch (34.44 KB, patch)
2016-02-16 21:27 PST, Benjamin Poulain
no flags
Patch (61.15 KB, patch)
2016-02-17 15:00 PST, Benjamin Poulain
no flags
Benjamin Poulain
Comment 1 2016-02-16 21:27:28 PST
Benjamin Poulain
Comment 2 2016-02-16 21:27:50 PST
Conf#1 Conf#2 SunSpider: 3d-cube 10.6259+-0.1609 ? 10.7039+-0.2462 ? 3d-morph 8.4937+-0.1152 8.4609+-0.1249 3d-raytrace 9.9026+-0.7400 9.3949+-0.2922 might be 1.0540x faster access-binary-trees 4.3587+-0.0779 4.1966+-0.3330 might be 1.0386x faster access-fannkuch 12.4793+-0.5196 12.1708+-0.3690 might be 1.0253x faster access-nbody 4.8353+-0.0709 4.8161+-0.0375 access-nsieve 3.6112+-0.0495 3.5861+-0.0552 bitops-3bit-bits-in-byte 1.8573+-0.1579 1.8478+-0.1336 bitops-bits-in-byte 4.3606+-0.0282 4.3381+-0.0277 bitops-bitwise-and 3.2670+-0.0584 ? 3.2806+-0.0428 ? bitops-nsieve-bits 5.9529+-0.0428 ? 5.9532+-0.0327 ? controlflow-recursive 3.5228+-0.2217 3.4280+-0.0583 might be 1.0277x faster crypto-aes 6.6439+-0.0956 6.5609+-0.0582 might be 1.0126x faster crypto-md5 4.4277+-0.2567 ? 4.4388+-0.2313 ? crypto-sha1 3.8207+-0.0507 ? 3.8247+-0.0385 ? date-format-tofte 11.1618+-0.1076 ? 11.2150+-0.0481 ? date-format-xparb 7.4947+-0.0688 7.4224+-0.0830 math-cordic 5.5132+-0.0845 5.4836+-0.0885 math-partial-sums 11.5699+-0.0597 ? 11.6865+-0.1306 ? might be 1.0101x slower math-spectral-norm 3.5200+-0.2787 ? 3.6025+-0.2334 ? might be 1.0234x slower regexp-dna 9.9029+-0.0579 ? 9.9549+-0.1013 ? string-base64 6.7249+-0.1021 6.6929+-0.1031 string-fasta 9.8861+-0.5924 9.6616+-0.4019 might be 1.0232x faster string-tagcloud 11.3032+-0.1542 ? 11.3549+-0.1723 ? string-unpack-code 24.2059+-0.1220 ? 24.2663+-0.2522 ? string-validate-input 6.8876+-0.2015 6.8531+-0.1610 <arithmetic> 7.5511+-0.0423 7.5075+-0.0230 might be 1.0058x faster Conf#1 Conf#2 Octane: encrypt 0.19698+-0.00186 ? 0.19813+-0.00134 ? decrypt 3.72593+-0.01081 3.72395+-0.00278 deltablue x2 0.18019+-0.00498 ? 0.18165+-0.00457 ? earley 0.43546+-0.01294 0.42855+-0.01119 might be 1.0161x faster boyer 7.95566+-0.17370 7.78175+-0.20761 might be 1.0223x faster navier-stokes x2 7.19211+-0.01263 ? 7.19258+-0.02032 ? raytrace x2 1.31503+-0.00583 1.30708+-0.01012 richards x2 0.11559+-0.00125 0.11427+-0.00204 might be 1.0116x faster splay x2 0.76936+-0.03372 ? 0.78618+-0.02068 ? might be 1.0219x slower regexp x2 37.57838+-0.21623 ? 37.67172+-0.16530 ? pdfjs x2 58.32623+-1.16359 ? 58.49797+-0.54209 ? mandreel x2 73.32341+-1.01299 73.28475+-1.23368 gbemu x2 47.71401+-3.97012 47.09977+-3.85345 might be 1.0130x faster closure 0.66651+-0.00264 ? 0.66832+-0.00149 ? jquery 9.93205+-0.04019 9.92038+-0.07714 box2d x2 16.32389+-0.10072 16.27720+-0.08044 zlib x2 703.71842+-2.69901 688.32996+-42.49641 might be 1.0224x faster typescript x2 1187.45579+-10.15948 ? 1192.07112+-20.70651 ? <geometric> 8.32988+-0.05431 8.31031+-0.06174 might be 1.0024x faster Conf#1 Conf#2 Kraken: ai-astar 157.554+-0.813 156.646+-0.304 audio-beat-detection 59.781+-1.664 59.194+-0.505 audio-dft 162.053+-7.578 156.984+-4.836 might be 1.0323x faster audio-fft 42.440+-0.828 42.056+-0.112 audio-oscillator 58.044+-0.274 ? 58.233+-0.319 ? imaging-darkroom 69.185+-0.111 ! 69.372+-0.069 ! definitely 1.0027x slower imaging-desaturate 79.319+-1.054 78.860+-0.406 imaging-gaussian-blur 107.445+-0.098 ? 107.495+-0.179 ? json-parse-financial 48.552+-0.214 ^ 48.087+-0.193 ^ definitely 1.0097x faster json-stringify-tinderbox 27.113+-0.126 ? 27.167+-0.275 ? stanford-crypto-aes 58.307+-0.225 ? 58.551+-0.287 ? stanford-crypto-ccm 46.479+-1.266 ? 47.822+-1.995 ? might be 1.0289x slower stanford-crypto-pbkdf2 141.859+-0.350 ^ 139.908+-0.660 ^ definitely 1.0139x faster stanford-crypto-sha256-iterative 51.979+-0.393 51.905+-0.641 <arithmetic> 79.294+-0.555 78.734+-0.391 might be 1.0071x faster Conf#1 Conf#2 AsmBench: bigfib.cpp 661.5652+-32.1260 644.4079+-22.7548 might be 1.0266x faster cray.c 564.2493+-1.7631 ? 564.6086+-1.3027 ? dry.c 473.1734+-4.5009 ? 476.7126+-3.6193 ? FloatMM.c 794.1680+-1.4626 793.7352+-1.9449 gcc-loops.cpp 4619.4386+-10.1248 4608.3054+-5.4025 n-body.c 1770.3392+-0.6187 ! 1774.5906+-3.6078 ! definitely 1.0024x slower Quicksort.c 568.7667+-2.6090 ? 569.0330+-2.8642 ? stepanov_container.cpp 5843.8760+-13.9853 5832.8068+-10.2412 Towers.c 283.6298+-0.8808 283.3585+-0.6973 <geometric> 1008.5199+-5.2776 1006.2609+-4.4662 might be 1.0022x faster Conf#1 Conf#2 Geomean of preferred means: <scaled-result> 47.3567+-0.1022 47.1509+-0.1418 might be 1.0044x faster
Filip Pizlo
Comment 3 2016-02-17 14:03:22 PST
Comment on attachment 271534 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=271534&action=review > Source/JavaScriptCore/b3/air/AirOpcode.opcodes:400 > + arm64: BitImm64, Tmp, Tmp I don't understand this. 1) Does it really support 64-bit immediates? 2) Why can't we use Imm64 in that case?
Benjamin Poulain
Comment 4 2016-02-17 15:00:35 PST
WebKit Commit Bot
Comment 5 2016-02-17 17:38:39 PST
Comment on attachment 271596 [details] Patch Clearing flags on attachment: 271596 Committed r196736: <http://trac.webkit.org/changeset/196736>
WebKit Commit Bot
Comment 6 2016-02-17 17:38:42 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.