Bug 157746 - FixupPhase should be more eager to demote bit math to untyped
Summary: FixupPhase should be more eager to demote bit math to untyped
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: JavaScriptCore (show other bugs)
Version: WebKit Nightly Build
Hardware: All All
: P2 Normal
Assignee: Filip Pizlo
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-05-16 12:20 PDT by Filip Pizlo
Modified: 2016-05-16 12:40 PDT (History)
5 users (show)

See Also:


Attachments
the patch (15.89 KB, patch)
2016-05-16 12:28 PDT, Filip Pizlo
mark.lam: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Filip Pizlo 2016-05-16 12:20:10 PDT
It shouldn't take a past exit to do it.
Comment 1 Filip Pizlo 2016-05-16 12:28:30 PDT
Created attachment 279034 [details]
the patch
Comment 2 Mark Lam 2016-05-16 12:36:57 PDT
Comment on attachment 279034 [details]
the patch

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

r=me

> Source/JavaScriptCore/ChangeLog:10
> +        This just makes the logic for how we fixup bit math match the way we do it in other places.
> +        This doesn't affect performance on any major benchmark but it's a big win on new
> +        microbenchmarks added in this change.

Would you mind adding some details for how much gain on the microbenchmarks or aternatively, post the numbers to bugzilla?
Comment 3 Filip Pizlo 2016-05-16 12:38:36 PDT
(In reply to comment #2)
> Comment on attachment 279034 [details]
> the patch
> 
> View in context:
> https://bugs.webkit.org/attachment.cgi?id=279034&action=review
> 
> r=me
> 
> > Source/JavaScriptCore/ChangeLog:10
> > +        This just makes the logic for how we fixup bit math match the way we do it in other places.
> > +        This doesn't affect performance on any major benchmark but it's a big win on new
> > +        microbenchmarks added in this change.
> 
> Would you mind adding some details for how much gain on the microbenchmarks
> or aternatively, post the numbers to bugzilla?

Added:

        object-and                                     11.1610+-0.7602     ^      4.8105+-0.1690        ^ definitely 2.3201x faster
        object-or                                      11.0845+-0.2487     ^      4.7146+-0.0374        ^ definitely 2.3511x faster
        object-xor                                     10.2946+-0.9946     ^      4.7278+-0.0814        ^ definitely 2.1775x faster
        object-lshift                                  10.4896+-1.0867     ^      4.7699+-0.0721        ^ definitely 2.1991x faster
        object-rshift                                  11.1239+-0.5010     ^      4.7194+-0.0445        ^ definitely 2.3570x faster
        object-urshift                                 10.9745+-0.1315     ^      4.7848+-0.0479        ^ definitely 2.2936x faster
Comment 4 Filip Pizlo 2016-05-16 12:40:27 PDT
Landed in http://trac.webkit.org/changeset/200958