diff options
author | Simon Pilgrim <llvm-dev@redking.me.uk> | 2017-01-07 17:54:10 +0000 |
---|---|---|
committer | Simon Pilgrim <llvm-dev@redking.me.uk> | 2017-01-07 17:54:10 +0000 |
commit | a4109d643388b0cd5350a717f4fe35d0ed157ad5 (patch) | |
tree | 74a73899b7651a43fe6dd19bfe2277f55395f884 /llvm/lib | |
parent | df7de7a87e9e33d561f1b6fadf029ab7e7cacf20 (diff) | |
download | bcm5719-llvm-a4109d643388b0cd5350a717f4fe35d0ed157ad5.tar.gz bcm5719-llvm-a4109d643388b0cd5350a717f4fe35d0ed157ad5.zip |
[CostModel][AVX512BW] Add v32i16 vector shift costs for avx512bw targets.
llvm-svn: 291354
Diffstat (limited to 'llvm/lib')
-rw-r--r-- | llvm/lib/Target/X86/X86TargetTransformInfo.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/llvm/lib/Target/X86/X86TargetTransformInfo.cpp b/llvm/lib/Target/X86/X86TargetTransformInfo.cpp index a22677174b7..d8813554705 100644 --- a/llvm/lib/Target/X86/X86TargetTransformInfo.cpp +++ b/llvm/lib/Target/X86/X86TargetTransformInfo.cpp @@ -219,6 +219,10 @@ int X86TTIImpl::getArithmeticInstrCost( return LT.first * Entry->Cost; static const CostTblEntry AVX512BWCostTable[] = { + { ISD::SHL, MVT::v32i16, 1 }, // vpsllvw + { ISD::SRL, MVT::v32i16, 1 }, // vpsrlvw + { ISD::SRA, MVT::v32i16, 1 }, // vpsravw + { ISD::MUL, MVT::v64i8, 11 }, // extend/pmullw/trunc sequence. { ISD::MUL, MVT::v32i8, 4 }, // extend/pmullw/trunc sequence. { ISD::MUL, MVT::v16i8, 4 }, // extend/pmullw/trunc sequence. |