[PATCH] [X86, AVX] instcombine vperm2 intrinsics with zero inputs into shuffles

Sanjay Patel spatel at rotateright.com
Mon Mar 23 14:49:42 PDT 2015


Hi andreadb, mkuper, RKSimon, chandlerc,

This is the IR optimizer follow-on patch for D8563: the x86 backend patch that converts this kind of shuffle back into a vperm2.

This is also a continuation of the transform that started in D8486. In that patch, Andrea suggested that we could convert vperm2 intrinsics that use zero masks into a single shuffle. This is an implementation of that suggestion.

I recognize that we could go even further into bit twiddling hackery to make the code a line or two shorter, but I thought it would hurt readability.

http://reviews.llvm.org/D8567

Files:
  lib/Transforms/InstCombine/InstCombineCalls.cpp
  test/Transforms/InstCombine/x86-vperm2.ll

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D8567.22519.patch
Type: text/x-patch
Size: 6880 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150323/76242e7d/attachment.bin>


More information about the llvm-commits mailing list