LLVM 22.0.0git
ExpandLargeDivRem.cpp File Reference

Go to the source code of this file.

Functions

static bool isConstantPowerOfTwo (llvm::Value *V, bool SignedOp)
static bool isSigned (unsigned int Opcode)
static void scalarize (BinaryOperator *BO, SmallVectorImpl< BinaryOperator * > &Replace)
static bool runImpl (Function &F, const TargetLowering &TLI)
 INITIALIZE_PASS_BEGIN (ExpandLargeDivRemLegacyPass, "expand-large-div-rem", "Expand large div/rem", false, false) INITIALIZE_PASS_END(ExpandLargeDivRemLegacyPass

Variables

static cl::opt< unsignedExpandDivRemBits ("expand-div-rem-bits", cl::Hidden, cl::init(llvm::IntegerType::MAX_INT_BITS), cl::desc("div and rem instructions on integers with " "more than <N> bits are expanded."))
expand large div rem
expand large div Expand large div false

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( ExpandLargeDivRemLegacyPass ,
"expand-large-div-rem" ,
"Expand large div/rem" ,
false ,
false  )

◆ isConstantPowerOfTwo()

bool isConstantPowerOfTwo ( llvm::Value * V,
bool SignedOp )
static

◆ isSigned()

◆ runImpl()

◆ scalarize()

Variable Documentation

◆ ExpandDivRemBits

cl::opt< unsigned > ExpandDivRemBits("expand-div-rem-bits", cl::Hidden, cl::init(llvm::IntegerType::MAX_INT_BITS), cl::desc("div and rem instructions on integers with " "more than <N> bits are expanded.")) ( "expand-div-rem-bits" ,
cl::Hidden ,
cl::init(llvm::IntegerType::MAX_INT_BITS) ,
cl::desc("div and rem instructions on integers with " "more than <N> bits are expanded.")  )
static

Referenced by runImpl().

◆ false

expand large div Expand large div false

Definition at line 178 of file ExpandLargeDivRem.cpp.

◆ rem

expand large div Expand large div rem