Bug 150750

Summary: B3 should be able to compile a Patchpoint
Product: WebKit Reporter: Filip Pizlo <fpizlo>
Component: JavaScriptCoreAssignee: Filip Pizlo <fpizlo>
Status: RESOLVED FIXED    
Severity: Normal CC: benjamin, commit-queue, ggaren
Priority: P2    
Version: WebKit Nightly Build   
Hardware: All   
OS: All   
Bug Depends on: 150511    
Bug Blocks: 150279    
Attachments:
Description Flags
the patch ggaren: review+

Filip Pizlo
Reported 2015-10-30 19:21:50 PDT
Yay!
Attachments
the patch (18.52 KB, patch)
2015-11-02 13:53 PST, Filip Pizlo
ggaren: review+
Filip Pizlo
Comment 1 2015-11-02 13:53:32 PST
Created attachment 264624 [details] the patch
WebKit Commit Bot
Comment 2 2015-11-02 13:54:46 PST
Attachment 264624 [details] did not pass style-queue: ERROR: Source/JavaScriptCore/b3/testb3.cpp:1218: Place brace on its own line for function definitions. [whitespace/braces] [4] ERROR: Source/JavaScriptCore/b3/testb3.cpp:1219: Consider using CHECK_EQ instead of CHECK(a == b) [readability/check] [2] ERROR: Source/JavaScriptCore/b3/testb3.cpp:1228: Consider using CHECK_EQ instead of CHECK(a == b) [readability/check] [2] Total errors found: 3 in 13 files If any of these errors are false positives, please file a bug against check-webkit-style.
Geoffrey Garen
Comment 3 2015-11-02 14:09:43 PST
Comment on attachment 264624 [details] the patch View in context: https://bugs.webkit.org/attachment.cgi?id=264624&action=review r=me > Source/JavaScriptCore/b3/B3LowerToAir.cpp:744 > + for (unsigned i = 0; i < patchpointValue->numChildren(); ++i) { > + ValueRep rep; > + if (i < patchpointValue->stackmap.reps().size()) I think you assert below that this condition is true. Is that right? If so, there's no need for this test, since Vector asserts already. (And I think the code would read more clearly without it, since the current code seems to try to handle the difference, until you look really closely.)
Filip Pizlo
Comment 4 2015-11-02 14:14:52 PST
(In reply to comment #3) > Comment on attachment 264624 [details] > the patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=264624&action=review > > r=me > > > Source/JavaScriptCore/b3/B3LowerToAir.cpp:744 > > + for (unsigned i = 0; i < patchpointValue->numChildren(); ++i) { > > + ValueRep rep; > > + if (i < patchpointValue->stackmap.reps().size()) > > I think you assert below that this condition is true. Is that right? I don't believe that I do. The Stackmap::reps() can be left blank, and doing so means that for any child value whose index is beyond bounds of reps(), we assume ValueRep::Any. The idea is that our OSR exit stackmaps will pretty much universally do this, and it saves us some small amount of memory since we don't have to carry around N copies of ValueRep::Any. Hence why this if statement leaves the rep uninitialized if we're out of bounds. The default constructor of ValueRep is ValueRep::Any.
Geoffrey Garen
Comment 5 2015-11-02 14:29:15 PST
> The default constructor of ValueRep is ValueRep::Any. Aha! I missed that.
Filip Pizlo
Comment 6 2015-11-02 14:52:32 PST
I tested performance because I changed BlockInsertionSet. It's fine. Benchmark report for SunSpider, LongSpider, V8Spider, Octane, Kraken, JSRegress, AsmBench, and CompressionBench on shakezilla (MacBookPro11,3). VMs tested: "TipOfTree" at /Volumes/Data/secondary/OpenSource/WebKitBuild/Release/jsc (r191908) "Patchpoint" at /Volumes/Data/primary/OpenSource/WebKitBuild/Release/jsc (r191908) Collected 6 samples per benchmark/VM, with 6 VM invocations per benchmark. Emitted a call to gc() between sample measurements. Used 1 benchmark iteration per VM invocation for warm-up. Used the jsc-specific preciseTime() function to get microsecond-level timing. Reporting benchmark execution times with 95% confidence intervals in milliseconds. TipOfTree Patchpoint SunSpider: 3d-cube 4.6664+-0.1060 ? 4.7774+-0.3676 ? might be 1.0238x slower 3d-morph 5.2342+-0.1878 5.1181+-0.0579 might be 1.0227x faster 3d-raytrace 5.3138+-0.1263 ? 5.3606+-0.1234 ? access-binary-trees 2.2983+-0.3792 2.2324+-0.1103 might be 1.0295x faster access-fannkuch 5.7808+-0.1836 ? 5.8585+-0.2134 ? might be 1.0135x slower access-nbody 2.5413+-0.0403 ? 2.5634+-0.0886 ? access-nsieve 3.0801+-0.0592 ? 3.2312+-0.3625 ? might be 1.0491x slower bitops-3bit-bits-in-byte 1.2864+-0.2166 1.1496+-0.0241 might be 1.1190x faster bitops-bits-in-byte 3.2105+-0.0600 ? 3.2904+-0.2491 ? might be 1.0249x slower bitops-bitwise-and 2.2404+-0.4866 2.0818+-0.2139 might be 1.0762x faster bitops-nsieve-bits 3.0389+-0.1155 ? 3.1216+-0.1874 ? might be 1.0272x slower controlflow-recursive 2.5248+-0.2573 2.4569+-0.0822 might be 1.0276x faster crypto-aes 4.1996+-0.5461 ? 4.2559+-0.4897 ? might be 1.0134x slower crypto-md5 2.5295+-0.1316 2.5131+-0.0351 crypto-sha1 2.6700+-0.5175 2.6600+-0.3465 date-format-tofte 6.8769+-0.5946 6.6881+-0.2249 might be 1.0282x faster date-format-xparb 4.9242+-0.3802 4.7921+-0.4132 might be 1.0276x faster math-cordic 2.8380+-0.1609 ? 2.9093+-0.1838 ? might be 1.0251x slower math-partial-sums 4.8545+-0.0927 4.8081+-0.1583 math-spectral-norm 2.0599+-0.3863 ? 2.0766+-0.2391 ? regexp-dna 6.3150+-0.2064 6.2432+-0.1745 might be 1.0115x faster string-base64 4.3840+-0.2205 4.3821+-0.1703 string-fasta 5.8546+-0.1596 ? 6.2567+-0.5323 ? might be 1.0687x slower string-tagcloud 8.0673+-0.3108 ? 8.3215+-0.6514 ? might be 1.0315x slower string-unpack-code 19.0909+-1.4245 19.0205+-1.2091 string-validate-input 4.4605+-0.1331 ? 4.5785+-0.1848 ? might be 1.0264x slower <arithmetic> 4.6285+-0.0943 ? 4.6441+-0.0877 ? might be 1.0034x slower TipOfTree Patchpoint LongSpider: 3d-cube 796.6695+-5.8853 ? 799.2611+-3.1955 ? 3d-morph 1492.8435+-5.8818 1491.1365+-6.6928 3d-raytrace 602.4497+-3.2692 597.9617+-3.8993 access-binary-trees 797.4349+-4.5993 794.4458+-4.8693 access-fannkuch 291.2711+-6.4831 ? 297.4408+-3.6207 ? might be 1.0212x slower access-nbody 512.1506+-1.4635 ? 512.8748+-1.5770 ? access-nsieve 377.2794+-10.0266 ? 387.7958+-14.0753 ? might be 1.0279x slower bitops-3bit-bits-in-byte 35.9484+-1.9290 34.0252+-0.9349 might be 1.0565x faster bitops-bits-in-byte 84.8417+-8.9962 75.8621+-0.4586 might be 1.1184x faster bitops-nsieve-bits 404.7881+-5.2420 401.4864+-2.6856 controlflow-recursive 431.1915+-0.4495 ? 432.6188+-2.4281 ? crypto-aes 548.6018+-12.7697 ? 555.5884+-2.1708 ? might be 1.0127x slower crypto-md5 481.9193+-39.5275 ? 521.3770+-5.6949 ? might be 1.0819x slower crypto-sha1 661.4811+-5.8879 ? 663.0192+-16.6064 ? date-format-tofte 508.9740+-10.1147 506.3620+-10.7602 date-format-xparb 684.1122+-81.0227 652.5448+-3.9169 might be 1.0484x faster hash-map 149.6751+-2.9510 149.1528+-1.7442 math-cordic 487.1285+-6.7011 482.9140+-0.8476 math-partial-sums 459.3738+-1.0154 458.0676+-1.1225 math-spectral-norm 549.2832+-2.2756 549.1062+-3.0232 string-base64 363.5120+-21.9186 ? 375.0457+-4.4407 ? might be 1.0317x slower string-fasta 353.7400+-3.2671 ? 354.7234+-2.8136 ? string-tagcloud 175.6710+-1.7626 ? 176.3029+-2.4506 ? <geometric> 391.4116+-4.7865 390.4791+-1.6490 might be 1.0024x faster TipOfTree Patchpoint V8Spider: crypto 50.7238+-1.1436 49.8092+-1.2497 might be 1.0184x faster deltablue 75.3816+-2.6854 ? 80.5200+-4.9873 ? might be 1.0682x slower earley-boyer 43.4520+-1.8504 41.3682+-1.8129 might be 1.0504x faster raytrace 29.2585+-0.6828 ? 30.0750+-2.2505 ? might be 1.0279x slower regexp 61.7715+-1.1013 ? 63.3427+-1.0683 ? might be 1.0254x slower richards 53.3081+-0.9143 53.1174+-1.0728 splay 38.4242+-2.0817 37.1762+-1.9050 might be 1.0336x faster <geometric> 48.3038+-0.6444 ? 48.3845+-0.5404 ? might be 1.0017x slower TipOfTree Patchpoint Octane: encrypt 0.15588+-0.00376 ? 0.15617+-0.00300 ? decrypt 2.89361+-0.01914 2.88797+-0.02983 deltablue x2 0.13513+-0.00348 0.13438+-0.00363 earley 0.28413+-0.00407 0.28345+-0.00291 boyer 4.27284+-0.02838 ? 4.33412+-0.07946 ? might be 1.0143x slower navier-stokes x2 4.81460+-0.00831 ? 4.87434+-0.11591 ? might be 1.0124x slower raytrace x2 0.84834+-0.00502 ? 0.85196+-0.00371 ? richards x2 0.08663+-0.00124 0.08605+-0.00079 splay x2 0.34442+-0.00435 ? 0.34765+-0.00451 ? regexp x2 24.24326+-0.35898 ? 24.87817+-0.37447 ? might be 1.0262x slower pdfjs x2 37.20639+-0.37699 ? 37.43573+-0.43754 ? mandreel x2 42.58851+-0.26719 ? 42.76791+-0.59450 ? gbemu x2 29.57808+-0.28562 ? 30.87325+-2.51305 ? might be 1.0438x slower closure 0.58834+-0.00355 0.58593+-0.01197 jquery 7.47679+-0.07565 7.41323+-0.03238 box2d x2 9.30642+-0.03449 ? 9.31964+-0.06339 ? zlib x2 389.87720+-3.66678 385.92372+-19.96750 might be 1.0102x faster typescript x2 670.61271+-7.02671 ? 671.10620+-12.88269 ? <geometric> 5.28757+-0.01741 ? 5.31600+-0.01648 ? might be 1.0054x slower TipOfTree Patchpoint Kraken: ai-astar 128.077+-1.285 ? 128.327+-2.360 ? audio-beat-detection 48.230+-0.150 ? 48.269+-0.406 ? audio-dft 95.835+-0.947 ? 98.299+-1.805 ? might be 1.0257x slower audio-fft 37.020+-2.009 34.914+-0.484 might be 1.0603x faster audio-oscillator 58.036+-1.303 57.624+-0.920 imaging-darkroom 60.263+-1.428 ? 60.479+-1.960 ? imaging-desaturate 48.780+-1.120 ? 49.169+-1.003 ? imaging-gaussian-blur 87.571+-0.503 87.446+-0.755 json-parse-financial 44.621+-16.514 38.500+-0.886 might be 1.1590x faster json-stringify-tinderbox 23.299+-1.238 23.127+-1.160 stanford-crypto-aes 41.848+-0.893 ? 43.346+-2.102 ? might be 1.0358x slower stanford-crypto-ccm 37.462+-2.204 36.972+-1.923 might be 1.0133x faster stanford-crypto-pbkdf2 96.064+-0.781 ? 96.634+-2.093 ? stanford-crypto-sha256-iterative 36.463+-0.571 ? 37.167+-1.202 ? might be 1.0193x slower <arithmetic> 60.255+-1.027 60.020+-0.211 might be 1.0039x faster TipOfTree Patchpoint JSRegress: abc-forward-loop-equal 30.2798+-0.9545 30.0716+-0.9630 abc-postfix-backward-loop 30.6968+-1.0587 ? 31.0806+-2.1152 ? might be 1.0125x slower abc-simple-backward-loop 29.2849+-0.6721 ? 29.9820+-1.0585 ? might be 1.0238x slower abc-simple-forward-loop 30.0102+-1.0835 29.6306+-1.1052 might be 1.0128x faster abc-skippy-loop 21.6175+-0.2864 21.4808+-0.6164 abs-boolean 2.5180+-0.1073 ? 2.5649+-0.1486 ? might be 1.0186x slower adapt-to-double-divide 16.6871+-1.0063 16.6588+-0.7539 aliased-arguments-getbyval 1.3950+-0.4392 1.2090+-0.0789 might be 1.1538x faster allocate-big-object 2.5664+-0.1041 2.5551+-0.1269 arguments-named-and-reflective 10.6411+-0.5123 ? 10.7261+-0.2504 ? arguments-out-of-bounds 9.7341+-0.7896 9.3046+-0.3325 might be 1.0462x faster arguments-strict-mode 9.6617+-0.6435 9.6160+-0.3979 arguments 8.2840+-0.2696 ? 8.3291+-0.2139 ? arity-mismatch-inlining 0.8756+-0.0173 ? 0.9315+-0.0788 ? might be 1.0638x slower array-access-polymorphic-structure 7.3465+-0.2807 7.2098+-0.2486 might be 1.0190x faster array-nonarray-polymorhpic-access 24.6072+-0.7525 ? 24.8260+-0.5419 ? array-prototype-every 77.2719+-2.4550 ? 78.2349+-3.2616 ? might be 1.0125x slower array-prototype-forEach 77.9512+-2.0497 ? 84.2809+-25.4015 ? might be 1.0812x slower array-prototype-map 82.0643+-1.1486 ? 82.0951+-1.3356 ? array-prototype-reduce 72.6243+-1.9076 72.0482+-0.9755 array-prototype-reduceRight 84.5295+-29.4392 75.5300+-5.3608 might be 1.1192x faster array-prototype-some 78.3950+-2.6557 78.0869+-3.3306 array-splice-contiguous 23.9288+-0.9617 23.7514+-1.6205 array-with-double-add 3.5888+-0.0777 ? 3.7055+-0.1565 ? might be 1.0325x slower array-with-double-increment 3.1833+-0.1025 3.1517+-0.0233 might be 1.0101x faster array-with-double-mul-add 4.4684+-0.0546 ? 4.6447+-0.2625 ? might be 1.0394x slower array-with-double-sum 3.3417+-0.2716 3.2287+-0.0802 might be 1.0350x faster array-with-int32-add-sub 6.1862+-0.3022 ? 6.3807+-0.3976 ? might be 1.0314x slower array-with-int32-or-double-sum 3.2929+-0.0818 3.2702+-0.0312 ArrayBuffer-DataView-alloc-large-long-lived 27.6743+-1.5149 26.2963+-1.4817 might be 1.0524x faster ArrayBuffer-DataView-alloc-long-lived 12.7003+-1.4322 11.9641+-0.2401 might be 1.0615x faster ArrayBuffer-Int32Array-byteOffset 3.5346+-0.0225 ? 3.7122+-0.2480 ? might be 1.0502x slower ArrayBuffer-Int8Array-alloc-large-long-lived 26.7909+-1.5145 26.1204+-0.4592 might be 1.0257x faster ArrayBuffer-Int8Array-alloc-long-lived-buffer 20.5479+-1.9865 19.1921+-0.4985 might be 1.0706x faster ArrayBuffer-Int8Array-alloc-long-lived 11.4813+-0.5542 11.4250+-0.5279 ArrayBuffer-Int8Array-alloc 9.8318+-0.9313 9.4812+-0.4413 might be 1.0370x faster arrowfunction-call 11.3534+-0.5863 11.0468+-0.1962 might be 1.0278x faster asmjs_bool_bug 8.2561+-0.3628 8.2043+-0.2874 assign-custom-setter-polymorphic 2.4384+-0.0223 2.4017+-0.0550 might be 1.0152x faster assign-custom-setter 3.3984+-0.0461 3.3954+-0.1300 basic-set 7.7866+-0.4412 7.7314+-0.5894 big-int-mul 3.6635+-0.4273 3.5792+-0.3352 might be 1.0235x faster boolean-test 3.2406+-0.2935 3.0835+-0.0732 might be 1.0509x faster branch-fold 3.8090+-0.4476 3.6683+-0.1002 might be 1.0384x faster branch-on-string-as-boolean 17.6831+-0.5237 16.9892+-1.6338 might be 1.0408x faster by-val-generic 2.3990+-0.1203 ? 2.5260+-0.2718 ? might be 1.0529x slower call-spread-apply 28.4200+-2.3857 27.4289+-0.5801 might be 1.0361x faster call-spread-call 22.3009+-0.9107 22.2610+-1.2123 captured-assignments 0.4303+-0.0111 ? 0.4419+-0.0138 ? might be 1.0270x slower cast-int-to-double 5.0813+-0.1033 5.0618+-0.1184 cell-argument 5.7686+-0.2395 ! 6.5749+-0.5542 ! definitely 1.1398x slower cfg-simplify 2.9414+-0.0619 2.8899+-0.0543 might be 1.0179x faster chain-getter-access 8.4934+-0.4148 8.2233+-0.2403 might be 1.0328x faster cmpeq-obj-to-obj-other 12.7395+-1.0519 11.6607+-1.2113 might be 1.0925x faster constant-test 5.0162+-0.5373 4.7767+-0.1586 might be 1.0501x faster create-lots-of-functions 9.3073+-0.4916 ? 9.7818+-1.1146 ? might be 1.0510x slower cse-new-array-buffer 2.4248+-0.2955 2.3516+-0.1636 might be 1.0311x faster cse-new-array 2.4983+-0.2864 2.4515+-0.2140 might be 1.0191x faster custom-setter-getter-as-put-get-by-id 0.5348+-0.0497 0.5085+-0.0180 might be 1.0517x faster DataView-custom-properties 30.7759+-0.7731 ? 30.8816+-0.8890 ? delay-tear-off-arguments-strictmode 12.7978+-0.6355 ? 13.1747+-0.3159 ? might be 1.0295x slower deltablue-varargs 161.0717+-2.2819 ? 165.2043+-5.1128 ? might be 1.0257x slower destructuring-arguments 164.9314+-6.1243 ? 171.3755+-24.4768 ? might be 1.0391x slower destructuring-parameters-overridden-by-function 0.4786+-0.0460 0.4599+-0.0160 might be 1.0405x faster destructuring-swap 4.7795+-0.0561 ? 4.7855+-0.1238 ? direct-arguments-getbyval 1.1841+-0.0548 ? 1.3700+-0.2833 ? might be 1.1570x slower div-boolean-double 5.4414+-0.1710 5.3363+-0.2395 might be 1.0197x faster div-boolean 8.0946+-0.0826 ? 8.2322+-0.0990 ? might be 1.0170x slower double-get-by-val-out-of-bounds 4.3646+-0.1233 ? 4.5294+-0.2281 ? might be 1.0378x slower double-pollution-getbyval 8.4834+-0.1767 8.4556+-0.1670 double-pollution-putbyoffset 3.7566+-0.2972 ? 3.8818+-0.4537 ? might be 1.0334x slower double-real-use 24.9121+-1.8060 ? 25.8394+-2.4569 ? might be 1.0372x slower double-to-int32-typed-array-no-inline 2.2456+-0.0790 2.1636+-0.0501 might be 1.0379x faster double-to-int32-typed-array 2.1156+-0.0688 2.0625+-0.0285 might be 1.0257x faster double-to-uint32-typed-array-no-inline 2.3191+-0.0981 2.2699+-0.0716 might be 1.0217x faster double-to-uint32-typed-array 2.1423+-0.0608 ? 2.1515+-0.1092 ? elidable-new-object-dag 34.7532+-1.2168 34.5687+-1.1571 elidable-new-object-roflcopter 32.5332+-2.2449 ? 33.9349+-1.6139 ? might be 1.0431x slower elidable-new-object-then-call 32.0546+-1.1533 ? 32.0994+-1.4330 ? elidable-new-object-tree 37.0185+-1.0805 ? 37.9886+-1.5161 ? might be 1.0262x slower empty-string-plus-int 4.7217+-0.0457 4.6713+-0.1371 might be 1.0108x faster emscripten-cube2hash 28.8177+-1.6309 28.1368+-1.9975 might be 1.0242x faster exit-length-on-plain-object 16.1369+-1.4048 15.7916+-0.6716 might be 1.0219x faster external-arguments-getbyval 1.2897+-0.1344 1.2333+-0.1118 might be 1.0457x faster external-arguments-putbyval 2.4555+-0.3915 2.2508+-0.0643 might be 1.0909x faster fixed-typed-array-storage-var-index 1.2555+-0.0610 1.2328+-0.0399 might be 1.0184x faster fixed-typed-array-storage 0.9778+-0.0479 0.9530+-0.0564 might be 1.0260x faster Float32Array-matrix-mult 4.2994+-0.1695 ? 4.3068+-0.2027 ? Float32Array-to-Float64Array-set 48.6423+-0.9129 48.3839+-0.4708 Float64Array-alloc-long-lived 67.3180+-13.4256 60.3144+-1.7927 might be 1.1161x faster Float64Array-to-Int16Array-set 59.7370+-1.3984 59.5059+-1.4374 fold-double-to-int 12.8439+-0.9662 12.6471+-0.8317 might be 1.0156x faster fold-get-by-id-to-multi-get-by-offset-rare-int 11.6381+-1.4089 ? 11.8573+-1.7480 ? might be 1.0188x slower fold-get-by-id-to-multi-get-by-offset 10.0979+-0.6652 9.7350+-0.2362 might be 1.0373x faster fold-multi-get-by-offset-to-get-by-offset 8.9408+-1.9366 8.6942+-1.4726 might be 1.0284x faster fold-multi-get-by-offset-to-poly-get-by-offset 9.0907+-1.0692 8.8854+-0.9625 might be 1.0231x faster fold-multi-put-by-offset-to-poly-put-by-offset 10.3328+-1.0673 ? 10.6828+-1.0147 ? might be 1.0339x slower fold-multi-put-by-offset-to-put-by-offset 11.0420+-0.5728 10.3849+-0.7755 might be 1.0633x faster fold-multi-put-by-offset-to-replace-or-transition-put-by-offset 10.5480+-0.9446 9.9188+-0.8996 might be 1.0634x faster fold-put-by-id-to-multi-put-by-offset 11.6187+-1.4907 11.3736+-1.1619 might be 1.0215x faster fold-put-by-val-with-string-to-multi-put-by-offset 11.5065+-1.2910 10.9512+-0.9867 might be 1.0507x faster fold-put-by-val-with-symbol-to-multi-put-by-offset 11.6887+-1.2708 ? 11.9443+-1.3180 ? might be 1.0219x slower fold-put-structure 7.1498+-1.1523 ? 7.9219+-1.1940 ? might be 1.1080x slower for-of-iterate-array-entries 11.0326+-0.3613 10.9589+-0.4199 for-of-iterate-array-keys 3.6025+-0.1866 ? 3.7816+-0.3264 ? might be 1.0497x slower for-of-iterate-array-values 3.4648+-0.2290 ? 3.5882+-0.1946 ? might be 1.0356x slower fround 18.5129+-0.6214 18.3401+-1.0147 ftl-library-inlining-dataview 59.7749+-2.4182 58.2527+-1.2256 might be 1.0261x faster ftl-library-inlining 102.2798+-1.7529 101.6275+-0.8033 ftl-object-sub 314.7557+-3.0570 314.7105+-5.5243 function-call 11.2377+-0.2146 ? 11.2451+-0.2745 ? function-dot-apply 2.0790+-0.1949 ? 2.1490+-0.1677 ? might be 1.0337x slower function-test 2.8148+-0.2219 ? 2.8730+-0.1286 ? might be 1.0207x slower function-with-eval 83.0162+-2.2574 80.9758+-0.7701 might be 1.0252x faster gcse-poly-get-less-obvious 24.7875+-2.9674 23.3556+-2.0450 might be 1.0613x faster gcse-poly-get 23.3918+-3.2521 22.1328+-2.6202 might be 1.0569x faster gcse 3.4930+-0.1691 3.4544+-0.1136 might be 1.0112x faster get-by-id-bimorphic-check-structure-elimination-simple 2.6015+-0.0758 ? 2.6926+-0.1214 ? might be 1.0350x slower get-by-id-bimorphic-check-structure-elimination 4.8891+-0.3889 ? 5.0537+-0.4777 ? might be 1.0337x slower get-by-id-chain-from-try-block 2.4782+-0.0490 ^ 2.4050+-0.0226 ^ definitely 1.0305x faster get-by-id-check-structure-elimination 3.9931+-0.2235 3.9030+-0.0679 might be 1.0231x faster get-by-id-proto-or-self 17.1403+-2.1356 16.4069+-1.3480 might be 1.0447x faster get-by-id-quadmorphic-check-structure-elimination-simple 2.9517+-0.1303 ? 3.0262+-0.3776 ? might be 1.0252x slower get-by-id-self-or-proto 16.9617+-1.4000 16.0555+-0.4387 might be 1.0564x faster get-by-val-out-of-bounds 4.2226+-0.1282 ? 4.3223+-0.3011 ? might be 1.0236x slower get-by-val-with-string-bimorphic-check-structure-elimination-simple 2.7132+-0.0276 ? 2.7226+-0.0868 ? get-by-val-with-string-bimorphic-check-structure-elimination 6.2554+-0.4441 6.2204+-0.4199 get-by-val-with-string-chain-from-try-block 2.5120+-0.1598 2.4350+-0.0477 might be 1.0316x faster get-by-val-with-string-check-structure-elimination 5.5891+-0.0923 ? 5.6071+-0.2306 ? get-by-val-with-string-proto-or-self 16.5486+-0.7130 ? 17.4126+-0.9660 ? might be 1.0522x slower get-by-val-with-string-quadmorphic-check-structure-elimination-simple 3.1499+-0.1117 3.0682+-0.0210 might be 1.0266x faster get-by-val-with-string-self-or-proto 17.4089+-1.1301 16.0440+-0.8145 might be 1.0851x faster get-by-val-with-symbol-bimorphic-check-structure-elimination-simple 2.9576+-0.0526 2.9478+-0.0904 get-by-val-with-symbol-bimorphic-check-structure-elimination 12.7303+-0.3872 12.3945+-0.1090 might be 1.0271x faster get-by-val-with-symbol-chain-from-try-block 2.4927+-0.0680 2.4338+-0.0315 might be 1.0242x faster get-by-val-with-symbol-check-structure-elimination 11.4034+-0.1114 ? 11.4629+-0.0835 ? get-by-val-with-symbol-proto-or-self 17.5801+-1.2220 17.3419+-1.2000 might be 1.0137x faster get-by-val-with-symbol-quadmorphic-check-structure-elimination-simple 3.6995+-0.0469 ? 3.8007+-0.2621 ? might be 1.0274x slower get-by-val-with-symbol-self-or-proto 18.0291+-2.0759 16.3915+-1.2056 might be 1.0999x faster get_callee_monomorphic 2.4500+-0.2327 ? 2.5365+-0.2863 ? might be 1.0353x slower get_callee_polymorphic 3.3482+-0.0823 3.3463+-0.1141 getter-no-activation 4.8518+-0.2803 4.8431+-0.2290 getter-prototype 7.9742+-0.1743 ? 8.1890+-0.3753 ? might be 1.0269x slower getter-richards-try-catch 992.2469+-17.8839 989.7159+-24.3696 getter-richards 114.3208+-5.0662 112.7671+-3.8323 might be 1.0138x faster getter 5.2922+-0.3317 ? 5.7412+-0.7625 ? might be 1.0848x slower global-object-access-with-mutating-structure 5.7423+-0.2550 5.6763+-0.0831 might be 1.0116x faster global-var-const-infer-fire-from-opt 0.7125+-0.0099 ? 0.7493+-0.0689 ? might be 1.0516x slower global-var-const-infer 0.6462+-0.0388 ? 0.6514+-0.0259 ? hard-overflow-check-equal 27.0044+-0.6696 ? 27.1971+-0.4242 ? hard-overflow-check 26.7156+-0.6398 ? 27.0133+-1.9937 ? might be 1.0111x slower HashMap-put-get-iterate-keys 26.1259+-0.9188 ? 27.0500+-1.3345 ? might be 1.0354x slower HashMap-put-get-iterate 27.6844+-0.7470 27.3763+-0.7467 might be 1.0113x faster HashMap-string-put-get-iterate 24.8449+-0.8290 24.1434+-1.6810 might be 1.0291x faster hoist-make-rope 8.9869+-1.0762 ? 9.0576+-1.4303 ? hoist-poly-check-structure-effectful-loop 3.6361+-0.0956 ? 3.8219+-0.4844 ? might be 1.0511x slower hoist-poly-check-structure 3.1528+-0.1952 3.0614+-0.0818 might be 1.0299x faster imul-double-only 7.9493+-0.1039 7.7256+-0.2457 might be 1.0290x faster imul-int-only 8.4161+-0.9557 ? 8.5007+-1.1351 ? might be 1.0100x slower imul-mixed 7.1902+-0.4166 6.6196+-0.5287 might be 1.0862x faster in-four-cases 18.7268+-0.4237 ? 18.7333+-0.5803 ? in-one-case-false 10.0035+-0.0794 ? 10.4289+-0.6706 ? might be 1.0425x slower in-one-case-true 10.4502+-0.6757 ? 10.6634+-0.4824 ? might be 1.0204x slower in-two-cases 10.7206+-0.4016 10.4366+-0.2437 might be 1.0272x faster indexed-properties-in-objects 2.8525+-0.1941 ? 2.8959+-0.2790 ? might be 1.0152x slower infer-closure-const-then-mov-no-inline 3.7146+-0.0681 3.5978+-0.0529 might be 1.0325x faster infer-closure-const-then-mov 16.8314+-0.7987 16.5265+-0.8249 might be 1.0185x faster infer-closure-const-then-put-to-scope-no-inline 10.9253+-0.1885 ? 11.0076+-0.1299 ? infer-closure-const-then-put-to-scope 23.7557+-1.5969 23.0549+-0.6866 might be 1.0304x faster infer-closure-const-then-reenter-no-inline 47.8492+-0.8561 ? 47.8977+-0.5265 ? infer-closure-const-then-reenter 23.1790+-0.4780 22.6844+-0.8440 might be 1.0218x faster infer-constant-global-property 3.4941+-0.1040 ? 3.5185+-0.2057 ? infer-constant-property 2.6804+-0.2020 2.6450+-0.0999 might be 1.0134x faster infer-one-time-closure-ten-vars 7.8347+-0.2776 ? 8.5290+-0.5423 ? might be 1.0886x slower infer-one-time-closure-two-vars 7.4823+-0.3695 ? 7.5246+-0.4313 ? infer-one-time-closure 7.5323+-0.5505 ? 7.5575+-0.5285 ? infer-one-time-deep-closure 10.6247+-0.2082 ? 11.0968+-0.4836 ? might be 1.0444x slower inline-arguments-access 3.6121+-0.0987 ? 3.7535+-0.2929 ? might be 1.0392x slower inline-arguments-aliased-access 3.5670+-0.0840 ? 3.6329+-0.0815 ? might be 1.0185x slower inline-arguments-local-escape 3.6064+-0.0470 ? 3.6567+-0.1655 ? might be 1.0139x slower inline-get-scoped-var 4.6259+-0.1712 ? 4.7251+-0.2824 ? might be 1.0214x slower inlined-put-by-id-transition 9.5621+-0.7130 ? 9.6443+-1.1630 ? inlined-put-by-val-with-string-transition 43.3023+-2.9489 ? 47.4663+-15.7550 ? might be 1.0962x slower inlined-put-by-val-with-symbol-transition 41.5254+-1.5554 ? 42.6574+-1.3287 ? might be 1.0273x slower int-or-other-abs-then-get-by-val 4.7694+-0.5616 4.6190+-0.1997 might be 1.0326x faster int-or-other-abs-zero-then-get-by-val 15.7430+-0.2741 ? 15.8925+-0.7614 ? int-or-other-add-then-get-by-val 4.2144+-0.0661 ? 4.3309+-0.2491 ? might be 1.0276x slower int-or-other-add 4.9073+-0.0828 ? 5.0313+-0.3076 ? might be 1.0253x slower int-or-other-div-then-get-by-val 3.8572+-0.0928 3.8147+-0.0269 might be 1.0111x faster int-or-other-max-then-get-by-val 4.1745+-0.4573 4.0798+-0.5080 might be 1.0232x faster int-or-other-min-then-get-by-val 3.8584+-0.1076 ? 4.0433+-0.3375 ? might be 1.0479x slower int-or-other-mod-then-get-by-val 3.6506+-0.0699 3.6364+-0.0232 int-or-other-mul-then-get-by-val 3.6525+-0.1388 ? 3.6658+-0.1438 ? int-or-other-neg-then-get-by-val 4.1351+-0.0873 ? 4.1818+-0.0980 ? might be 1.0113x slower int-or-other-neg-zero-then-get-by-val 15.4727+-0.3366 ? 15.7974+-0.6241 ? might be 1.0210x slower int-or-other-sub-then-get-by-val 4.1172+-0.0673 ? 4.3185+-0.1891 ? might be 1.0489x slower int-or-other-sub 3.5353+-0.1141 3.4762+-0.0531 might be 1.0170x faster int-overflow-local 4.1777+-0.2667 ? 4.3246+-0.4552 ? might be 1.0352x slower Int16Array-alloc-long-lived 43.5731+-1.4691 ? 43.9144+-1.3153 ? Int16Array-bubble-sort-with-byteLength 22.4212+-0.8709 ? 23.9801+-5.4648 ? might be 1.0695x slower Int16Array-bubble-sort 21.5911+-0.7198 21.5369+-0.3535 Int16Array-load-int-mul 1.5219+-0.0730 1.4872+-0.0374 might be 1.0234x faster Int16Array-to-Int32Array-set 45.7779+-0.6313 ? 46.0685+-0.8076 ? Int32Array-alloc-large 12.0636+-0.6769 ? 12.2046+-1.1434 ? might be 1.0117x slower Int32Array-alloc-long-lived 49.4492+-1.4804 ? 50.7437+-1.5380 ? might be 1.0262x slower Int32Array-alloc 2.9229+-0.2442 ? 3.0450+-0.2616 ? might be 1.0418x slower Int32Array-Int8Array-view-alloc 5.9052+-0.0704 5.8915+-0.1517 int52-spill 4.8610+-0.4339 4.5727+-0.1759 might be 1.0631x faster Int8Array-alloc-long-lived 37.9245+-0.2823 ? 38.5492+-1.2350 ? might be 1.0165x slower Int8Array-load-with-byteLength 3.6527+-0.4648 3.4192+-0.0428 might be 1.0683x faster Int8Array-load 3.4730+-0.1206 ? 3.5313+-0.2418 ? might be 1.0168x slower integer-divide 10.5080+-0.3795 10.3693+-0.1432 might be 1.0134x faster integer-modulo 1.6492+-0.0525 ? 1.8240+-0.3933 ? might be 1.1060x slower is-boolean-fold-tricky 3.8799+-0.1539 3.8463+-0.1648 is-boolean-fold 2.6475+-0.0452 2.6300+-0.0220 is-function-fold-tricky-internal-function 9.9021+-0.3628 9.4273+-0.2512 might be 1.0504x faster is-function-fold-tricky 4.0706+-0.1041 4.0565+-0.0797 is-function-fold 2.8994+-0.5133 2.8090+-0.3209 might be 1.0322x faster is-number-fold-tricky 3.9866+-0.0762 ? 3.9995+-0.1078 ? is-number-fold 2.6803+-0.0480 2.6644+-0.1218 is-object-or-null-fold-functions 2.7116+-0.0625 ? 2.7192+-0.0724 ? is-object-or-null-fold-less-tricky 4.1951+-0.2982 3.9867+-0.0540 might be 1.0523x faster is-object-or-null-fold-tricky 5.2388+-0.7797 4.8488+-0.1024 might be 1.0804x faster is-object-or-null-fold 2.6936+-0.0905 ? 2.7148+-0.0522 ? is-object-or-null-trickier-function 4.0489+-0.0721 ? 4.1682+-0.2829 ? might be 1.0295x slower is-object-or-null-trickier-internal-function 9.7134+-0.0971 ? 9.8366+-0.2060 ? might be 1.0127x slower is-object-or-null-tricky-function 4.0730+-0.1033 4.0649+-0.0858 is-object-or-null-tricky-internal-function 7.4137+-0.1937 7.2728+-0.1484 might be 1.0194x faster is-string-fold-tricky 4.0621+-0.3496 4.0523+-0.2518 is-string-fold 2.6580+-0.0383 2.6364+-0.0494 is-undefined-fold-tricky 3.3634+-0.1152 ? 3.3697+-0.0619 ? is-undefined-fold 2.6910+-0.1324 ? 2.6954+-0.0873 ? JSONP-negative-0 0.2756+-0.0174 0.2647+-0.0054 might be 1.0412x faster large-int-captured 4.1814+-0.2495 4.0319+-0.1776 might be 1.0371x faster large-int-neg 14.1085+-0.3250 ? 14.9878+-1.4136 ? might be 1.0623x slower large-int 13.4507+-0.8218 13.2659+-0.2233 might be 1.0139x faster load-varargs-elimination 20.3016+-0.5468 ? 21.2434+-0.8063 ? might be 1.0464x slower logical-not-weird-types 3.0656+-0.0579 3.0435+-0.0613 logical-not 4.3690+-0.1328 ? 4.3774+-0.2353 ? lots-of-fields 9.5934+-0.4425 9.5250+-0.6234 make-indexed-storage 2.8415+-0.3087 ? 2.9469+-0.1669 ? might be 1.0371x slower make-rope-cse 3.7548+-0.3916 3.4975+-0.1277 might be 1.0736x faster marsaglia-larger-ints 31.8505+-0.9480 ? 32.7982+-1.2057 ? might be 1.0298x slower marsaglia-osr-entry 21.4339+-0.3995 ? 21.4510+-0.5916 ? math-with-out-of-bounds-array-values 22.1076+-0.9542 22.0234+-0.9321 max-boolean 2.7097+-0.0738 2.6685+-0.0648 might be 1.0154x faster method-on-number 17.2561+-1.1779 16.8372+-1.3527 might be 1.0249x faster min-boolean 2.7345+-0.1109 ? 2.7536+-0.0791 ? minus-boolean-double 3.1309+-0.0894 3.1263+-0.0789 minus-boolean 2.3357+-0.0263 2.3070+-0.0619 might be 1.0124x faster misc-strict-eq 30.2793+-1.1279 ^ 28.5693+-0.4396 ^ definitely 1.0599x faster mod-boolean-double 11.4148+-0.6342 11.1002+-0.1813 might be 1.0283x faster mod-boolean 8.2839+-0.0788 8.2472+-0.0455 mul-boolean-double 3.6955+-0.1716 3.5982+-0.0266 might be 1.0270x faster mul-boolean 2.8411+-0.0543 ? 2.8570+-0.1163 ? neg-boolean 3.1420+-0.0348 ? 3.1998+-0.1551 ? might be 1.0184x slower negative-zero-divide 0.3616+-0.0119 0.3565+-0.0103 might be 1.0142x faster negative-zero-modulo 0.3541+-0.0169 0.3477+-0.0105 might be 1.0186x faster negative-zero-negate 0.3334+-0.0100 ? 0.3416+-0.0134 ? might be 1.0248x slower nested-function-parsing 44.6721+-0.4076 ? 45.0717+-0.6056 ? new-array-buffer-dead 86.7560+-1.3601 86.3947+-0.5490 new-array-buffer-push 6.2936+-0.5068 ? 6.3666+-0.2417 ? might be 1.0116x slower new-array-dead 15.1168+-0.9438 14.6733+-0.9155 might be 1.0302x faster new-array-push 3.5480+-0.0836 3.5244+-0.1120 no-inline-constructor 30.9625+-1.2490 30.3776+-0.1785 might be 1.0193x faster number-test 3.4056+-0.4365 3.1340+-0.0761 might be 1.0867x faster object-closure-call 4.8175+-0.0563 ? 4.8339+-0.0955 ? object-get-own-property-symbols-on-large-array 4.1458+-0.2692 ? 4.2408+-0.2830 ? might be 1.0229x slower object-test 2.7145+-0.0492 ? 2.9077+-0.3850 ? might be 1.0712x slower obvious-sink-pathology-taken 96.4007+-0.9961 ? 97.1385+-0.8524 ? obvious-sink-pathology 30.2012+-0.9369 30.1433+-1.1717 obviously-elidable-new-object 28.8854+-0.8483 ? 29.0655+-1.2003 ? plus-boolean-arith 2.4213+-0.1620 2.4117+-0.0661 plus-boolean-double 3.1104+-0.0329 ? 3.1256+-0.0502 ? plus-boolean 2.5789+-0.0768 ? 2.6488+-0.1345 ? might be 1.0271x slower poly-chain-access-different-prototypes-simple 2.6345+-0.0761 ? 2.6584+-0.0863 ? poly-chain-access-different-prototypes 2.6367+-0.1326 2.5815+-0.0977 might be 1.0214x faster poly-chain-access-simpler 2.6792+-0.1427 2.6215+-0.1142 might be 1.0220x faster poly-chain-access 2.5844+-0.0941 ? 2.6459+-0.2927 ? might be 1.0238x slower poly-stricteq 53.7946+-0.8923 ? 54.3681+-0.8125 ? might be 1.0107x slower polymorphic-array-call 1.4781+-0.3155 1.2837+-0.0557 might be 1.1515x faster polymorphic-get-by-id 2.8632+-0.0215 ? 2.9152+-0.0520 ? might be 1.0181x slower polymorphic-put-by-id 27.7195+-0.4308 ? 28.2552+-0.8034 ? might be 1.0193x slower polymorphic-put-by-val-with-string 28.8660+-1.8096 ? 29.2983+-0.6312 ? might be 1.0150x slower polymorphic-put-by-val-with-symbol 29.6827+-2.0543 28.0397+-0.3258 might be 1.0586x faster polymorphic-structure 12.6744+-0.4618 12.6055+-0.2448 polyvariant-monomorphic-get-by-id 7.0853+-1.3413 ? 7.1197+-1.8220 ? proto-getter-access 8.3726+-0.2101 ? 8.3914+-0.1717 ? prototype-access-with-mutating-prototype 5.7178+-0.3468 5.4822+-0.1367 might be 1.0430x faster put-by-id-replace-and-transition 8.5201+-1.8367 8.2189+-0.3629 might be 1.0367x faster put-by-id-slightly-polymorphic 2.6771+-0.0349 ? 2.7996+-0.1511 ? might be 1.0458x slower put-by-id 10.0948+-1.5486 ? 10.2428+-0.7569 ? might be 1.0147x slower put-by-val-direct 0.3529+-0.0074 ? 0.3684+-0.0433 ? might be 1.0439x slower put-by-val-large-index-blank-indexing-type 5.4127+-0.1788 5.2415+-0.1822 might be 1.0327x faster put-by-val-machine-int 2.6034+-0.1754 ? 2.6678+-0.1764 ? might be 1.0248x slower put-by-val-with-string-replace-and-transition 10.2867+-0.4601 10.2622+-0.4731 put-by-val-with-string-slightly-polymorphic 3.0412+-0.1832 ? 3.3206+-0.8750 ? might be 1.0919x slower put-by-val-with-string 10.9400+-0.3127 10.5199+-0.6875 might be 1.0399x faster put-by-val-with-symbol-replace-and-transition 11.6315+-0.3829 11.5382+-0.4680 put-by-val-with-symbol-slightly-polymorphic 3.5355+-0.6871 3.2450+-0.1207 might be 1.0895x faster put-by-val-with-symbol 10.2690+-0.6487 ? 10.5463+-0.4704 ? might be 1.0270x slower rare-osr-exit-on-local 13.9283+-0.1656 13.8270+-0.1268 raytrace-with-empty-try-catch 5.3329+-0.1904 ? 5.3843+-0.2623 ? raytrace-with-try-catch 10.0304+-0.4009 ? 10.1191+-0.3848 ? register-pressure-from-osr 16.8070+-0.3171 ? 17.0745+-0.8485 ? might be 1.0159x slower repeat-multi-get-by-offset 22.6027+-1.4974 22.4389+-0.9864 richards-empty-try-catch 73.4150+-2.2883 71.1573+-1.2506 might be 1.0317x faster richards-try-catch 237.5256+-1.5609 ? 240.8975+-3.8819 ? might be 1.0142x slower setter-prototype 7.7187+-0.1917 7.6365+-0.1393 might be 1.0108x faster setter 6.2158+-0.8271 ? 6.3247+-0.7865 ? might be 1.0175x slower simple-activation-demo 24.2491+-0.4216 ? 26.7122+-5.4034 ? might be 1.1016x slower simple-getter-access 10.7299+-0.2599 ? 10.8372+-0.1283 ? simple-poly-call-nested 8.7808+-0.6740 ? 9.0293+-0.5283 ? might be 1.0283x slower simple-poly-call 1.2922+-0.0281 1.2902+-0.0358 sin-boolean 19.5660+-1.9790 ? 19.7818+-2.4539 ? might be 1.0110x slower singleton-scope 61.9324+-1.6189 61.8673+-1.3044 sink-function 10.1371+-0.7973 9.8235+-1.0813 might be 1.0319x faster sink-huge-activation 16.0336+-1.2124 ? 16.1568+-0.7405 ? sinkable-new-object-dag 52.6047+-1.3604 52.1295+-1.7608 sinkable-new-object-taken 42.4712+-2.1132 41.6712+-2.7732 might be 1.0192x faster sinkable-new-object 30.5697+-1.1447 29.5802+-1.2292 might be 1.0335x faster slow-array-profile-convergence 2.5537+-0.1026 ? 2.5663+-0.1110 ? slow-convergence 2.7290+-0.2337 ? 2.7949+-0.5768 ? might be 1.0241x slower slow-ternaries 17.6570+-0.2618 ? 18.2763+-0.5686 ? might be 1.0351x slower sorting-benchmark 17.4625+-0.2868 ? 17.5240+-0.5545 ? sparse-conditional 1.1904+-0.0786 ? 1.2079+-0.0528 ? might be 1.0147x slower splice-to-remove 12.7225+-1.3718 12.3035+-0.4273 might be 1.0341x faster string-char-code-at 13.2873+-0.3278 13.1202+-0.1826 might be 1.0127x faster string-concat-object 2.1801+-0.1513 ? 2.2085+-0.0977 ? might be 1.0130x slower string-concat-pair-object 2.3807+-0.2624 2.1144+-0.0383 might be 1.1260x faster string-concat-pair-simple 9.1793+-0.5030 ? 9.6307+-0.5379 ? might be 1.0492x slower string-concat-simple 9.4191+-0.5811 ? 9.6840+-0.7785 ? might be 1.0281x slower string-cons-repeat 6.5921+-0.3595 ? 6.6791+-0.4005 ? might be 1.0132x slower string-cons-tower 6.5711+-0.1495 ? 6.9149+-0.5575 ? might be 1.0523x slower string-equality 18.9204+-0.7361 18.4046+-0.4696 might be 1.0280x faster string-get-by-val-big-char 6.6513+-0.5931 6.4809+-0.2203 might be 1.0263x faster string-get-by-val-out-of-bounds-insane 3.2717+-0.0687 3.2105+-0.1381 might be 1.0190x faster string-get-by-val-out-of-bounds 3.9913+-0.0799 ? 4.0664+-0.3155 ? might be 1.0188x slower string-get-by-val 2.8069+-0.0457 ? 2.8101+-0.0567 ? string-hash 1.9224+-0.0245 ? 1.9630+-0.1027 ? might be 1.0211x slower string-long-ident-equality 15.0299+-0.3769 ? 15.3127+-0.5459 ? might be 1.0188x slower string-out-of-bounds 11.2240+-2.3358 10.2799+-0.5589 might be 1.0918x faster string-repeat-arith 26.5463+-0.6155 26.2805+-1.1458 might be 1.0101x faster string-sub 31.7520+-0.8287 ? 32.5715+-0.8792 ? might be 1.0258x slower string-test 3.1079+-0.4937 2.9633+-0.1837 might be 1.0488x faster string-var-equality 27.5721+-0.7017 ? 27.9966+-1.8237 ? might be 1.0154x slower structure-hoist-over-transitions 2.4117+-0.0602 2.4017+-0.0435 substring-concat-weird 35.5654+-1.2057 ? 36.0560+-1.5224 ? might be 1.0138x slower substring-concat 41.4503+-2.4168 38.9315+-1.7044 might be 1.0647x faster substring 45.8837+-2.3006 ? 45.9598+-1.7762 ? switch-char-constant 2.7047+-0.0775 ? 2.7201+-0.0378 ? switch-char 6.2586+-1.0680 6.0146+-0.8438 might be 1.0406x faster switch-constant 8.4726+-0.9803 8.0171+-1.0438 might be 1.0568x faster switch-string-basic-big-var 15.3800+-1.0930 15.2506+-1.1133 switch-string-basic-big 15.4868+-1.0724 14.8041+-0.2319 might be 1.0461x faster switch-string-basic-var 13.7838+-0.4016 ? 14.3522+-1.1534 ? might be 1.0412x slower switch-string-basic 13.4538+-0.6838 13.0891+-0.4346 might be 1.0279x faster switch-string-big-length-tower-var 18.0792+-0.4327 17.9799+-0.3245 switch-string-length-tower-var 13.7451+-0.3590 13.3143+-0.1999 might be 1.0324x faster switch-string-length-tower 12.2855+-0.2678 12.1054+-0.1099 might be 1.0149x faster switch-string-short 12.5740+-1.0416 11.9863+-0.2026 might be 1.0490x faster switch 11.1355+-0.5935 10.6740+-0.5711 might be 1.0432x faster tear-off-arguments-simple 3.1411+-0.2603 3.0157+-0.1680 might be 1.0416x faster tear-off-arguments 4.0963+-0.0608 4.0220+-0.0969 might be 1.0185x faster temporal-structure 12.2018+-0.4167 11.8792+-0.2962 might be 1.0272x faster to-int32-boolean 12.6721+-0.3009 ? 12.6767+-0.3666 ? try-catch-get-by-val-cloned-arguments 9.8670+-0.8314 9.3944+-0.3841 might be 1.0503x faster try-catch-get-by-val-direct-arguments 2.0912+-0.1002 ? 2.2338+-0.2378 ? might be 1.0682x slower try-catch-get-by-val-scoped-arguments 4.5262+-0.1546 ? 4.7880+-0.3328 ? might be 1.0578x slower typed-array-get-set-by-val-profiling 27.8134+-1.3005 27.7819+-0.8732 undefined-property-access 216.4810+-1.9338 ^ 213.6247+-0.2936 ^ definitely 1.0134x faster undefined-test 3.1304+-0.1126 3.0500+-0.0910 might be 1.0263x faster unprofiled-licm 9.2273+-0.3252 ? 9.5894+-0.8327 ? might be 1.0392x slower v8-raytrace-with-empty-try-catch 24.3864+-0.9029 ? 24.7992+-1.0360 ? might be 1.0169x slower v8-raytrace-with-try-catch 63.4818+-2.6633 61.9440+-1.8196 might be 1.0248x faster varargs-call 13.5135+-0.8221 13.0395+-0.2424 might be 1.0364x faster varargs-construct-inline 22.0350+-0.8873 ? 22.1688+-1.1744 ? varargs-construct 19.5343+-0.8159 ? 20.3085+-1.0970 ? might be 1.0396x slower varargs-inline 8.8037+-0.2741 8.7619+-0.1341 varargs-strict-mode 10.2693+-0.5648 10.0180+-0.1201 might be 1.0251x faster varargs 9.9485+-0.2936 9.8361+-0.0763 might be 1.0114x faster weird-inlining-const-prop 2.2792+-0.1933 ? 2.7899+-1.6909 ? might be 1.2241x slower <geometric> 8.1963+-0.0279 8.1725+-0.0267 might be 1.0029x faster TipOfTree Patchpoint AsmBench: bigfib.cpp 457.3500+-6.9412 452.6627+-7.8465 might be 1.0104x faster cray.c 396.7235+-10.7325 395.0938+-6.0486 dry.c 424.7350+-8.2320 422.3521+-7.6583 FloatMM.c 685.9280+-8.5258 682.1678+-1.0129 gcc-loops.cpp 3432.0515+-38.9187 3416.4431+-10.1190 n-body.c 822.9277+-1.5585 ? 823.5717+-1.3128 ? Quicksort.c 407.4182+-4.5528 ? 409.2783+-2.0040 ? stepanov_container.cpp 3552.9872+-19.7718 3540.6007+-40.8250 Towers.c 232.2906+-2.0776 231.2610+-1.0805 <geometric> 717.1377+-2.0344 714.5637+-3.0730 might be 1.0036x faster TipOfTree Patchpoint CompressionBench: huffman 60.7003+-0.6780 ? 61.1153+-1.5349 ? arithmetic-simple 276.3653+-2.0667 ? 277.7556+-2.5249 ? arithmetic-precise 253.6226+-2.7555 ? 254.5802+-2.4935 ? arithmetic-complex-precise 254.0474+-3.0485 253.0382+-2.8452 arithmetic-precise-order-0 289.4985+-6.0938 ? 290.3918+-1.6722 ? arithmetic-precise-order-1 306.2070+-2.7014 ? 307.2265+-2.1918 ? arithmetic-precise-order-2 353.8211+-4.5602 352.8964+-1.3581 arithmetic-simple-order-1 323.9351+-3.1263 323.4999+-2.2979 arithmetic-simple-order-2 376.1422+-7.0493 ? 376.1993+-6.1151 ? lz-string 314.8303+-3.1381 ? 329.0540+-42.1678 ? might be 1.0452x slower <geometric> 257.8626+-1.4074 ? 259.2496+-3.7336 ? might be 1.0054x slower TipOfTree Patchpoint Geomean of preferred means: <scaled-result> 50.4917+-0.2337 ? 50.5111+-0.1565 ? might be 1.0004x slower
Filip Pizlo
Comment 7 2015-11-02 14:57:19 PST
Note You need to log in before you can comment on or make changes to this bug.