LLVM
15.0.0git
|
Classes | |
struct | Inst |
Typedefs | |
using | InstSeq = SmallVector< Inst, 8 > |
Functions | |
InstSeq | generateInstSeq (int64_t Val, const FeatureBitset &ActiveFeatures) |
int | getIntMatCost (const APInt &Val, unsigned Size, const FeatureBitset &ActiveFeatures, bool CompressionCost) |
using llvm::RISCVMatInt::InstSeq = typedef SmallVector<Inst, 8> |
Definition at line 26 of file RISCVMatInt.h.
InstSeq llvm::RISCVMatInt::generateInstSeq | ( | int64_t | Val, |
const FeatureBitset & | ActiveFeatures | ||
) |
Definition at line 177 of file RISCVMatInt.cpp.
References assert(), llvm::tgtok::Bit, llvm::SmallVectorImpl< T >::clear(), llvm::countLeadingZeros(), llvm::countPopulation(), llvm::countTrailingZeros(), extractRotateInfo(), generateInstSeqImpl(), llvm::isInt< 32 >(), and ll.
Referenced by getIntMatCost(), llvm::RISCVInstrInfo::movImm(), and selectImm().
int llvm::RISCVMatInt::getIntMatCost | ( | const APInt & | Val, |
unsigned | Size, | ||
const FeatureBitset & | ActiveFeatures, | ||
bool | CompressionCost | ||
) |
Definition at line 381 of file RISCVMatInt.cpp.
References llvm::APInt::ashr(), generateInstSeq(), getInstSeqCost(), llvm::APInt::getSExtValue(), llvm::max(), and llvm::APInt::sextOrTrunc().
Referenced by llvm::RISCVTTIImpl::getIntImmCost(), and llvm::RISCVTargetLowering::isDesirableToCommuteWithShift().