LLVM: lib/Target/BPF/BPFCheckAndAdjustIR.cpp File Reference (original) (raw)
Go to the source code of this file.
| Functions |
|
|
INITIALIZE_PASS (BPFCheckAndAdjustIR, DEBUG_TYPE, "BPF Check And Adjust IR", false, false) ModulePass *llvm |
| static bool |
sinkMinMaxInBB (BasicBlock &BB, const std::function< bool(Instruction *)> &Filter) |
| static void |
unrollGEPLoad (CallInst *Call) |
| static void |
unrollGEPStore (CallInst *Call) |
| static bool |
removeGEPBuiltinsInFunc (Function &F) |
| static Value * |
aspaceWrapValue (DenseMap< Value *, Value * > &Cache, Function *F, Value *ToWrap) |
| static void |
aspaceWrapOperand (DenseMap< Value *, Value * > &Cache, Instruction *I, unsigned OpNum) |
| static Value * |
wrapPtrIfASNotZero (DenseMap< Value *, Value * > &Cache, CallInst *CI, Value *P) |
| static Instruction * |
aspaceMemSet (Intrinsic::ID ID, DenseMap< Value *, Value * > &Cache, CallInst *CI) |
| static Instruction * |
aspaceMemCpy (Intrinsic::ID ID, DenseMap< Value *, Value * > &Cache, CallInst *CI) |
| static Instruction * |
aspaceMemMove (DenseMap< Value *, Value * > &Cache, CallInst *CI) |
◆ DEBUG_TYPE
#define DEBUG_TYPE "bpf-check-and-opt-ir"
◆ aspaceMemCpy()
◆ aspaceMemMove()
◆ aspaceMemSet()
◆ aspaceWrapOperand()
◆ aspaceWrapValue()
◆ INITIALIZE_PASS()
| INITIALIZE_PASS |
( |
BPFCheckAndAdjustIR |
, |
| DEBUG_TYPE |
, |
|
|
| "BPF Check And Adjust IR" |
, |
|
|
| false |
, |
|
|
| false |
) |
|
|
◆ removeGEPBuiltinsInFunc()
◆ sinkMinMaxInBB()
Definition at line 186 of file BPFCheckAndAdjustIR.cpp.
References A(), assert(), B(), Call, Changed, llvm::dyn_cast(), llvm::Filter, llvm::First, llvm::User::getOperand(), llvm::CmpInst::getPredicate(), llvm::CmpInst::getSwappedPredicate(), I, Info, llvm::ICmpInst::isGE(), llvm::ICmpInst::isGT(), llvm::ICmpInst::isLE(), llvm::ICmpInst::isLT(), llvm::ICmpInst::isRelational(), llvm::CmpInst::isSigned(), LHS, P, llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::Value::replaceAllUsesWith(), RHS, ToRemove, and X.
◆ unrollGEPLoad()
| void unrollGEPLoad ( CallInst * Call) |
static |
◆ unrollGEPStore()
| void unrollGEPStore ( CallInst * Call) |
static |
◆ wrapPtrIfASNotZero()