LLVM 22.0.0git
RISCVMatInt.cpp File Reference

Go to the source code of this file.

Namespaces

namespace  llvm
 This is an optimization pass for GlobalISel generic memory operations.
namespace  llvm::RISCVMatInt

Functions

static int getInstSeqCost (RISCVMatInt::InstSeq &Res, bool HasRVC)
static void generateInstSeqImpl (int64_t Val, const MCSubtargetInfo &STI, RISCVMatInt::InstSeq &Res)
static unsigned extractRotateInfo (int64_t Val)
static void generateInstSeqLeadingZeros (int64_t Val, const MCSubtargetInfo &STI, RISCVMatInt::InstSeq &Res)
InstSeq llvm::RISCVMatInt::generateInstSeq (int64_t Val, const MCSubtargetInfo &STI)
void llvm::RISCVMatInt::generateMCInstSeq (int64_t Val, const MCSubtargetInfo &STI, MCRegister DestReg, SmallVectorImpl< MCInst > &Insts)
InstSeq llvm::RISCVMatInt::generateTwoRegInstSeq (int64_t Val, const MCSubtargetInfo &STI, unsigned &ShiftAmt, unsigned &AddOpc)
int llvm::RISCVMatInt::getIntMatCost (const APInt &Val, unsigned Size, const MCSubtargetInfo &STI, bool CompressionCost, bool FreeZeroes)

Function Documentation

◆ extractRotateInfo()

unsigned extractRotateInfo ( int64_t Val)
static

◆ generateInstSeqImpl()

◆ generateInstSeqLeadingZeros()

◆ getInstSeqCost()

int getInstSeqCost ( RISCVMatInt::InstSeq & Res,
bool HasRVC )
static