Bug 154124 - MacroAssemblerX86 should be happy with shift(cx, cx)
Summary: MacroAssemblerX86 should be happy with shift(cx, cx)
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: 150279
  Show dependency treegraph
 
Reported: 2016-02-11 13:05 PST by Filip Pizlo
Modified: 2016-02-11 13:22 PST (History)
6 users (show)

See Also:


Attachments
the patch (9.52 KB, patch)
2016-02-11 13:18 PST, Filip Pizlo
sbarati: 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-02-11 13:05:58 PST
It currently asserts that shift_amount and dest cannot be the same.  That's a good assertion for when shift_amount is not in cx.  But if it's in cx already then it's OK for them to be the same.  Air will sometimes do shift(cx, cx) if you do "x << x" and the coalescing got particularly clever.
Comment 1 Filip Pizlo 2016-02-11 13:18:24 PST
Created attachment 271078 [details]
the patch
Comment 2 Geoffrey Garen 2016-02-11 13:20:46 PST
r=me
Comment 3 WebKit Commit Bot 2016-02-11 13:20:47 PST
Attachment 271078 [details] did not pass style-queue:


ERROR: Source/JavaScriptCore/b3/testb3.cpp:10081:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10104:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10127:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10149:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10173:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
ERROR: Source/JavaScriptCore/b3/testb3.cpp:10197:  Place brace on its own line for function definitions.  [whitespace/braces] [4]
Total errors found: 6 in 4 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 4 Filip Pizlo 2016-02-11 13:22:18 PST
Landed in http://trac.webkit.org/changeset/196433