[llvm] r345015 - [TTI] Add generic cost handling of SK_Reverse shuffles
Simon Pilgrim via llvm-commits
llvm-commits at lists.llvm.org
Tue Oct 23 02:42:10 PDT 2018
Author: rksimon
Date: Tue Oct 23 02:42:10 2018
New Revision: 345015
URL: http://llvm.org/viewvc/llvm-project?rev=345015&view=rev
Log:
[TTI] Add generic cost handling of SK_Reverse shuffles
These can be treated as a general permute.
This required a fix for missing reverse patterns on ARM
Modified:
llvm/trunk/include/llvm/CodeGen/BasicTTIImpl.h
llvm/trunk/lib/Target/ARM/ARMTargetTransformInfo.cpp
Modified: llvm/trunk/include/llvm/CodeGen/BasicTTIImpl.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm/CodeGen/BasicTTIImpl.h?rev=345015&r1=345014&r2=345015&view=diff
==============================================================================
--- llvm/trunk/include/llvm/CodeGen/BasicTTIImpl.h (original)
+++ llvm/trunk/include/llvm/CodeGen/BasicTTIImpl.h Tue Oct 23 02:42:10 2018
@@ -555,6 +555,7 @@ public:
Type *SubTp) {
switch (Kind) {
case TTI::SK_Select:
+ case TTI::SK_Reverse:
case TTI::SK_Transpose:
case TTI::SK_PermuteSingleSrc:
case TTI::SK_PermuteTwoSrc:
Modified: llvm/trunk/lib/Target/ARM/ARMTargetTransformInfo.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/ARM/ARMTargetTransformInfo.cpp?rev=345015&r1=345014&r2=345015&view=diff
==============================================================================
--- llvm/trunk/lib/Target/ARM/ARMTargetTransformInfo.cpp (original)
+++ llvm/trunk/lib/Target/ARM/ARMTargetTransformInfo.cpp Tue Oct 23 02:42:10 2018
@@ -412,6 +412,8 @@ int ARMTTIImpl::getShuffleCost(TTI::Shuf
{ISD::VECTOR_SHUFFLE, MVT::v2f32, 1},
{ISD::VECTOR_SHUFFLE, MVT::v2i64, 1},
{ISD::VECTOR_SHUFFLE, MVT::v2f64, 1},
+ {ISD::VECTOR_SHUFFLE, MVT::v4i16, 1},
+ {ISD::VECTOR_SHUFFLE, MVT::v8i8, 1},
{ISD::VECTOR_SHUFFLE, MVT::v4i32, 2},
{ISD::VECTOR_SHUFFLE, MVT::v4f32, 2},
More information about the llvm-commits
mailing list