diff options
| author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2017-05-18 10:42:34 +0000 |
|---|---|---|
| committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2017-05-18 10:42:34 +0000 |
| commit | 6bba6068be0d884c15ff78ecf803197f5d84a5e2 (patch) | |
| tree | 248d674b32cae346a19de5df22b784c7033edea0 /llvm/lib/Target | |
| parent | 89e9308623ff0f03fa2fc5416d6f4c9c8645707d (diff) | |
| download | bcm5719-llvm-6bba6068be0d884c15ff78ecf803197f5d84a5e2.tar.gz bcm5719-llvm-6bba6068be0d884c15ff78ecf803197f5d84a5e2.zip | |
[X86][AVX512] Add 512-bit vector ctpop costs + tests
llvm-svn: 303342
Diffstat (limited to 'llvm/lib/Target')
| -rw-r--r-- | llvm/lib/Target/X86/X86TargetTransformInfo.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86TargetTransformInfo.cpp b/llvm/lib/Target/X86/X86TargetTransformInfo.cpp index 057e8740d67..fe94079fd86 100644 --- a/llvm/lib/Target/X86/X86TargetTransformInfo.cpp +++ b/llvm/lib/Target/X86/X86TargetTransformInfo.cpp @@ -1415,6 +1415,10 @@ int X86TTIImpl::getIntrinsicInstrCost(Intrinsic::ID IID, Type *RetTy, { ISD::CTLZ, MVT::v16i32, 22 }, { ISD::CTLZ, MVT::v32i16, 18 }, { ISD::CTLZ, MVT::v64i8, 17 }, + { ISD::CTPOP, MVT::v8i64, 7 }, + { ISD::CTPOP, MVT::v16i32, 11 }, + { ISD::CTPOP, MVT::v32i16, 9 }, + { ISD::CTPOP, MVT::v64i8, 6 }, { ISD::CTTZ, MVT::v8i64, 10 }, { ISD::CTTZ, MVT::v16i32, 14 }, { ISD::CTTZ, MVT::v32i16, 12 }, @@ -1425,6 +1429,8 @@ int X86TTIImpl::getIntrinsicInstrCost(Intrinsic::ID IID, Type *RetTy, { ISD::BITREVERSE, MVT::v16i32, 24 }, { ISD::CTLZ, MVT::v8i64, 29 }, { ISD::CTLZ, MVT::v16i32, 35 }, + { ISD::CTPOP, MVT::v8i64, 16 }, + { ISD::CTPOP, MVT::v16i32, 24 }, { ISD::CTTZ, MVT::v8i64, 20 }, { ISD::CTTZ, MVT::v16i32, 28 }, }; |

