LLVM 20.0.0git
|
#include "SystemZTargetTransformInfo.h"
#include "llvm/Analysis/TargetTransformInfo.h"
#include "llvm/CodeGen/BasicTTIImpl.h"
#include "llvm/CodeGen/CostTable.h"
#include "llvm/CodeGen/TargetLowering.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Intrinsics.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/MathExtras.h"
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "systemztti" |
Functions | |
static bool | isUsedAsMemCpySource (const Value *V, bool &OtherUse) |
static unsigned | getScalarSizeInBits (Type *Ty) |
static unsigned | getNumVectorRegs (Type *Ty) |
static unsigned | getElSizeLog2Diff (Type *Ty0, Type *Ty1) |
static Type * | getCmpOpsType (const Instruction *I, unsigned VF=1) |
static unsigned | getOperandsExtensionCost (const Instruction *I) |
static bool | isBswapIntrinsicCall (const Value *V) |
static int | getVectorIntrinsicInstrCost (Intrinsic::ID ID, Type *RetTy, const SmallVectorImpl< Type * > &ParamTys) |
#define DEBUG_TYPE "systemztti" |
Definition at line 29 of file SystemZTargetTransformInfo.cpp.
|
static |
Definition at line 725 of file SystemZTargetTransformInfo.cpp.
References assert(), llvm::FixedVectorType::get(), llvm::Type::getScalarType(), I, and llvm::Type::isVectorTy().
Referenced by llvm::SystemZTTIImpl::getBoolVecToIntConversionCost(), llvm::SystemZTTIImpl::getCastInstrCost(), and llvm::SystemZTTIImpl::getCmpSelInstrCost().
Definition at line 647 of file SystemZTargetTransformInfo.cpp.
References llvm::Type::getScalarSizeInBits(), and llvm::Log2_32().
Referenced by llvm::SystemZTTIImpl::getCastInstrCost(), llvm::SystemZTTIImpl::getVectorBitmaskConversionCost(), and llvm::SystemZTTIImpl::getVectorTruncCost().
Definition at line 418 of file SystemZTargetTransformInfo.cpp.
References assert(), and getScalarSizeInBits().
Referenced by llvm::SystemZTTIImpl::getArithmeticInstrCost(), llvm::SystemZTTIImpl::getBoolVecToIntConversionCost(), llvm::SystemZTTIImpl::getCastInstrCost(), llvm::SystemZTTIImpl::getCmpSelInstrCost(), llvm::SystemZTTIImpl::getInterleavedMemoryOpCost(), llvm::SystemZTTIImpl::getMemoryOpCost(), llvm::SystemZTTIImpl::getShuffleCost(), llvm::SystemZTTIImpl::getVectorBitmaskConversionCost(), getVectorIntrinsicInstrCost(), and llvm::SystemZTTIImpl::getVectorTruncCost().
|
static |
Definition at line 952 of file SystemZTargetTransformInfo.cpp.
References I.
Referenced by llvm::SystemZTTIImpl::getCmpSelInstrCost().
Definition at line 408 of file SystemZTargetTransformInfo.cpp.
References assert(), llvm::Type::getScalarSizeInBits(), llvm::Type::isPtrOrPtrVectorTy(), and Size.
Referenced by llvm::MachineIRBuilder::buildConstant(), llvm::MachineIRBuilder::buildVScale(), llvm::computeMinimumValueSizes(), llvm::SystemZTTIImpl::getInterleavedMemoryOpCost(), getNumVectorRegs(), llvm::SystemZTTIImpl::getVectorInstrCost(), llvm::SystemZTTIImpl::isFoldableLoad(), opMustUseVOP3Encoding(), llvm::InstCombinerImpl::visitLShr(), llvm::InstCombinerImpl::visitSwitchInst(), and llvm::InstCombinerImpl::visitZExt().
|
static |
Definition at line 1290 of file SystemZTargetTransformInfo.cpp.
References llvm::SmallVectorTemplateCommon< T, typename >::front(), getNumVectorRegs(), RetTy, and llvm::SystemZ::VectorBits.
Referenced by llvm::SystemZTTIImpl::getIntrinsicInstrCost().
Definition at line 1149 of file SystemZTargetTransformInfo.cpp.
Referenced by llvm::SystemZTTIImpl::getMemoryOpCost().
Definition at line 37 of file SystemZTargetTransformInfo.cpp.
References isUsedAsMemCpySource().
Referenced by llvm::SystemZTTIImpl::adjustInliningThreshold(), and isUsedAsMemCpySource().