summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
diff options
context:
space:
mode:
authorSanjay Patel <spatel@rotateright.com>2015-03-24 22:39:29 +0000
committerSanjay Patel <spatel@rotateright.com>2015-03-24 22:39:29 +0000
commite304bea010879945bf63eacb0b0e2f2d7974fbd8 (patch)
tree4151f7bc482fb77eedabdbaf68a8ae59cc188df7 /llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
parent68d535c45f207b8749b6dc2383a05a6e39d13738 (diff)
downloadbcm5719-llvm-e304bea010879945bf63eacb0b0e2f2d7974fbd8.tar.gz
bcm5719-llvm-e304bea010879945bf63eacb0b0e2f2d7974fbd8.zip
optimize the AVX2 (integer) version of vperm2 into a shuffle
...because this is what happens when an instruction set puts its underwear on after its pants. This is an extension of r232852, r233100, and 233110: http://llvm.org/viewvc/llvm-project?view=revision&revision=232852 http://llvm.org/viewvc/llvm-project?view=revision&revision=233100 http://llvm.org/viewvc/llvm-project?view=revision&revision=233110 llvm-svn: 233127
Diffstat (limited to 'llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp')
-rw-r--r--llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp b/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
index 8f7825a8664..21243c229c6 100644
--- a/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
+++ b/llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp
@@ -972,7 +972,7 @@ Instruction *InstCombiner::visitCallInst(CallInst &CI) {
case Intrinsic::x86_avx_vperm2f128_pd_256:
case Intrinsic::x86_avx_vperm2f128_ps_256:
case Intrinsic::x86_avx_vperm2f128_si_256:
- // TODO: Add the AVX2 version of this instruction.
+ case Intrinsic::x86_avx2_vperm2i128:
if (Value *V = SimplifyX86vperm2(*II, *Builder))
return ReplaceInstUsesWith(*II, V);
break;
OpenPOWER on IntegriCloud