[PATCH] D11934: [InstCombine] Move SSE/AVX vector blend folding to instcombiner

Simon Pilgrim via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 11 03:37:25 PDT 2015


RKSimon created this revision.
RKSimon added reviewers: andreadb, mkuper, majnemer.
RKSimon added a subscriber: llvm-commits.
RKSimon set the repository for this revision to rL LLVM.

As discussed in D11886, this patch moves the SSE/AVX vector blend folding to instcombiner from PerformINTRINSIC_WO_CHAINCombine (which allowed us to remove this completely).

InstCombiner already had partial support for this, I just had to add support for zero (ConstantAggregateZero) masks and also the case where both selection inputs were the same (allowing us to ignore the mask).

I also moved all the relevant combine tests into InstCombine/blend_x86.ll

Repository:
  rL LLVM

http://reviews.llvm.org/D11934

Files:
  lib/Target/X86/X86ISelLowering.cpp
  lib/Transforms/InstCombine/InstCombineCalls.cpp
  test/CodeGen/X86/combine-avx-intrinsics.ll
  test/CodeGen/X86/combine-avx2-intrinsics.ll
  test/CodeGen/X86/combine-sse41-intrinsics.ll
  test/Transforms/InstCombine/blend_x86.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D11934.31783.patch
Type: text/x-patch
Size: 23692 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150811/a5ac904b/attachment.bin>


More information about the llvm-commits mailing list