[PATCH] D45563: [X86][AArch64][NFC] Add tests for masked merge unfolding

Roman Lebedev via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Apr 12 05:01:38 PDT 2018


lebedev.ri created this revision.
lebedev.ri added reviewers: spatel, craig.topper, RKSimon.
Herald added subscribers: kristof.beyls, javed.absar, rengolin.

This is PR37104 <https://bugs.llvm.org/show_bug.cgi?id=37104>.

PR6773 <https://bugs.llvm.org/show_bug.cgi?id=6773> will introduce an IR canonicalization that is likely bad for the end assembly.
Previously, `andl`+`andn`/`andps`+`andnps` / `bic`/`bsl` would be generated. (see `@out`)
Now, they would no longer be generated  (see `@in`).
I'm guessing `llvm/lib/CodeGen/SelectionDAG/DAGCombiner.cpp` should be able to unfold this.

1. Am i on the right track?
2. Any other arches needed in tests?
3. Any other tests needed?


Repository:
  rL LLVM

https://reviews.llvm.org/D45563

Files:
  test/CodeGen/AArch64/unfold-masked-merge.ll
  test/CodeGen/X86/unfold-masked-merge.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D45563.142152.patch
Type: text/x-patch
Size: 13681 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180412/7f695bb5/attachment.bin>


More information about the llvm-commits mailing list