[PATCH] D37357: [x86] eliminate redundant shuffle of horizontal math ops when both inputs are the same

Sanjay Patel via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Aug 31 14:19:21 PDT 2017


spatel created this revision.
Herald added a subscriber: mcrosier.

This is limited to a set of patterns based on the example in PR34111:
https://bugs.llvm.org/show_bug.cgi?id=34111
...but as I was investigating this, I see that horizontal patterns can go wrong in many, many other ways that would not be handled by this patch. Each data type may even go different in the DAG after starting with the same basic IR pattern, so even proper IR canonicalization won't fix it all.


https://reviews.llvm.org/D37357

Files:
  lib/Target/X86/X86ISelLowering.cpp
  test/CodeGen/X86/haddsub-shuf.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D37357.113467.patch
Type: text/x-patch
Size: 7176 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170831/f505e42b/attachment.bin>


More information about the llvm-commits mailing list