LLVM: lib/Transforms/Scalar/PartiallyInlineLibCalls.cpp File Reference (original) (raw)

Go to the source code of this file.

Namespaces
namespace llvm
This is an optimization pass for GlobalISel generic memory operations.
Macros
#define DEBUG_TYPE "partially-inline-libcalls"
Functions
DEBUG_COUNTER (PILCounter, "partially-inline-libcalls-transform", "Controls transformations in partially-inline-libcalls")
static bool optimizeSQRT (CallInst *Call, Function *CalledFunc, BasicBlock &CurrBB, Function::iterator &BB, const TargetTransformInfo *TTI, DomTreeUpdater *DTU, OptimizationRemarkEmitter *ORE)
static bool runPartiallyInlineLibCalls (Function &F, TargetLibraryInfo *TLI, const TargetTransformInfo *TTI, DominatorTree *DT, OptimizationRemarkEmitter *ORE)
INITIALIZE_PASS_BEGIN (PartiallyInlineLibCallsLegacyPass, "partially-inline-libcalls", "Partially inline calls to library functions", false, false) INITIALIZE_PASS_END(PartiallyInlineLibCallsLegacyPass

DEBUG_TYPE

#define DEBUG_TYPE "partially-inline-libcalls"

DEBUG_COUNTER()

DEBUG_COUNTER ( PILCounter ,
"partially-inline-libcalls-transform" ,
"Controls transformations in partially-inline-libcalls" )

INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( PartiallyInlineLibCallsLegacyPass ,
"partially-inline-libcalls" ,
"Partially inline calls to library functions" ,
false ,
false )

optimizeSQRT()

Definition at line 40 of file PartiallyInlineLibCalls.cpp.

References llvm::BasicBlock::begin(), Call, llvm::cast(), llvm::MDBuilder::createLikelyBranchWeights(), llvm::ilist_node_impl< OptionsT >::getIterator(), llvm::Value::getName(), llvm::ilist_detail::node_parent_access< NodeTy, ParentTy >::getParent(), llvm::Instruction::getSuccessor(), llvm::BasicBlock::getTerminator(), llvm::ProfcheckDisableMetadataFixes, llvm::Value::setName(), llvm::DebugCounter::shouldExecute(), and llvm::SplitBlockAndInsertIfThen().

Referenced by runPartiallyInlineLibCalls().

runPartiallyInlineLibCalls()

false

functions

libcalls