diff options
author | Sanjay Patel <spatel@rotateright.com> | 2015-03-24 22:39:29 +0000 |
---|---|---|
committer | Sanjay Patel <spatel@rotateright.com> | 2015-03-24 22:39:29 +0000 |
commit | e304bea010879945bf63eacb0b0e2f2d7974fbd8 (patch) | |
tree | 4151f7bc482fb77eedabdbaf68a8ae59cc188df7 /llvm/lib/Transforms/InstCombine/InstCombineCalls.cpp | |
parent | 68d535c45f207b8749b6dc2383a05a6e39d13738 (diff) | |
download | bcm5719-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.cpp | 2 |
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; |