Bug 154572

Summary: [JSC] Improve Select of Doubles based on Double condition
Product: WebKit Reporter: Benjamin Poulain <benjamin>
Component: New BugsAssignee: Benjamin Poulain <benjamin>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, fpizlo, keith_miller, mark.lam, msaboff, sbarati
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch none

Description Benjamin Poulain 2016-02-22 18:35:58 PST
[JSC] Improve Select of Doubles based on Double condition
Comment 1 Benjamin Poulain 2016-02-22 18:44:15 PST
Created attachment 271979 [details]
Patch
Comment 2 Benjamin Poulain 2016-02-22 18:44:36 PST
ARM64 results:


                                                  Conf#1                    Conf#2                                      
SunSpider:
   3d-cube                                   10.4678+-0.1776           10.4234+-0.0884        
   3d-morph                                   8.2765+-0.0665     ?      8.4501+-0.1354        ? might be 1.0210x slower
   3d-raytrace                                9.6306+-0.4978     ?     10.1917+-0.4832        ? might be 1.0583x slower
   access-binary-trees                        4.3589+-0.0500            4.2659+-0.1246          might be 1.0218x faster
   access-fannkuch                           11.6872+-0.9625     ?     11.7824+-1.1008        ?
   access-nbody                               4.8167+-0.1337            4.7069+-0.0507          might be 1.0233x faster
   access-nsieve                              3.5576+-0.2040            3.5423+-0.0670        
   bitops-3bit-bits-in-byte                   1.8202+-0.1677     ?      1.8905+-0.2034        ? might be 1.0386x slower
   bitops-bits-in-byte                        4.3246+-0.1038            4.3028+-0.0341        
   bitops-bitwise-and                         3.2191+-0.0285     ?      3.2289+-0.0516        ?
   bitops-nsieve-bits                         5.8892+-0.0526     ?      5.9472+-0.0683        ?
   controlflow-recursive                      3.8726+-0.3588            3.5500+-0.3637          might be 1.0909x faster
   crypto-aes                                 6.5471+-0.1118     ?      6.5686+-0.1597        ?
   crypto-md5                                 4.3004+-0.3622            4.1703+-0.2402          might be 1.0312x faster
   crypto-sha1                                3.8150+-0.1209            3.7923+-0.0568        
   date-format-tofte                         11.1752+-0.1305           11.1364+-0.1037        
   date-format-xparb                          7.5310+-0.4663            7.4216+-0.1289          might be 1.0147x faster
   math-cordic                                5.4047+-0.0895            5.3905+-0.0984        
   math-partial-sums                         11.6647+-0.1398     ?     11.7150+-0.1698        ?
   math-spectral-norm                         3.2741+-0.2327     ?      3.4810+-0.2925        ? might be 1.0632x slower
   regexp-dna                                 9.7617+-0.0705     ?      9.7723+-0.1063        ?
   string-base64                              6.5264+-0.0964            6.4979+-0.0381        
   string-fasta                               9.8154+-0.1679     ?      9.9933+-0.1529        ? might be 1.0181x slower
   string-tagcloud                           11.1328+-0.1967           11.0198+-0.1089          might be 1.0103x faster
   string-unpack-code                        23.7781+-0.1873           23.6078+-0.1298        
   string-validate-input                      6.6788+-0.1459            6.4669+-0.1227          might be 1.0328x faster

   <arithmetic>                               7.4356+-0.0563            7.4352+-0.0629          might be 1.0001x faster

                                                  Conf#1                    Conf#2                                      
Octane:
   encrypt                                   0.19860+-0.00155    ?     0.19905+-0.00139       ?
   decrypt                                   3.71906+-0.00576    ?     3.72646+-0.02533       ?
   deltablue                        x2       0.17446+-0.00461          0.17203+-0.00338         might be 1.0141x faster
   earley                                    0.42984+-0.01644          0.41700+-0.00675         might be 1.0308x faster
   boyer                                     7.96326+-0.37931          7.65866+-0.18503         might be 1.0398x faster
   navier-stokes                    x2       7.18257+-0.00512    ?     7.22201+-0.06471       ?
   raytrace                         x2       1.29717+-0.01003          1.28950+-0.00698       
   richards                         x2       0.11467+-0.00100          0.11424+-0.00093       
   splay                            x2       0.74971+-0.01588    ^     0.72347+-0.00926       ^ definitely 1.0363x faster
   regexp                           x2      36.87020+-0.23798         36.68169+-0.09856       
   pdfjs                            x2      56.57145+-0.63483    ?    56.76323+-0.61822       ?
   mandreel                         x2      72.11990+-0.76653         71.65942+-1.14959       
   gbemu                            x2      45.95830+-3.68361         45.76195+-4.04929       
   closure                                   0.65412+-0.00613    ?     0.66838+-0.02829       ? might be 1.0218x slower
   jquery                                    9.68256+-0.04040    ?     9.68319+-0.01521       ?
   box2d                            x2      16.84773+-1.92125         15.97744+-0.13870         might be 1.0545x faster
   zlib                             x2     679.09902+-8.46445    ?   684.17057+-2.34361       ?
   typescript                       x2    1142.23555+-12.20514   ?  1150.15195+-6.53485       ?

   <geometric>                               8.18626+-0.05766          8.12227+-0.04894         might be 1.0079x faster

                                                  Conf#1                    Conf#2                                      
Kraken:
   ai-astar                                  155.956+-0.867            155.788+-0.440         
   audio-beat-detection                       58.734+-0.314      ?      58.992+-1.435         ?
   audio-dft                                 147.326+-5.702            142.967+-5.213           might be 1.0305x faster
   audio-fft                                  41.914+-0.093             41.891+-0.106         
   audio-oscillator                           58.072+-0.486      ?      58.177+-0.838         ?
   imaging-darkroom                           69.077+-0.105      ?      69.194+-0.120         ?
   imaging-desaturate                         78.536+-0.889      ?      78.565+-0.645         ?
   imaging-gaussian-blur                     106.425+-1.281      ?     107.502+-0.876         ? might be 1.0101x slower
   json-parse-financial                       48.121+-0.129      ?      48.355+-0.798         ?
   json-stringify-tinderbox                   27.058+-0.410      ?      27.198+-0.250         ?
   stanford-crypto-aes                        58.242+-0.182      !      58.820+-0.387         ! definitely 1.0099x slower
   stanford-crypto-ccm                        47.393+-1.320             46.965+-0.834         
   stanford-crypto-pbkdf2                    139.804+-0.623      !     141.403+-0.799         ! definitely 1.0114x slower
   stanford-crypto-sha256-iterative           51.459+-0.142      ?      51.518+-0.220         ?

   <arithmetic>                               77.723+-0.467             77.667+-0.399           might be 1.0007x faster

                                                  Conf#1                    Conf#2                                      
AsmBench:
   bigfib.cpp                               673.9739+-3.9344          672.6627+-29.9566       
   cray.c                                   561.9127+-1.1886     ?    561.9176+-0.7776        ?
   dry.c                                    473.7460+-3.9622          473.5770+-4.6664        
   FloatMM.c                                793.6519+-1.1961          792.6264+-0.3668        
   gcc-loops.cpp                           4599.4011+-4.4631     ?   4608.1185+-19.9831       ?
   n-body.c                                1773.3995+-2.5473         1749.8401+-40.9771         might be 1.0135x faster
   Quicksort.c                              569.5708+-3.3983          567.4153+-3.5734        
   stepanov_container.cpp                  5640.3250+-80.4516        5602.4305+-15.8436       
   Towers.c                                 282.4936+-0.7417     ?    282.8061+-0.6463        ?

   <geometric>                             1005.8344+-2.2890         1002.8776+-4.2186          might be 1.0029x faster

                                                  Conf#1                    Conf#2                                      
Geomean of preferred means:
   <scaled-result>                           46.7043+-0.1008           46.5694+-0.0792          might be 1.0029x faster
Comment 3 WebKit Commit Bot 2016-02-22 18:46:35 PST
Attachment 271979 [details] did not pass style-queue:


ERROR: Source/JavaScriptCore/b3/testb3.cpp:9691:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:9729:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10021:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10022:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10023:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10024:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10025:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10026:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10027:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10243:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10244:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10245:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10246:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10247:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10248:  More than one command on the same line  [whitespace/newline] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10249:  More than one command on the same line  [whitespace/newline] [4]
Total errors found: 16 in 7 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 4 WebKit Commit Bot 2016-03-02 21:18:54 PST
Comment on attachment 271979 [details]
Patch

Clearing flags on attachment: 271979

Committed r197490: <http://trac.webkit.org/changeset/197490>
Comment 5 WebKit Commit Bot 2016-03-02 21:18:58 PST
All reviewed patches have been landed.  Closing bug.