Bug 153394 - mandreel should run just as fast in FTL B3 as FTL LLVM
Summary: mandreel should run just as fast in FTL B3 as FTL LLVM
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-01-22 21:46 PST by Filip Pizlo
Modified: 2016-01-25 12:48 PST (History)
11 users (show)

See Also:


Attachments
work so far (12.17 KB, patch)
2016-01-22 21:47 PST, Filip Pizlo
no flags Details | Formatted Diff | Diff
the patch (34.27 KB, patch)
2016-01-22 23:44 PST, Filip Pizlo
barraclough: review+
Details | Formatted Diff | Diff
current standings (81.20 KB, text/plain)
2016-01-23 00:32 PST, Filip Pizlo
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Filip Pizlo 2016-01-22 21:46:42 PST
Patch forthcoming.
Comment 1 Filip Pizlo 2016-01-22 21:47:51 PST
Created attachment 269648 [details]
work so far

Contains two optimizations:

- Branch on something that was already Checked should be turned into a Jump to the notTaken path.

- Gotta do more store-math-load fusion.
Comment 2 Filip Pizlo 2016-01-22 23:44:49 PST
Created attachment 269658 [details]
the patch
Comment 3 WebKit Commit Bot 2016-01-22 23:45:59 PST
Attachment 269658 [details] did not pass style-queue:


ERROR: Source/JavaScriptCore/b3/B3ReduceStrength.cpp:45:  Alphabetical sorting problem.  [build/include_order] [4]
ERROR: Source/JavaScriptCore/disassembler/udis86/udis86_syn-att.c:170:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/disassembler/udis86/udis86_syn-att.c:233:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/disassembler/udis86/udis86_syn-att.c:234:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/disassembler/udis86/udis86_syn-att.c:235:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/disassembler/udis86/udis86_syn-att.c:236:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/disassembler/udis86/udis86_syn-att.c:242:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/JavaScriptCore/disassembler/udis86/udis86_syn-att.c:243:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
Total errors found: 8 in 10 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 4 Filip Pizlo 2016-01-23 00:32:45 PST
Created attachment 269659 [details]
current standings
Comment 5 Gavin Barraclough 2016-01-25 11:49:26 PST
Comment on attachment 269658 [details]
the patch

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

> Source/JavaScriptCore/assembler/X86Assembler.h:455
> +        m_formatter.oneByteOp8(OP_ADD_EvGv, src, base, offset);

Per conversation probably doesn't need to be oneByteOp8, in a future patch.

> Source/JavaScriptCore/b3/B3PureCSE.cpp:54
> +    Matches& matches = m_map.add(key, Matches()).iterator->value;

add –> find

> Source/JavaScriptCore/disassembler/udis86/udis86_syn-att.c:243
> +        mkasm(u, "l");

indentation!
Comment 6 Filip Pizlo 2016-01-25 12:48:51 PST
Landed in http://trac.webkit.org/changeset/195549