Bug 144897 - [JSC] Make the NegZero backward propagated flags of ArithMod stricter
Summary: [JSC] Make the NegZero backward propagated flags of ArithMod stricter
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: New Bugs (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Benjamin Poulain
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2015-05-11 21:48 PDT by Benjamin Poulain
Modified: 2015-05-13 14:05 PDT (History)
2 users (show)

See Also:


Attachments
Patch (9.50 KB, patch)
2015-05-11 21:57 PDT, Benjamin Poulain
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Benjamin Poulain 2015-05-11 21:48:02 PDT
[JSC] Make the NegZero backward propagated flags of ArithMod stricter
Comment 1 Benjamin Poulain 2015-05-11 21:57:49 PDT
Created attachment 252934 [details]
Patch
Comment 2 Benjamin Poulain 2015-05-11 22:00:02 PDT
                                                          Conf#1                    Conf#2                                      
SunSpider:
   3d-cube                                            7.3096+-0.1934     ?      7.4294+-0.2474        ? might be 1.0164x slower
   3d-morph                                           7.8223+-0.0646     ?      7.8898+-0.0493        ?
   3d-raytrace                                        8.7737+-0.2719     ?      8.9476+-0.2205        ? might be 1.0198x slower
   access-binary-trees                                3.1445+-0.1413            3.1245+-0.1169        
   access-fannkuch                                    8.2737+-0.1730     ?      8.2788+-0.1923        ?
   access-nbody                                       4.1562+-0.1739            4.0845+-0.2074          might be 1.0175x faster
   access-nsieve                                      4.3913+-0.2465     ?      4.4570+-0.1088        ? might be 1.0150x slower
   bitops-3bit-bits-in-byte                           1.9205+-0.1489     ?      1.9504+-0.0978        ? might be 1.0156x slower
   bitops-bits-in-byte                                5.6562+-0.1028     ?      5.6813+-0.2050        ?
   bitops-bitwise-and                                 2.7701+-0.2415            2.7650+-0.3168        
   bitops-nsieve-bits                                 4.3029+-0.0962     ?      4.3074+-0.1332        ?
   controlflow-recursive                              2.9368+-0.1381            2.8655+-0.0571          might be 1.0249x faster
   crypto-aes                                         5.9152+-0.2921     ?      6.1016+-0.2937        ? might be 1.0315x slower
   crypto-md5                                         3.7109+-0.2635     ?      3.7811+-0.0340        ? might be 1.0189x slower
   crypto-sha1                                        3.2431+-0.2131     ?      3.3232+-0.1786        ? might be 1.0247x slower
   date-format-tofte                                 12.2433+-0.5438           12.0262+-0.5669          might be 1.0181x faster
   date-format-xparb                                  7.5975+-0.4948            7.5175+-0.4549          might be 1.0106x faster
   math-cordic                                        4.3057+-0.1172     ?      4.3842+-0.1195        ? might be 1.0182x slower
   math-partial-sums                                  9.2627+-0.1811            9.2128+-0.1184        
   math-spectral-norm                                 2.9246+-0.2446     ?      2.9700+-0.1551        ? might be 1.0155x slower
   regexp-dna                                         9.5955+-0.7898     ?      9.6619+-0.2420        ?
   string-base64                                      6.1765+-0.2599            6.0321+-0.2308          might be 1.0239x faster
   string-fasta                                       9.3511+-0.3013            9.1705+-0.1365          might be 1.0197x faster
   string-tagcloud                                   12.8707+-0.5449           12.5853+-0.4704          might be 1.0227x faster
   string-unpack-code                                27.6194+-0.6628           26.5349+-0.8257          might be 1.0409x faster
   string-validate-input                              6.6133+-0.2757     ?      6.7636+-0.3193        ? might be 1.0227x slower

   <arithmetic>                                       7.0341+-0.0320            6.9941+-0.0477          might be 1.0057x faster

                                                          Conf#1                    Conf#2                                      
LongSpider:
   3d-cube                                         1263.8520+-16.7950        1258.0325+-16.6455       
   3d-morph                                        1872.7726+-0.4463     ?   1873.0650+-2.3307        ?
   3d-raytrace                                     1044.6783+-7.6353     ?   1047.7736+-10.7386       ?
   access-binary-trees                             1356.6971+-5.0869         1352.9928+-11.1932       
   access-fannkuch                                  454.7128+-21.0587    ?    463.3568+-33.1324       ? might be 1.0190x slower
   access-nbody                                    1037.6741+-1.2262         1034.9919+-2.1494        
   access-nsieve                                    675.0123+-8.0709          674.8629+-5.3561        
   bitops-3bit-bits-in-byte                          50.5023+-1.1438           50.4409+-1.3348        
   bitops-bits-in-byte                              345.6577+-6.4050     ?    347.4278+-4.9835        ?
   bitops-nsieve-bits                               630.5558+-3.3914          630.3899+-1.5603        
   controlflow-recursive                            709.8051+-1.1608     ^    703.7598+-0.5389        ^ definitely 1.0086x faster
   crypto-aes                                       930.4857+-5.5600     ?    939.6304+-6.7545        ?
   crypto-md5                                       675.5173+-7.6251     ?    682.2261+-3.1582        ?
   crypto-sha1                                      908.8090+-27.0588    ?    910.1366+-5.9269        ?
   date-format-tofte                                993.2455+-9.9953          976.8732+-18.2429         might be 1.0168x faster
   date-format-xparb                               1020.8379+-19.9226    ?   1047.8403+-24.3783       ? might be 1.0265x slower
   math-cordic                                      672.7300+-1.5563     ?    673.2540+-1.3231        ?
   math-partial-sums                               1065.7282+-4.0977     ?   1066.7860+-2.8594        ?
   math-spectral-norm                              1073.0081+-2.6639         1072.7660+-1.5614        
   string-base64                                    489.3131+-6.4905          485.0983+-3.6640        
   string-fasta                                     609.2489+-2.6731          605.3463+-10.4256       
   string-tagcloud                                  276.3430+-3.0015          275.7495+-2.5209        

   <geometric>                                      692.2664+-2.8553     ?    692.9399+-2.7121        ? might be 1.0010x slower

                                                          Conf#1                    Conf#2                                      
V8Spider:
   crypto                                            72.3904+-1.7558     ?     72.9924+-1.3246        ?
   deltablue                                         92.0757+-4.5451           89.1080+-1.4567          might be 1.0333x faster
   earley-boyer                                      63.2979+-0.6869     ?     63.7155+-1.8153        ?
   raytrace                                          40.5826+-0.9132           39.5854+-0.8786          might be 1.0252x faster
   regexp                                           110.5294+-0.4430          110.4039+-0.8382        
   richards                                          99.5128+-1.3822           97.9828+-5.5051          might be 1.0156x faster
   splay                                             51.7552+-5.7511           51.2334+-2.1943          might be 1.0102x faster

   <geometric>                                       71.6816+-0.7101           70.9862+-0.2728          might be 1.0098x faster

                                                          Conf#1                    Conf#2                                      
Octane:
   encrypt                                           0.30782+-0.00096    ?     0.30784+-0.00037       ?
   decrypt                                           5.64357+-0.00563    ?     5.65390+-0.00746       ?
   deltablue                                x2       0.25494+-0.00270    ?     0.26163+-0.01148       ? might be 1.0263x slower
   earley                                            0.55129+-0.01116          0.55128+-0.00549       
   boyer                                             8.09976+-0.08684    ?     8.11254+-0.06392       ?
   navier-stokes                            x2       6.38303+-0.00400    ?     6.38445+-0.01375       ?
   raytrace                                 x2       1.76462+-0.07431    ?     1.79508+-0.20268       ? might be 1.0173x slower
   richards                                 x2       0.16467+-0.00166    ?     0.16481+-0.00479       ?
   splay                                    x2       0.54832+-0.00965          0.54819+-0.00338       
   regexp                                   x2      42.36274+-0.47627         42.27607+-0.38783       
   pdfjs                                    x2      61.11648+-0.54304    ?    61.31600+-0.24800       ?
   mandreel                                 x2      69.57252+-0.49530    ?    70.78021+-1.31388       ? might be 1.0174x slower
   gbemu                                    x2      59.39880+-0.36790    ?    59.54133+-2.16785       ?
   closure                                           0.75914+-0.00074          0.75883+-0.00199       
   jquery                                            9.45365+-0.02050    ^     9.38507+-0.02534       ^ definitely 1.0073x faster
   box2d                                    x2      17.23735+-0.16354    ?    17.28385+-0.26463       ?
   zlib                                     x2     548.20516+-14.80934       542.06260+-5.99452         might be 1.0113x faster
   typescript                               x2    1087.14520+-12.50388      1067.83325+-33.79316        might be 1.0181x faster

   <geometric>                                       9.01903+-0.01935    ?     9.03954+-0.07854       ? might be 1.0023x slower

                                                          Conf#1                    Conf#2                                      
Kraken:
   ai-astar                                          484.160+-1.340            477.647+-13.454          might be 1.0136x faster
   audio-beat-detection                              148.758+-1.874            148.038+-0.991         
   audio-dft                                         144.341+-2.582            142.427+-2.456           might be 1.0134x faster
   audio-fft                                         111.150+-0.947      ?     111.227+-0.954         ?
   audio-oscillator                                   99.810+-1.565      ^      96.983+-0.107         ^ definitely 1.0292x faster
   imaging-darkroom                                  139.431+-0.164      ?     140.519+-3.197         ?
   imaging-desaturate                                 94.679+-0.801             94.378+-0.360         
   imaging-gaussian-blur                             150.356+-11.917           147.428+-0.788           might be 1.0199x faster
   json-parse-financial                               66.180+-1.782             66.049+-1.211         
   json-stringify-tinderbox                           43.857+-0.565             43.548+-0.118         
   stanford-crypto-aes                                86.467+-1.827      ?      87.066+-0.930         ?
   stanford-crypto-ccm                                79.530+-3.361      ?      80.448+-5.336         ? might be 1.0115x slower
   stanford-crypto-pbkdf2                            179.545+-2.243            178.703+-0.884         
   stanford-crypto-sha256-iterative                   67.883+-1.086             66.730+-0.587           might be 1.0173x faster

   <arithmetic>                                      135.439+-1.324            134.371+-1.134           might be 1.0079x faster

                                                          Conf#1                    Conf#2                                      
JSRegress:
   abs-boolean                                        3.7945+-0.1032            3.7609+-0.1207        
   adapt-to-double-divide                            17.8882+-0.8635     ?     18.2075+-0.7726        ? might be 1.0178x slower
   aliased-arguments-getbyval                         1.6333+-0.2417            1.5437+-0.2311          might be 1.0580x faster
   allocate-big-object                                3.7910+-0.7192     ?      3.9800+-0.6881        ? might be 1.0499x slower
   arguments-named-and-reflective                    14.1133+-0.2356           13.8932+-0.3077          might be 1.0158x faster
   arguments-out-of-bounds                           17.9368+-0.5696     ?     18.0964+-0.1997        ?
   arguments-strict-mode                             12.2035+-0.9827     ?     12.3861+-0.8032        ? might be 1.0150x slower
   arguments                                         10.6924+-0.2066     ?     10.7538+-0.3913        ?
   arity-mismatch-inlining                            1.1474+-0.1422            1.1028+-0.0813          might be 1.0405x faster
   array-access-polymorphic-structure                 9.4302+-0.4946     ?      9.4593+-0.2707        ?
   array-nonarray-polymorhpic-access                 47.3547+-3.6726     ?     48.9702+-0.9082        ? might be 1.0341x slower
   array-prototype-every                            116.2148+-4.3806     ?    118.4680+-2.6570        ? might be 1.0194x slower
   array-prototype-forEach                          116.3635+-3.8296          114.7291+-0.8026          might be 1.0142x faster
   array-prototype-map                              129.2472+-3.1354          128.4584+-3.0453        
   array-prototype-some                             116.4114+-3.0720     ?    116.5173+-1.4461        ?
   array-splice-contiguous                           57.5156+-0.1264     ?     57.5730+-0.7608        ?
   array-with-double-add                              5.6365+-0.1071            5.5610+-0.1842          might be 1.0136x faster
   array-with-double-increment                        4.1852+-0.2282     ?      4.2421+-0.3225        ? might be 1.0136x slower
   array-with-double-mul-add                          7.9681+-0.2136     ^      7.0914+-0.1705        ^ definitely 1.1236x faster
   array-with-double-sum                              4.3299+-0.1982     ?      4.4008+-0.1490        ? might be 1.0164x slower
   array-with-int32-add-sub                           9.6363+-0.2365     ?      9.6687+-0.1619        ?
   array-with-int32-or-double-sum                     4.4898+-0.1394            4.4832+-0.1030        
   ArrayBuffer-DataView-alloc-large-long-lived   
                                                     46.3905+-0.8681           46.2858+-1.3664        
   ArrayBuffer-DataView-alloc-long-lived             18.3890+-0.3027     ?     18.5048+-0.1385        ?
   ArrayBuffer-Int32Array-byteOffset                  5.3640+-0.1285            5.2371+-0.1392          might be 1.0242x faster
   ArrayBuffer-Int8Array-alloc-large-long-lived   
                                                     49.6100+-2.2123           48.4280+-1.0889          might be 1.0244x faster
   ArrayBuffer-Int8Array-alloc-long-lived-buffer   
                                                     30.9250+-0.4660           30.7578+-0.6599        
   ArrayBuffer-Int8Array-alloc-long-lived            17.8150+-0.2555           17.6857+-0.1300        
   ArrayBuffer-Int8Array-alloc                       14.8312+-0.1639     ?     16.8157+-3.7096        ? might be 1.1338x slower
   asmjs_bool_bug                                     8.4252+-0.1348     ?      8.5947+-0.1752        ? might be 1.0201x slower
   assign-custom-setter-polymorphic                   4.2513+-0.0812     ?      4.3137+-0.0796        ? might be 1.0147x slower
   assign-custom-setter                               5.8245+-0.0516            5.7598+-0.1950          might be 1.0112x faster
   basic-set                                         11.2040+-0.7951     ?     11.3455+-1.2735        ? might be 1.0126x slower
   big-int-mul                                        5.9077+-0.1321            5.8718+-0.0889        
   boolean-test                                       4.2803+-0.1536     ?      4.3239+-0.1908        ? might be 1.0102x slower
   branch-fold                                        4.7489+-0.0434     ?      4.7905+-0.1771        ?
   branch-on-string-as-boolean                       22.7600+-1.0812           22.4290+-0.7247          might be 1.0148x faster
   by-val-generic                                    10.6552+-0.3140     ?     10.7367+-0.1239        ?
   call-spread-apply                                 39.6992+-1.6918           37.8203+-0.3794          might be 1.0497x faster
   call-spread-call                                  32.2085+-1.0318     ?     32.5010+-0.3889        ?
   captured-assignments                               0.6558+-0.0795            0.5726+-0.0996          might be 1.1454x faster
   cast-int-to-double                                 8.2469+-0.0735            8.1087+-0.1924          might be 1.0170x faster
   cell-argument                                      9.8926+-0.2401     ?     10.0624+-0.5697        ? might be 1.0172x slower
   cfg-simplify                                       3.6884+-0.1047     ?      3.7254+-0.1975        ? might be 1.0100x slower
   chain-getter-access                               11.5616+-0.6279           11.4583+-0.6201        
   cmpeq-obj-to-obj-other                            12.2501+-0.2240     ?     12.4130+-0.4124        ? might be 1.0133x slower
   constant-test                                      7.9368+-0.2297            7.8431+-0.4481          might be 1.0120x faster
   create-lots-of-functions                          16.4077+-0.4684     ?     16.8812+-0.9182        ? might be 1.0289x slower
   DataView-custom-properties                        52.2923+-1.8012     ?     53.0933+-2.0597        ? might be 1.0153x slower
   deconstructing-parameters-overridden-by-function   
                                                      0.7234+-0.1840     ?      0.7692+-0.1228        ? might be 1.0633x slower
   delay-tear-off-arguments-strictmode               18.4985+-0.2792     ?     18.7222+-0.2169        ? might be 1.0121x slower
   deltablue-varargs                                272.4995+-1.7214          271.1607+-2.4495        
   destructuring-arguments                           23.3422+-0.8125           22.6669+-0.7112          might be 1.0298x faster
   destructuring-swap                                 7.8783+-0.1406            7.7079+-0.1061          might be 1.0221x faster
   direct-arguments-getbyval                          1.6253+-0.1951     ?      1.6573+-0.2450        ? might be 1.0197x slower
   div-boolean-double                                 5.5299+-0.1419            5.5225+-0.0937        
   div-boolean                                        9.7222+-0.2681     ?      9.7355+-0.2732        ?
   double-get-by-val-out-of-bounds                    5.8448+-0.3663     ?      5.9610+-0.1857        ? might be 1.0199x slower
   double-pollution-getbyval                         10.1550+-0.7941            9.6420+-0.2787          might be 1.0532x faster
   double-pollution-putbyoffset                       5.8510+-0.3793            5.6558+-0.1200          might be 1.0345x faster
   double-to-int32-typed-array-no-inline              2.9271+-0.1443            2.8912+-0.0467          might be 1.0124x faster
   double-to-int32-typed-array                        2.5756+-0.1010            2.4990+-0.1382          might be 1.0307x faster
   double-to-uint32-typed-array-no-inline             2.9664+-0.1345     ?      2.9725+-0.1348        ?
   double-to-uint32-typed-array                       2.7798+-0.1491            2.7161+-0.0931          might be 1.0234x faster
   elidable-new-object-dag                           55.1592+-1.8840     ?     56.4025+-1.9418        ? might be 1.0225x slower
   elidable-new-object-roflcopter                    60.9514+-0.6353     ?     61.7096+-1.7594        ? might be 1.0124x slower
   elidable-new-object-then-call                     52.1484+-1.3537     ?     52.9410+-4.6067        ? might be 1.0152x slower
   elidable-new-object-tree                          63.5796+-1.6777           63.2422+-0.4494        
   empty-string-plus-int                              7.5394+-0.2742            7.5372+-0.3050        
   emscripten-cube2hash                              44.9832+-2.3722           44.5742+-0.6937        
   exit-length-on-plain-object                       18.9510+-0.2680           18.9167+-0.4894        
   external-arguments-getbyval                        1.5833+-0.1593     ?      1.7605+-0.4121        ? might be 1.1120x slower
   external-arguments-putbyval                        3.2680+-0.2670     ?      3.4031+-0.1595        ? might be 1.0413x slower
   fixed-typed-array-storage-var-index                1.5685+-0.1420            1.5183+-0.0334          might be 1.0331x faster
   fixed-typed-array-storage                          1.2510+-0.1791            1.2443+-0.0716        
   Float32Array-matrix-mult                           5.8938+-0.2856     ?      6.0864+-0.2528        ? might be 1.0327x slower
   Float32Array-to-Float64Array-set                  71.6873+-3.4572     ?     78.7935+-5.1995        ? might be 1.0991x slower
   Float64Array-alloc-long-lived                     92.0365+-0.8079           91.3535+-0.5279        
   Float64Array-to-Int16Array-set                    91.7327+-2.0636     ?     93.6941+-2.2655        ? might be 1.0214x slower
   fold-double-to-int                                19.0328+-0.2925           18.9493+-0.3670        
   fold-get-by-id-to-multi-get-by-offset-rare-int   
                                                     10.9141+-0.3555           10.8231+-0.4204        
   fold-get-by-id-to-multi-get-by-offset              9.1384+-0.6471     ?      9.2424+-0.3899        ? might be 1.0114x slower
   fold-multi-get-by-offset-to-get-by-offset   
                                                      8.9278+-0.6263            7.9127+-0.8924          might be 1.1283x faster
   fold-multi-get-by-offset-to-poly-get-by-offset   
                                                      8.3753+-0.4172     ?      8.3837+-0.5913        ?
   fold-multi-put-by-offset-to-poly-put-by-offset   
                                                      7.8901+-0.1466            7.8257+-0.1426        
   fold-multi-put-by-offset-to-put-by-offset   
                                                      5.9980+-0.6805     ?      6.1899+-0.8342        ? might be 1.0320x slower
   fold-multi-put-by-offset-to-replace-or-transition-put-by-offset   
                                                     12.7966+-0.4903     ?     12.9080+-0.4897        ?
   fold-put-by-id-to-multi-put-by-offset              8.9373+-0.8319     ?      9.0664+-0.6103        ? might be 1.0144x slower
   fold-put-structure                                 6.3090+-0.7819     ?      6.4485+-0.7905        ? might be 1.0221x slower
   for-of-iterate-array-entries                       6.4421+-0.2332     ?      6.5075+-0.0881        ? might be 1.0101x slower
   for-of-iterate-array-keys                          4.9989+-0.1544            4.8893+-0.2570          might be 1.0224x faster
   for-of-iterate-array-values                        4.8762+-0.3638     ?      4.9468+-0.2178        ? might be 1.0145x slower
   fround                                            23.5386+-1.0792           22.9845+-0.2049          might be 1.0241x faster
   ftl-library-inlining-dataview                    100.9219+-2.4402     ^     89.1573+-0.6838        ^ definitely 1.1320x faster
   ftl-library-inlining                              87.6165+-10.2108          84.8242+-0.5256          might be 1.0329x faster
   function-dot-apply                                 2.7295+-0.3572            2.6504+-0.2114          might be 1.0298x faster
   function-test                                      4.3148+-0.2235     ?      4.3710+-0.0714        ? might be 1.0130x slower
   function-with-eval                               135.0314+-2.0755     ?    135.1512+-2.9296        ?
   gcse-poly-get-less-obvious                        24.7178+-0.4004     ?     24.8440+-0.4938        ?
   gcse-poly-get                                     24.6845+-0.5207     ?     24.7808+-0.6377        ?
   gcse                                               6.6791+-0.3603            6.5291+-0.1416          might be 1.0230x faster
   get-by-id-bimorphic-check-structure-elimination-simple   
                                                      3.3361+-0.1340            3.2906+-0.1361          might be 1.0138x faster
   get-by-id-bimorphic-check-structure-elimination   
                                                      8.3328+-0.3800     ?      8.4139+-0.1148        ?
   get-by-id-chain-from-try-block                    11.4398+-0.0707     ?     11.4900+-0.0942        ?
   get-by-id-check-structure-elimination              7.6108+-0.3019            7.4026+-0.2078          might be 1.0281x faster
   get-by-id-proto-or-self                           25.3595+-4.9000           23.2469+-1.9983          might be 1.0909x faster
   get-by-id-quadmorphic-check-structure-elimination-simple   
                                                      4.0696+-0.0822            4.0540+-0.1658        
   get-by-id-self-or-proto                           25.6520+-2.7374           25.3458+-2.7601          might be 1.0121x faster
   get-by-val-out-of-bounds                           5.8560+-0.1009     ?      5.8619+-0.2035        ?
   get_callee_monomorphic                             3.8079+-0.2955            3.7728+-0.2220        
   get_callee_polymorphic                             4.6575+-0.1588     ?      4.7205+-0.3895        ? might be 1.0135x slower
   getter-no-activation                               5.7689+-0.1171            5.7370+-0.0675        
   getter-richards                                  131.9443+-1.1034          130.6263+-3.5667          might be 1.0101x faster
   getter                                             7.2563+-0.1091            7.1871+-0.2076        
   global-var-const-infer-fire-from-opt               1.2357+-0.2769     ?      1.2534+-0.2881        ? might be 1.0144x slower
   global-var-const-infer                             1.2004+-0.1161            1.1989+-0.1982        
   HashMap-put-get-iterate-keys                      33.4813+-0.8561           33.0273+-0.7685          might be 1.0137x faster
   HashMap-put-get-iterate                           32.9943+-0.4902           32.9052+-0.4417        
   HashMap-string-put-get-iterate                    35.4672+-0.9759           35.4174+-1.4848        
   hoist-make-rope                                   14.0502+-1.3038     ?     14.4888+-1.0001        ? might be 1.0312x slower
   hoist-poly-check-structure-effectful-loop   
                                                      6.9377+-0.1705     ?      7.0413+-0.1439        ? might be 1.0149x slower
   hoist-poly-check-structure                         4.7935+-0.1787     ?      4.8484+-0.0641        ? might be 1.0115x slower
   imul-double-only                                  10.1744+-0.3366            9.7892+-2.1420          might be 1.0393x faster
   imul-int-only                                     12.0106+-1.4385           11.9690+-1.3316        
   imul-mixed                                         9.6106+-0.2018     ?      9.8112+-0.7798        ? might be 1.0209x slower
   in-four-cases                                     25.3843+-0.1192     ?     25.6031+-0.3216        ?
   in-one-case-false                                 13.1120+-0.2849           12.7961+-0.2232          might be 1.0247x faster
   in-one-case-true                                  13.1743+-0.2551           12.8223+-0.2953          might be 1.0275x faster
   in-two-cases                                      13.5348+-0.2292           13.3450+-0.2822          might be 1.0142x faster
   indexed-properties-in-objects                      3.8690+-0.0740     ^      3.7035+-0.0556        ^ definitely 1.0447x faster
   infer-closure-const-then-mov-no-inline             4.6185+-0.0301     ?      4.6240+-0.0853        ?
   infer-closure-const-then-mov                      25.0302+-1.2156           24.9347+-0.8634        
   infer-closure-const-then-put-to-scope-no-inline   
                                                     14.4721+-0.3668           14.3403+-0.1539        
   infer-closure-const-then-put-to-scope             27.8299+-0.1599     ?     27.9474+-0.2842        ?
   infer-closure-const-then-reenter-no-inline   
                                                     61.3676+-0.7282     ?     61.5118+-0.8874        ?
   infer-closure-const-then-reenter                  29.2018+-0.6622     ?     29.7175+-0.2820        ? might be 1.0177x slower
   infer-constant-global-property                     4.7179+-0.1646     ?      4.8483+-0.5238        ? might be 1.0276x slower
   infer-constant-property                            3.2775+-0.0889     ?      3.3710+-0.1020        ? might be 1.0285x slower
   infer-one-time-closure-ten-vars                   14.6194+-0.2598     ?     14.7477+-0.5086        ?
   infer-one-time-closure-two-vars                   14.0472+-0.3765           14.0467+-0.4701        
   infer-one-time-closure                            14.1493+-0.2449     ?     14.1992+-0.9306        ?
   infer-one-time-deep-closure                       24.6380+-0.6716           24.2572+-0.1191          might be 1.0157x faster
   inline-arguments-access                            6.0715+-0.0752            5.9248+-0.2334          might be 1.0248x faster
   inline-arguments-aliased-access                    6.1038+-0.2681            5.8441+-0.2390          might be 1.0444x faster
   inline-arguments-local-escape                      6.0081+-0.1769     ?      6.0330+-0.2716        ?
   inline-get-scoped-var                              5.6774+-0.0211     ?      5.7180+-0.0206        ?
   inlined-put-by-id-transition                      16.5682+-0.4644           16.5279+-0.7493        
   int-or-other-abs-then-get-by-val                   6.7702+-0.2313            6.7225+-0.3356        
   int-or-other-abs-zero-then-get-by-val             28.1090+-0.5016     ^     26.6490+-0.3681        ^ definitely 1.0548x faster
   int-or-other-add-then-get-by-val                   5.5082+-0.1212            5.3670+-0.1969          might be 1.0263x faster
   int-or-other-add                                   7.8910+-0.1046     ?      7.9225+-0.3286        ?
   int-or-other-div-then-get-by-val                   5.1843+-0.0814     ?      5.2502+-0.0258        ? might be 1.0127x slower
   int-or-other-max-then-get-by-val                   5.1105+-0.1592            5.0105+-0.0270          might be 1.0200x faster
   int-or-other-min-then-get-by-val                   4.9470+-0.1015     ?      5.0676+-0.1000        ? might be 1.0244x slower
   int-or-other-mod-then-get-by-val                   5.0851+-0.0481            5.0602+-0.1634        
   int-or-other-mul-then-get-by-val                   4.9180+-0.1630     ?      5.0287+-0.0731        ? might be 1.0225x slower
   int-or-other-neg-then-get-by-val                   6.0945+-0.1385            6.0811+-0.2230        
   int-or-other-neg-zero-then-get-by-val             28.2449+-0.4971     ^     26.5869+-0.1542        ^ definitely 1.0624x faster
   int-or-other-sub-then-get-by-val                   5.9839+-0.2048            5.9072+-0.0922          might be 1.0130x faster
   int-or-other-sub                                   4.2643+-0.0920     ?      4.3174+-0.1687        ? might be 1.0125x slower
   int-overflow-local                                 5.6223+-0.1745            5.5192+-0.1816          might be 1.0187x faster
   Int16Array-alloc-long-lived                       62.8265+-0.8644     ?     63.2474+-1.3574        ?
   Int16Array-bubble-sort-with-byteLength            36.9628+-0.2351     ?     37.2084+-1.4977        ?
   Int16Array-bubble-sort                            36.8652+-0.2441           36.5529+-0.9840        
   Int16Array-load-int-mul                            1.9390+-0.1463     ?      1.9760+-0.1439        ? might be 1.0191x slower
   Int16Array-to-Int32Array-set                      72.1407+-0.9760           71.5993+-6.4119        
   Int32Array-alloc-large                            33.4929+-2.1877           32.8245+-0.8520          might be 1.0204x faster
   Int32Array-alloc-long-lived                       70.8380+-1.6034           70.1285+-0.8858          might be 1.0101x faster
   Int32Array-alloc                                   4.6058+-0.1210            4.5278+-0.1702          might be 1.0172x faster
   Int32Array-Int8Array-view-alloc                    9.3418+-0.2109     ?      9.5227+-0.3550        ? might be 1.0194x slower
   int52-spill                                        7.9166+-0.1507     ?      7.9464+-0.4096        ?
   Int8Array-alloc-long-lived                        56.6159+-2.2806           55.8309+-0.9080          might be 1.0141x faster
   Int8Array-load-with-byteLength                     4.8105+-0.1966            4.7040+-0.1648          might be 1.0226x faster
   Int8Array-load                                     4.7913+-0.1458            4.7292+-0.1061          might be 1.0131x faster
   integer-divide                                    13.3164+-0.1605           13.2405+-0.2207        
   integer-modulo                                     2.7169+-0.0919            2.6797+-0.3391          might be 1.0139x faster
   is-boolean-fold-tricky                             5.7089+-0.0350            5.7061+-0.2629        
   is-boolean-fold                                    4.0048+-0.1956            3.9996+-0.0895        
   is-function-fold-tricky-internal-function   
                                                     14.7151+-0.6315     ?     15.0859+-1.1559        ? might be 1.0252x slower
   is-function-fold-tricky                            5.8403+-0.2112     ?      5.8754+-0.1681        ?
   is-function-fold                                   4.0667+-0.2411            4.0357+-0.0841        
   is-number-fold-tricky                              5.6593+-0.0902     ?      5.7488+-0.1979        ? might be 1.0158x slower
   is-number-fold                                     3.9664+-0.1979            3.9446+-0.0896        
   is-object-or-null-fold-functions                   4.0342+-0.0534     ?      4.1187+-0.1309        ? might be 1.0210x slower
   is-object-or-null-fold-less-tricky                 5.8753+-0.1213            5.8466+-0.1712        
   is-object-or-null-fold-tricky                      7.7351+-0.0730            7.7138+-0.1424        
   is-object-or-null-fold                             4.0592+-0.1044            3.9694+-0.2292          might be 1.0226x faster
   is-object-or-null-trickier-function                5.9594+-0.0972     ?      5.9911+-0.0729        ?
   is-object-or-null-trickier-internal-function   
                                                     15.0306+-0.0936     ?     15.0627+-0.2578        ?
   is-object-or-null-tricky-function                  5.8070+-0.1713            5.7728+-0.2028        
   is-object-or-null-tricky-internal-function   
                                                     11.2480+-0.2475     ?     11.6612+-0.7947        ? might be 1.0367x slower
   is-string-fold-tricky                              5.7197+-0.0561     ?      5.7622+-0.1922        ?
   is-string-fold                                     3.9505+-0.1476            3.9387+-0.0979        
   is-undefined-fold-tricky                           4.5173+-0.1549     ?      4.5582+-0.1011        ?
   is-undefined-fold                                  3.9946+-0.1334            3.9243+-0.0609          might be 1.0179x faster
   large-int-captured                                 6.8173+-0.2549            6.7831+-0.3603        
   large-int-neg                                     20.7515+-0.4438           20.7252+-0.2866        
   large-int                                         18.5352+-0.3275     ?     18.8012+-0.8286        ? might be 1.0144x slower
   logical-not                                        6.0776+-0.3505     ?      6.1487+-0.2695        ? might be 1.0117x slower
   lots-of-fields                                    19.3743+-0.4078           19.0927+-0.6115          might be 1.0147x faster
   make-indexed-storage                               4.2888+-0.4545     ?      4.3552+-0.5310        ? might be 1.0155x slower
   make-rope-cse                                      6.6602+-0.2540     ?      6.7415+-0.1084        ? might be 1.0122x slower
   marsaglia-larger-ints                             54.8768+-0.9281     ?     55.2280+-0.5981        ?
   marsaglia-osr-entry                               28.1051+-0.6934           27.7675+-0.8214          might be 1.0122x faster
   max-boolean                                        3.3352+-0.0683     ?      3.4354+-0.1859        ? might be 1.0300x slower
   method-on-number                                  23.5604+-0.8280           22.9657+-0.2893          might be 1.0259x faster
   min-boolean                                        3.2449+-0.1198     ?      3.3211+-0.1225        ? might be 1.0235x slower
   minus-boolean-double                               4.1608+-0.1510     ?      4.1917+-0.0342        ?
   minus-boolean                                      3.2672+-0.0593            3.2636+-0.1782        
   misc-strict-eq                                    57.3501+-2.2081           56.6557+-1.7333          might be 1.0123x faster
   mod-boolean-double                                11.6487+-0.3847           11.6268+-0.4287        
   mod-boolean                                        8.7117+-0.2160            8.6805+-0.1101        
   mul-boolean-double                                 4.8589+-0.0672            4.8303+-0.1400        
   mul-boolean                                        3.4401+-0.0973     ?      3.5140+-0.0557        ? might be 1.0215x slower
   neg-boolean                                        4.2925+-0.1087     ?      4.3388+-0.1195        ? might be 1.0108x slower
   negative-zero-divide                               0.4872+-0.0816     ?      0.5070+-0.1021        ? might be 1.0407x slower
   negative-zero-modulo                               0.4832+-0.1082     ?      0.4930+-0.0881        ? might be 1.0203x slower
   negative-zero-negate                               0.4709+-0.1207            0.4270+-0.0058          might be 1.1028x faster
   nested-function-parsing                           57.5099+-0.3040     ?     58.0176+-0.9158        ?
   new-array-buffer-dead                            140.5359+-1.0499          139.3040+-0.4759        
   new-array-buffer-push                              9.6796+-0.2998     ?      9.7462+-0.1699        ?
   new-array-dead                                    23.4716+-2.1226     ?     23.8286+-2.4989        ? might be 1.0152x slower
   new-array-push                                     5.5055+-0.2401            5.3200+-0.3137          might be 1.0349x faster
   no-inline-constructor                             50.5279+-1.0798     ?     51.1728+-0.6761        ? might be 1.0128x slower
   number-test                                        4.2537+-0.1823            4.2252+-0.1826        
   object-closure-call                                7.2874+-0.3855            7.2421+-0.2154        
   object-test                                        4.1723+-0.0339            4.1319+-0.1694        
   obvious-sink-pathology-taken                     175.2603+-2.0277     ?    175.9230+-4.0101        ?
   obvious-sink-pathology                           158.5150+-1.4957     ?    158.7575+-3.4426        ?
   obviously-elidable-new-object                     48.6227+-4.7699           48.5007+-4.2135        
   plus-boolean-arith                                 3.3040+-0.1473     ?      3.3662+-0.0968        ? might be 1.0188x slower
   plus-boolean-double                                4.2151+-0.1384            4.2063+-0.1331        
   plus-boolean                                       3.2280+-0.1462            3.2060+-0.1412        
   poly-chain-access-different-prototypes-simple   
                                                      3.8087+-0.0899     ?      3.8745+-0.0931        ? might be 1.0173x slower
   poly-chain-access-different-prototypes             3.1277+-0.0464     ?      3.1635+-0.1390        ? might be 1.0114x slower
   poly-chain-access-simpler                          3.8171+-0.1214     ?      3.8849+-0.1965        ? might be 1.0178x slower
   poly-chain-access                                  3.1659+-0.1579            3.0557+-0.0797          might be 1.0361x faster
   poly-stricteq                                     70.5832+-0.3731           70.0180+-0.4769        
   polymorphic-array-call                             1.8113+-0.0916     ?      1.8762+-0.2050        ? might be 1.0359x slower
   polymorphic-get-by-id                              4.1880+-0.2150     ?      4.2225+-0.1165        ?
   polymorphic-put-by-id                             40.6406+-4.2658           40.2591+-5.4946        
   polymorphic-structure                             17.8063+-0.2945           17.7448+-0.2439        
   polyvariant-monomorphic-get-by-id                 11.4618+-0.2949     ?     11.5225+-0.1027        ?
   proto-getter-access                               11.1813+-0.6074     ?     11.4205+-0.2494        ? might be 1.0214x slower
   put-by-id-replace-and-transition                  12.5341+-0.2077           12.3593+-0.2537          might be 1.0141x faster
   put-by-id-slightly-polymorphic                     3.5233+-0.1444     ?      3.5973+-0.0966        ? might be 1.0210x slower
   put-by-id                                         18.8417+-0.2920           18.4876+-0.5025          might be 1.0192x faster
   put-by-val-direct                                  0.5215+-0.1281            0.4846+-0.1155          might be 1.0762x faster
   put-by-val-large-index-blank-indexing-type   
                                                      8.1812+-0.5271     ?      8.3521+-0.5195        ? might be 1.0209x slower
   put-by-val-machine-int                             3.5709+-0.3911            3.5501+-0.2827        
   rare-osr-exit-on-local                            18.1245+-0.6528     ?     18.5234+-0.1240        ? might be 1.0220x slower
   register-pressure-from-osr                        25.8982+-0.5275           25.8140+-0.3145        
   setter                                             6.5530+-0.0859            6.5151+-0.1493        
   simple-activation-demo                            31.7686+-1.2001           30.8278+-0.3875          might be 1.0305x faster
   simple-getter-access                              14.8934+-0.6572           14.8862+-0.2539        
   simple-poly-call-nested                           10.0604+-0.0965     ?     10.1072+-0.2043        ?
   simple-poly-call                                   1.6812+-0.0481            1.6375+-0.1275          might be 1.0267x faster
   sin-boolean                                       25.9542+-3.9631     ?     27.1741+-1.2065        ? might be 1.0470x slower
   singleton-scope                                   80.0787+-0.9497     ?     80.3128+-1.0196        ?
   sink-function                                     16.0769+-0.5833     ?     16.1719+-0.2111        ?
   sinkable-new-object-dag                           95.1334+-2.4884     ?     95.3279+-0.3655        ?
   sinkable-new-object-taken                         72.3713+-3.9753           69.7118+-0.9512          might be 1.0381x faster
   sinkable-new-object                               52.7667+-0.7292     ?     54.1821+-1.6146        ? might be 1.0268x slower
   slow-array-profile-convergence                     4.1476+-0.2671            3.9612+-0.2767          might be 1.0470x faster
   slow-convergence                                   3.7038+-0.2067     ?      3.8448+-0.3165        ? might be 1.0381x slower
   sorting-benchmark                                 27.9146+-0.3085           27.8145+-1.2866        
   sparse-conditional                                 1.5826+-0.0829            1.5635+-0.1087          might be 1.0122x faster
   splice-to-remove                                  20.7971+-0.3262           20.5209+-0.4813          might be 1.0135x faster
   string-char-code-at                               19.5857+-0.5127           19.3538+-0.1160          might be 1.0120x faster
   string-concat-object                               3.1873+-0.3417     ?      3.3613+-0.4287        ? might be 1.0546x slower
   string-concat-pair-object                          3.2205+-0.4088            3.0599+-0.0914          might be 1.0525x faster
   string-concat-pair-simple                         17.1075+-1.2399           16.9958+-0.8957        
   string-concat-simple                              17.2462+-0.3932     ?     17.3129+-0.6979        ?
   string-cons-repeat                                11.0538+-0.3612     ?     11.4277+-0.1620        ? might be 1.0338x slower
   string-cons-tower                                 10.5306+-0.2541     ?     10.8833+-0.1230        ? might be 1.0335x slower
   string-equality                                   23.2255+-0.1180           23.1381+-0.3916        
   string-get-by-val-big-char                         9.7953+-0.3864     ?      9.9029+-0.4138        ? might be 1.0110x slower
   string-get-by-val-out-of-bounds-insane             5.1325+-0.2759     ?      5.1718+-0.0634        ?
   string-get-by-val-out-of-bounds                    6.8584+-0.2233            6.7662+-0.0928          might be 1.0136x faster
   string-get-by-val                                  4.7028+-0.1222     ?      4.7576+-0.0936        ? might be 1.0117x slower
   string-hash                                        2.7128+-0.1405     ?      2.7485+-0.1139        ? might be 1.0132x slower
   string-long-ident-equality                        18.6025+-0.4546     ?     18.9578+-0.8985        ? might be 1.0191x slower
   string-out-of-bounds                              17.8392+-0.6445           17.6395+-0.4371          might be 1.0113x faster
   string-repeat-arith                               40.0675+-0.6953           39.7419+-1.5478        
   string-sub                                        78.1337+-0.5404     ?     78.5480+-1.8337        ?
   string-test                                        4.2216+-0.1311     ?      4.2657+-0.0606        ? might be 1.0105x slower
   string-var-equality                               44.3915+-0.3925           44.2338+-0.3619        
   structure-hoist-over-transitions                   3.6465+-0.1920            3.5515+-0.2402          might be 1.0268x faster
   substring-concat-weird                            54.9457+-1.5171           54.5009+-0.7568        
   substring-concat                                  58.1820+-1.0266     ?     58.6414+-0.7792        ?
   substring                                         63.0558+-1.1730     ?     63.6432+-1.3737        ?
   switch-char-constant                               3.3437+-0.1854     ?      3.3683+-0.0900        ?
   switch-char                                       10.2978+-5.7226            7.6990+-0.1366          might be 1.3375x faster
   switch-constant                                   11.5632+-0.3825           11.2023+-0.3314          might be 1.0322x faster
   switch-string-basic-big-var                       26.7884+-1.1830     ?     27.3973+-0.3936        ? might be 1.0227x slower
   switch-string-basic-big                           22.1875+-2.1259           22.1460+-7.0286        
   switch-string-basic-var                           27.1140+-0.7521     ?     27.6895+-0.6894        ? might be 1.0212x slower
   switch-string-basic                               16.9702+-1.9015           16.8500+-2.3765        
   switch-string-big-length-tower-var                25.7384+-0.3289           25.6803+-0.3324        
   switch-string-length-tower-var                    19.7745+-0.3919           19.6990+-0.2505        
   switch-string-length-tower                        15.9852+-1.8733           15.9324+-0.7049        
   switch-string-short                               13.7515+-0.3980     ?     13.8318+-0.2621        ?
   switch                                            16.1736+-2.4674     ?     16.1791+-2.3074        ?
   tear-off-arguments-simple                          4.4478+-0.3313     ?      4.4960+-0.1647        ? might be 1.0108x slower
   tear-off-arguments                                 6.4111+-0.2702            6.4070+-0.3037        
   temporal-structure                                15.1785+-0.1756     ?     15.3463+-0.2748        ? might be 1.0111x slower
   to-int32-boolean                                  20.5610+-0.5051           20.5512+-0.2696        
   try-catch-get-by-val-cloned-arguments             19.3025+-0.3193     ?     19.9927+-0.8341        ? might be 1.0358x slower
   try-catch-get-by-val-direct-arguments              8.6143+-0.4899            8.5870+-0.5895        
   try-catch-get-by-val-scoped-arguments             10.4035+-0.3539           10.2811+-0.5264          might be 1.0119x faster
   typed-array-get-set-by-val-profiling              43.9748+-3.5791           41.6689+-1.8365          might be 1.0553x faster
   undefined-property-access                        428.9783+-5.3646          426.4598+-3.5036        
   undefined-test                                     4.4958+-0.0670            4.4320+-0.1847          might be 1.0144x faster
   unprofiled-licm                                   27.3765+-0.8382           27.1072+-0.8680        
   varargs-call                                      17.5976+-0.3500     ?     17.6668+-0.2285        ?
   varargs-construct-inline                          29.6215+-0.5411     ?     29.6700+-0.8032        ?
   varargs-construct                                 30.2044+-0.2552           29.9277+-0.1898        
   varargs-inline                                    10.4577+-0.1858           10.3757+-0.1519        
   varargs-strict-mode                               12.7011+-0.3044     ?     12.8185+-0.9364        ?
   varargs                                           12.5972+-0.1193     ?     12.6832+-0.3788        ?
   weird-inlining-const-prop                          2.8961+-0.2155            2.8811+-0.1620        

   <geometric>                                       10.8489+-0.0290           10.8222+-0.0358          might be 1.0025x faster

                                                          Conf#1                    Conf#2                                      
AsmBench:
   bigfib.cpp                                       672.6619+-9.4325          670.7493+-10.1379       
   cray.c                                           623.6575+-3.1004          621.6807+-2.0942        
   dry.c                                            654.0922+-1.5307     ?    654.1190+-0.7919        ?
   FloatMM.c                                        956.4980+-2.2288          955.2708+-1.0161        
   gcc-loops.cpp                                   5870.7053+-13.7207        5869.2598+-11.0082       
   n-body.c                                        1669.3310+-2.5898         1667.9983+-2.1012        
   Quicksort.c                                      569.7831+-4.9455     ?    572.7227+-2.4949        ?
   stepanov_container.cpp                          4888.4510+-29.5120    ?   4888.7488+-39.5006       ?
   Towers.c                                         374.9509+-2.0877          371.8025+-1.5313        

   <geometric>                                     1116.0438+-1.9729         1114.6153+-2.6965          might be 1.0013x faster

                                                          Conf#1                    Conf#2                                      
CompressionBench:
   huffman                                          499.2209+-2.1567          498.2756+-3.8201        
   arithmetic-simple                                527.7750+-1.2775          526.3882+-0.8845        
   arithmetic-precise                               402.1168+-2.2626          401.3778+-2.7621        
   arithmetic-complex-precise                       401.8900+-1.9853          400.7168+-2.6534        
   arithmetic-precise-order-0                       561.5009+-8.4529     ?    567.2136+-8.0601        ? might be 1.0102x slower
   arithmetic-precise-order-1                       422.9450+-3.2862          422.7391+-4.4674        
   arithmetic-precise-order-2                       472.2582+-4.3108     ?    474.4724+-12.1010       ?
   arithmetic-simple-order-1                        528.9850+-1.9384     ?    529.0212+-1.4707        ?
   arithmetic-simple-order-2                        584.4789+-2.6455     ?    587.0936+-3.1305        ?
   lz-string                                        414.3596+-3.4464     ?    414.8075+-3.0352        ?

   <geometric>                                      477.1526+-1.1746     ?    477.6559+-1.3156        ? might be 1.0011x slower

                                                          Conf#1                    Conf#2                                      
Geomean of preferred means:
   <scaled-result>                                   83.9340+-0.0934     ^     83.6950+-0.0775        ^ definitely 1.0029x faster
Comment 3 Geoffrey Garen 2015-05-12 12:20:16 PDT
Comment on attachment 252934 [details]
Patch

r=me
Comment 4 Benjamin Poulain 2015-05-12 14:30:05 PDT
Comment on attachment 252934 [details]
Patch

Clearing flags on attachment: 252934

Committed r184220: <http://trac.webkit.org/changeset/184220>
Comment 5 Benjamin Poulain 2015-05-12 14:30:09 PDT
All reviewed patches have been landed.  Closing bug.
Comment 7 Ryosuke Niwa 2015-05-12 22:36:02 PDT
(In reply to comment #6)
> The new test fails on Windows:
> https://build.webkit.org/builders/Apple%20Win%207%20Release%20(Tests)/builds/
> 51783/steps/jscore-test/logs/stdio

Looks like this is a Windows only failure. It's probably revealing an existing bug in jsc on Windows. I'll skip it temporarily to let Benjamin investigate it.
Comment 8 Ryosuke Niwa 2015-05-12 22:40:03 PDT
Filed https://bugs.webkit.org/show_bug.cgi?id=144947 to track the failure.
Comment 9 Alexey Proskuryakov 2015-05-13 12:00:45 PDT
Skipping didn't work, the test still fails.
Comment 10 Ryosuke Niwa 2015-05-13 14:05:57 PDT
(In reply to comment #9)
> Skipping didn't work, the test still fails.

That's because I skipped a wrong file :( Fixing that now.