mirror of
https://github.com/RPCS3/llvm-mirror.git
synced 2024-11-26 21:00:29 +00:00
Prune trailing whitespaces and CRs.
llvm-svn: 242117
This commit is contained in:
parent
aa66e39b4d
commit
6033cde4ab
@ -261,18 +261,18 @@ unsigned X86TTIImpl::getArithmeticInstrCost(
|
||||
{ ISD::SHL, MVT::v4i32, 2*5 }, // We optimized this using mul.
|
||||
{ ISD::SHL, MVT::v2i64, 2*10 }, // Scalarized.
|
||||
{ ISD::SHL, MVT::v4i64, 4*10 }, // Scalarized.
|
||||
|
||||
{ ISD::SRL, MVT::v16i8, 26 }, // cmpgtb sequence.
|
||||
{ ISD::SRL, MVT::v8i16, 32 }, // cmpgtb sequence.
|
||||
{ ISD::SRL, MVT::v4i32, 16 }, // Shift each lane + blend.
|
||||
{ ISD::SRL, MVT::v2i64, 2*10 }, // Scalarized.
|
||||
|
||||
{ ISD::SRA, MVT::v16i8, 54 }, // unpacked cmpgtb sequence.
|
||||
{ ISD::SRA, MVT::v8i16, 32 }, // cmpgtb sequence.
|
||||
{ ISD::SRA, MVT::v4i32, 16 }, // Shift each lane + blend.
|
||||
{ ISD::SRA, MVT::v2i64, 2*10 }, // Scalarized.
|
||||
|
||||
// It is not a good idea to vectorize division. We have to scalarize it and
|
||||
|
||||
{ ISD::SRL, MVT::v16i8, 26 }, // cmpgtb sequence.
|
||||
{ ISD::SRL, MVT::v8i16, 32 }, // cmpgtb sequence.
|
||||
{ ISD::SRL, MVT::v4i32, 16 }, // Shift each lane + blend.
|
||||
{ ISD::SRL, MVT::v2i64, 2*10 }, // Scalarized.
|
||||
|
||||
{ ISD::SRA, MVT::v16i8, 54 }, // unpacked cmpgtb sequence.
|
||||
{ ISD::SRA, MVT::v8i16, 32 }, // cmpgtb sequence.
|
||||
{ ISD::SRA, MVT::v4i32, 16 }, // Shift each lane + blend.
|
||||
{ ISD::SRA, MVT::v2i64, 2*10 }, // Scalarized.
|
||||
|
||||
// It is not a good idea to vectorize division. We have to scalarize it and
|
||||
// in the process we will often end up having to spilling regular
|
||||
// registers. The overhead of division is going to dominate most kernels
|
||||
// anyways so try hard to prevent vectorization of division - it is
|
||||
@ -1117,17 +1117,17 @@ unsigned X86TTIImpl::getIntImmCost(Intrinsic::ID IID, unsigned Idx,
|
||||
}
|
||||
return X86TTIImpl::getIntImmCost(Imm, Ty);
|
||||
}
|
||||
|
||||
bool X86TTIImpl::isLegalMaskedLoad(Type *DataTy, int Consecutive) {
|
||||
int DataWidth = DataTy->getPrimitiveSizeInBits();
|
||||
|
||||
// Todo: AVX512 allows gather/scatter, works with strided and random as well
|
||||
if ((DataWidth < 32) || (Consecutive == 0))
|
||||
return false;
|
||||
if (ST->hasAVX512() || ST->hasAVX2())
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
bool X86TTIImpl::isLegalMaskedLoad(Type *DataTy, int Consecutive) {
|
||||
int DataWidth = DataTy->getPrimitiveSizeInBits();
|
||||
|
||||
// Todo: AVX512 allows gather/scatter, works with strided and random as well
|
||||
if ((DataWidth < 32) || (Consecutive == 0))
|
||||
return false;
|
||||
if (ST->hasAVX512() || ST->hasAVX2())
|
||||
return true;
|
||||
return false;
|
||||
}
|
||||
|
||||
bool X86TTIImpl::isLegalMaskedStore(Type *DataType, int Consecutive) {
|
||||
return isLegalMaskedLoad(DataType, Consecutive);
|
||||
|
Loading…
Reference in New Issue
Block a user