Mon, Jan 18
Fri, Jan 15
Thu, Jan 14
Wed, Jan 13
Addressed comments; modifying checks and updating tests.
Mon, Jan 11
Fri, Jan 8
Thu, Jan 7
This commit caused a crash on our bots with a null LLVMTy at changeExtendedVectorElementType. Reduced case: https://godbolt.org/z/7ehffx
Made the return value respect whether any operands are to be sunk.
Wed, Jan 6
Addressed comments, updating the checks and tests
Tue, Jan 5
Added test case for non-splat shuffles
Thu, Dec 31
I can't see any issues with this, LGTM
Dec 18 2020
Fixed incorrect error-handling
Dec 16 2020
Addressed comments, and re-added a couple of "Unsupported combines" tests.
Dec 15 2020
Fixed formatting, and removed "Unsupported combines" tests as they were failing due to a separate issue (and contribute very little value to this patch)
Fixed broken commit
Dec 14 2020
Dec 8 2020
Addressed comments, and rebased on top of the changes in the parent revision.
Dec 7 2020
Fixed more formatting issues (that were apparently missed by clang-format before?)
Can you run clang-format on the patch to make it more readable?
Done, sorry about that (Guess I should have another look at my pre-commit hooks)
Dec 2 2020
Removed redundant/useless debug prints that were erroneously included in the patch.
Addressed comments, and changed to be more targeted. The rearrangement will only be performed if the pattern feeds into a mul instruction, and only if the type combination is valid for smull/umull folding.
Nov 11 2020
This looks like two separate patches to me.
Nov 3 2020
Nov 2 2020
This pattern isn't needed I don't think
Oct 29 2020
I appreciate that the history and context for this has been a bit obscured. Most of it can be gathered on the patch D83667
I think a MIR test would be better here.
Oct 26 2020
Looks nice to me. Is it worth adding mul (sext_inreg, sext i32) patterns too in case one operand is sext and the other is being masked? mul is commutative so I think it would only be two extra patterns, one for sext and one for zext.
Oct 22 2020
Oct 21 2020
Rebased atop changes to https://reviews.llvm.org/D88494
Oct 19 2020
I'm a little concerned IfConversion isn't really prepared to deal with the distinction here: in some cases, if conversion doesn't predicate all the instructions in the if-converted block.
Oct 12 2020
Do we really need the boolean to default to false? There are only two callers, as far as I can tell.
Sep 29 2020
Aug 14 2020
Looks like we've lost access to https://crbug.com/1114852, so can't access the build repro. Is this something you can sort out for us?
Aug 13 2020
Hi @akhuang, thanks for bringing this up.
Aug 10 2020
LGTM, if no one else has any issues.
Source changes look good to me, just a few test-related points to address.
Aug 3 2020
Addressed comments, and rebased to include D84653 (Which handles the IT-block instruction legality)
Jul 13 2020
Jul 2 2020
Jul 1 2020
Updates some comments. NFC when compared to prior diffs
Jun 26 2020
Addressing inline comments
Jun 24 2020
Reworded/improved summary, and included full patch context