|
LLVM
4.0.0
|
#include <PPCTargetTransformInfo.h>
Additional Inherited Members | |
Protected Types inherited from llvm::TargetTransformInfoImplBase | |
| typedef TargetTransformInfo | TTI |
Protected Member Functions inherited from llvm::BasicTTIImplBase< PPCTTIImpl > | |
| BasicTTIImplBase (const TargetMachine *TM, const DataLayout &DL) | |
Protected Member Functions inherited from llvm::TargetTransformInfoImplCRTPBase< PPCTTIImpl > | |
| TargetTransformInfoImplCRTPBase (const DataLayout &DL) | |
Protected Member Functions inherited from llvm::TargetTransformInfoImplBase | |
| TargetTransformInfoImplBase (const DataLayout &DL) | |
| unsigned | minRequiredElementSize (const Value *Val, bool &isSigned) |
| bool | isStridedAccess (const SCEV *Ptr) |
| const SCEVConstant * | getConstantStrideStep (ScalarEvolution *SE, const SCEV *Ptr) |
| bool | isConstantStridedAccessLessThan (ScalarEvolution *SE, const SCEV *Ptr, int64_t MergeDistance) |
Protected Attributes inherited from llvm::TargetTransformInfoImplBase | |
| const DataLayout & | DL |
Definition at line 28 of file PPCTargetTransformInfo.h.
|
inlineexplicit |
Definition at line 40 of file PPCTargetTransformInfo.h.
Definition at line 207 of file PPCTargetTransformInfo.cpp.
References llvm::PPC::DIR_A2, and llvm::PPCSubtarget::getDarwinDirective().
| bool PPCTTIImpl::enableInterleavedAccessVectorization | ( | ) |
Definition at line 218 of file PPCTargetTransformInfo.cpp.
| int PPCTTIImpl::getArithmeticInstrCost | ( | unsigned | Opcode, |
| Type * | Ty, | ||
| TTI::OperandValueKind | Opd1Info = TTI::OK_AnyValue, |
||
| TTI::OperandValueKind | Opd2Info = TTI::OK_AnyValue, |
||
| TTI::OperandValueProperties | Opd1PropInfo = TTI::OP_None, |
||
| TTI::OperandValueProperties | Opd2PropInfo = TTI::OP_None, |
||
| ArrayRef< const Value * > | Args = ArrayRef<const Value *>() |
||
| ) |
Definition at line 281 of file PPCTargetTransformInfo.cpp.
References assert(), llvm::BasicTTIImplBase< PPCTTIImpl >::getArithmeticInstrCost(), and llvm::TargetLoweringBase::InstructionOpcodeToISD().
| unsigned PPCTTIImpl::getCacheLineSize | ( | ) |
Definition at line 241 of file PPCTargetTransformInfo.cpp.
References CacheLineSize.
Definition at line 305 of file PPCTargetTransformInfo.cpp.
References assert(), llvm::BasicTTIImplBase< PPCTTIImpl >::getCastInstrCost(), and llvm::TargetLoweringBase::InstructionOpcodeToISD().
Definition at line 311 of file PPCTargetTransformInfo.cpp.
References llvm::BasicTTIImplBase< PPCTTIImpl >::getCmpSelInstrCost().
| int PPCTTIImpl::getInterleavedMemoryOpCost | ( | unsigned | Opcode, |
| Type * | VecTy, | ||
| unsigned | Factor, | ||
| ArrayRef< unsigned > | Indices, | ||
| unsigned | Alignment, | ||
| unsigned | AddressSpace | ||
| ) |
Definition at line 420 of file PPCTargetTransformInfo.cpp.
References assert(), llvm::TargetTransformInfoImplBase::DL, getMemoryOpCost(), llvm::TargetLoweringBase::getTypeLegalizationCost(), and llvm::AArch64CC::LT.
Definition at line 45 of file PPCTargetTransformInfo.cpp.
References assert(), DisablePPCConstHoist, llvm::APInt::getBitWidth(), llvm::TargetTransformInfoImplBase::getIntImmCost(), llvm::Type::getPrimitiveSizeInBits(), llvm::APInt::getSExtValue(), llvm::APInt::getZExtValue(), llvm::isInt< 16 >(), llvm::isInt< 32 >(), llvm::Type::isIntegerTy(), llvm::TargetTransformInfo::TCC_Basic, and llvm::TargetTransformInfo::TCC_Free.
Referenced by getIntImmCost().
Definition at line 108 of file PPCTargetTransformInfo.cpp.
References llvm::MCID::Add, llvm::APIntOps::And(), assert(), llvm::Call, DisablePPCConstHoist, llvm::APInt::getBitWidth(), getIntImmCost(), llvm::TargetTransformInfoImplBase::getIntImmCost(), llvm::Type::getPrimitiveSizeInBits(), llvm::APInt::getSExtValue(), llvm::APInt::getZExtValue(), llvm::isInt< 16 >(), llvm::Type::isIntegerTy(), llvm::PPCSubtarget::isPPC64(), llvm::isShiftedMask_32(), llvm::isShiftedMask_64(), llvm::isUInt< 16 >(), LLVM_FALLTHROUGH, llvm::SPII::Load, llvm::APIntOps::Or(), llvm::MipsISD::Ret, llvm::MCID::Select, llvm::SPII::Store, llvm::TargetTransformInfo::TCC_Basic, llvm::TargetTransformInfo::TCC_Free, and llvm::APIntOps::Xor().
| int PPCTTIImpl::getIntImmCost | ( | Intrinsic::ID | IID, |
| unsigned | Idx, | ||
| const APInt & | Imm, | ||
| Type * | Ty | ||
| ) |
Definition at line 74 of file PPCTargetTransformInfo.cpp.
References assert(), DisablePPCConstHoist, llvm::APInt::getBitWidth(), getIntImmCost(), llvm::TargetTransformInfoImplBase::getIntImmCost(), llvm::Type::getPrimitiveSizeInBits(), llvm::APInt::getSExtValue(), llvm::isInt< 16 >(), llvm::Type::isIntegerTy(), and llvm::TargetTransformInfo::TCC_Free.
Definition at line 253 of file PPCTargetTransformInfo.cpp.
References llvm::PPC::DIR_440, llvm::PPC::DIR_A2, llvm::PPC::DIR_E500mc, llvm::PPC::DIR_E5500, llvm::PPC::DIR_PWR7, llvm::PPC::DIR_PWR8, llvm::PPC::DIR_PWR9, and llvm::PPCSubtarget::getDarwinDirective().
| int PPCTTIImpl::getMemoryOpCost | ( | unsigned | Opcode, |
| Type * | Src, | ||
| unsigned | Alignment, | ||
| unsigned | AddressSpace | ||
| ) |
Definition at line 354 of file PPCTargetTransformInfo.cpp.
References assert(), llvm::TargetTransformInfoImplBase::DL, llvm::BasicTTIImplBase< PPCTTIImpl >::getMemoryOpCost(), llvm::Type::getPrimitiveSizeInBits(), llvm::TargetLoweringBase::getTypeLegalizationCost(), getVectorInstrCost(), llvm::Type::getVectorNumElements(), llvm::PPCSubtarget::hasAltivec(), llvm::PPCSubtarget::hasP8Vector(), llvm::PPCSubtarget::hasQPX(), llvm::PPCSubtarget::hasVSX(), i, if(), llvm::Type::isVectorTy(), llvm::SPII::Load, llvm::AArch64CC::LT, llvm::SPII::Store, llvm::MVT::v16i8, llvm::MVT::v2f64, llvm::MVT::v2i64, llvm::MVT::v4f32, llvm::MVT::v4f64, llvm::MVT::v4i32, and llvm::MVT::v8i16.
Referenced by getInterleavedMemoryOpCost().
Definition at line 222 of file PPCTargetTransformInfo.cpp.
References llvm::PPCSubtarget::hasAltivec(), llvm::PPCSubtarget::hasQPX(), and llvm::PPCSubtarget::hasVSX().
| TargetTransformInfo::PopcntSupportKind PPCTTIImpl::getPopcntSupport | ( | unsigned | TyWidth | ) |
Definition at line 37 of file PPCTargetTransformInfo.cpp.
References assert(), llvm::PPCSubtarget::hasPOPCNTD(), llvm::isPowerOf2_32(), llvm::PPCSubtarget::POPCNTD_Slow, llvm::PPCSubtarget::POPCNTD_Unavailable, llvm::TargetTransformInfo::PSK_FastHardware, llvm::TargetTransformInfo::PSK_SlowHardware, and llvm::TargetTransformInfo::PSK_Software.
| unsigned PPCTTIImpl::getPrefetchDistance | ( | ) |
Definition at line 247 of file PPCTargetTransformInfo.cpp.
Definition at line 228 of file PPCTargetTransformInfo.cpp.
References llvm::PPCSubtarget::hasAltivec(), llvm::PPCSubtarget::hasQPX(), and llvm::PPCSubtarget::isPPC64().
| int PPCTTIImpl::getShuffleCost | ( | TTI::ShuffleKind | Kind, |
| Type * | Tp, | ||
| int | Index, | ||
| Type * | SubTp | ||
| ) |
Definition at line 292 of file PPCTargetTransformInfo.cpp.
References llvm::TargetTransformInfoImplBase::DL, llvm::TargetLoweringBase::getTypeLegalizationCost(), and llvm::AArch64CC::LT.
| void PPCTTIImpl::getUnrollingPreferences | ( | Loop * | L, |
| TTI::UnrollingPreferences & | UP | ||
| ) |
Definition at line 192 of file PPCTargetTransformInfo.cpp.
References llvm::TargetTransformInfo::UnrollingPreferences::AllowExpensiveTripCount, llvm::PPC::DIR_A2, llvm::PPCSubtarget::getDarwinDirective(), llvm::BasicTTIImplBase< PPCTTIImpl >::getUnrollingPreferences(), llvm::TargetTransformInfo::UnrollingPreferences::Partial, and llvm::TargetTransformInfo::UnrollingPreferences::Runtime.
Definition at line 315 of file PPCTargetTransformInfo.cpp.
References assert(), llvm::ISD::EXTRACT_VECTOR_ELT, llvm::Type::getScalarType(), llvm::BasicTTIImplBase< PPCTTIImpl >::getVectorInstrCost(), llvm::PPCSubtarget::hasQPX(), llvm::PPCSubtarget::hasVSX(), llvm::ISD::INSERT_VECTOR_ELT, llvm::TargetLoweringBase::InstructionOpcodeToISD(), llvm::Type::isDoubleTy(), llvm::Type::isFloatingPointTy(), and llvm::Type::isVectorTy().
Referenced by getMemoryOpCost().
1.8.6