Bug 162132 - [JSC][LLInt] Introduce is_cell_with_type
Summary: [JSC][LLInt] Introduce is_cell_with_type
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: WebKit Nightly Build
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Yusuke Suzuki
URL:
Keywords:
Depends on:
Blocks: 162142
  Show dependency treegraph
 
Reported: 2016-09-17 23:18 PDT by Yusuke Suzuki
Modified: 2016-09-19 16:29 PDT (History)
5 users (show)

See Also:


Attachments
Patch (35.05 KB, patch)
2016-09-18 23:50 PDT, Yusuke Suzuki
no flags Details | Formatted Diff | Diff
Patch (35.93 KB, patch)
2016-09-18 23:53 PDT, Yusuke Suzuki
no flags Details | Formatted Diff | Diff
Patch (35.87 KB, patch)
2016-09-19 01:06 PDT, Yusuke Suzuki
sam: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Yusuke Suzuki 2016-09-17 23:18:04 PDT
If it does not pose any perf regression!
Comment 1 Yusuke Suzuki 2016-09-18 23:15:53 PDT
Quick note: is-array-xxx microbenchmarks does not pose any perf regression.
Comment 2 Yusuke Suzuki 2016-09-18 23:20:31 PDT
Kraken 10x does not pose any perf regression.
                                           baseline                  patched                                      

ai-astar                               104.779+-5.396            104.388+-7.231         
audio-beat-detection                    43.249+-0.479      ?      45.301+-3.136         ? might be 1.0475x slower
audio-dft                              122.091+-0.207            121.975+-0.120         
audio-fft                               36.526+-2.884             35.894+-0.336           might be 1.0176x faster
audio-oscillator                        50.530+-0.125      ?      50.622+-0.245         ?
imaging-darkroom                        87.718+-0.181             87.644+-0.127         
imaging-desaturate                      55.689+-0.057      ?      55.714+-0.089         ?
imaging-gaussian-blur                   79.802+-5.441             76.817+-13.184          might be 1.0389x faster
json-parse-financial                    45.172+-1.699             44.412+-0.483           might be 1.0171x faster
json-stringify-tinderbox                27.742+-2.602             26.060+-0.269           might be 1.0645x faster
stanford-crypto-aes                     41.248+-0.297      ?      41.319+-0.517         ?
stanford-crypto-ccm                     40.269+-3.120             40.129+-0.829         
stanford-crypto-pbkdf2                  99.160+-2.688      ?      99.512+-2.383         ?
stanford-crypto-sha256-iterative        33.518+-0.055      ^      33.391+-0.071         ^ definitely 1.0038x faster

<arithmetic>                            61.964+-0.517             61.656+-1.027           might be 1.0050x faster
Comment 3 Yusuke Suzuki 2016-09-18 23:32:06 PDT
OK! Octane also does not pose perf regressions!

                            baseline                  patched                                      

encrypt                 0.18176+-0.00113          0.18137+-0.00095       
decrypt                 2.94496+-0.02083          2.94092+-0.01175       
deltablue      x2       0.14056+-0.00248    ?     0.14811+-0.01230       ? might be 1.0537x slower
earley                  0.27780+-0.00071    ?     0.27826+-0.00056       ?
boyer                   4.72845+-0.01276          4.72487+-0.00844       
navier-stokes  x2       4.78319+-0.01079    ?     4.79980+-0.03981       ?
raytrace       x2       0.82850+-0.01110    ?     0.83306+-0.00671       ?
richards       x2       0.08974+-0.00250    ?     0.09145+-0.00223       ? might be 1.0190x slower
splay          x2       0.36832+-0.00193    ?     0.37042+-0.00178       ?
regexp         x2      19.45685+-0.13716    ?    19.61233+-0.12050       ?
pdfjs          x2      42.33251+-0.49102    ?    43.09881+-0.87100       ? might be 1.0181x slower
mandreel       x2      50.41776+-1.02654         49.49966+-0.36287         might be 1.0185x faster
gbemu          x2      35.68241+-0.56086    ?    36.03761+-0.88023       ?
closure                 0.62445+-0.01067          0.61458+-0.00300         might be 1.0161x faster
jquery                  8.15364+-0.19368          8.05949+-0.04403         might be 1.0117x faster
box2d          x2      14.47267+-0.16801    ?    14.60825+-0.14110       ?
zlib           x2     365.77266+-5.31775        357.42082+-5.87320         might be 1.0234x faster
typescript     x2     837.10984+-11.77692       835.97700+-13.96924      

<geometric>             5.71762+-0.01958    ?     5.74389+-0.03770       ? might be 1.0046x slower
Comment 4 Yusuke Suzuki 2016-09-18 23:50:41 PDT
Created attachment 289217 [details]
Patch
Comment 5 Yusuke Suzuki 2016-09-18 23:51:12 PDT
Comment on attachment 289217 [details]
Patch

I'll perform rebaseline.
Comment 6 Yusuke Suzuki 2016-09-18 23:53:18 PDT
Created attachment 289218 [details]
Patch
Comment 7 Yusuke Suzuki 2016-09-18 23:54:31 PDT
OK, ready for review!
Comment 8 Yusuke Suzuki 2016-09-19 01:06:16 PDT
Created attachment 289219 [details]
Patch
Comment 9 Sam Weinig 2016-09-19 07:09:47 PDT
Comment on attachment 289219 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=289219&action=review

> Source/JavaScriptCore/ChangeLog:11
> +        This automatically offers optimization to previous IsSring node: dropping cell check by using CellUse edge filter.

Typo, IsSring -> IsString
Comment 10 Yusuke Suzuki 2016-09-19 09:55:52 PDT
Comment on attachment 289219 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=289219&action=review

Thanks!

>> Source/JavaScriptCore/ChangeLog:11
>> +        This automatically offers optimization to previous IsSring node: dropping cell check by using CellUse edge filter.
> 
> Typo, IsSring -> IsString

Oops! Fixed.
Comment 11 Yusuke Suzuki 2016-09-19 10:02:40 PDT
Committed r206098: <http://trac.webkit.org/changeset/206098>
Comment 12 Yusuke Suzuki 2016-09-19 16:29:45 PDT
Committed r206128: <http://trac.webkit.org/changeset/206128>