[PATCH] D76382: [GlobalISel] Port some basic shufflevector undef combines from the DAGCombiner

Jessica Paquette via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Mar 18 13:35:24 PDT 2020


paquette created this revision.
paquette added reviewers: aemerson, dsanders, arsenm.
Herald added subscribers: volkan, hiraditya, rovka, wdng.

Port over the following:

- shuffle undef, undef, any_mask -> undef
- shuffle anything, anything, undef_mask -> undef

This sort of thing shows up a lot when you try to bugpoint code containing shufflevector. This can be annoying when you are doing things like "give me a testcase where GISel produces more instructions".

Also add a FIXME noting that these should be ported over to the custom predicate feature once it lands.


https://reviews.llvm.org/D76382

Files:
  llvm/include/llvm/CodeGen/GlobalISel/CombinerHelper.h
  llvm/include/llvm/Target/GlobalISel/Combine.td
  llvm/lib/CodeGen/GlobalISel/CombinerHelper.cpp
  llvm/test/CodeGen/AArch64/GlobalISel/prelegalizercombiner-undef.mir

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D76382.251156.patch
Type: text/x-patch
Size: 6198 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200318/c6df0ada/attachment.bin>


More information about the llvm-commits mailing list