Lines Matching refs:CallInst
65 bool TDOFold(CallInst *CI, const FuncInfo &FInfo);
70 bool fold_recip(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
73 bool fold_divide(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
76 bool fold_pow(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
79 bool fold_rootn(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
82 bool fold_fma_mad(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
85 bool sincosUseNative(CallInst *aCI, const FuncInfo &FInfo);
90 bool evaluateCall(CallInst *aCI, const FuncInfo &FInfo);
93 bool fold_sqrt(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
96 bool fold_sincos(CallInst * CI, IRBuilder<> &B, AliasAnalysis * AA);
99 bool fold_read_write_pipe(CallInst *CI, IRBuilder<> &B,
103 bool fold_wavefrontsize(CallInst *CI, IRBuilder<> &B);
106 BasicBlock::iterator getEntryIns(CallInst * UI);
108 AllocaInst* insertAlloca(CallInst * UI, IRBuilder<> &B, const char *prefix);
113 CallInst *CI;
115 bool isUnsafeMath(const CallInst *CI) const;
125 bool fold(CallInst *CI, AliasAnalysis *AA = nullptr);
130 bool useNative(CallInst *CI);
187 static CallInst *CreateCallEx(IRB &B, FunctionCallee Callee, Value *Arg, in INITIALIZE_PASS_DEPENDENCY()
189 CallInst *R = B.CreateCall(Callee, Arg, Name); in INITIALIZE_PASS_DEPENDENCY()
196 static CallInst *CreateCallEx2(IRB &B, FunctionCallee Callee, Value *Arg1, in CreateCallEx2()
198 CallInst *R = B.CreateCall(Callee, {Arg1, Arg2}, Name); in CreateCallEx2()
447 bool AMDGPULibCalls::isUnsafeMath(const CallInst *CI) const { in isUnsafeMath()
466 bool AMDGPULibCalls::sincosUseNative(CallInst *aCI, const FuncInfo &FInfo) { in sincosUseNative()
486 Value *sinval = CallInst::Create(sinExpr, opr0, "splitsin", aCI); in sincosUseNative()
487 Value *cosval = CallInst::Create(cosExpr, opr0, "splitcos", aCI); in sincosUseNative()
500 bool AMDGPULibCalls::useNative(CallInst *aCI) { in useNative()
533 bool AMDGPULibCalls::fold_read_write_pipe(CallInst *CI, IRBuilder<> &B, in fold_read_write_pipe()
594 bool AMDGPULibCalls::fold(CallInst *CI, AliasAnalysis *AA) { in fold()
691 bool AMDGPULibCalls::TDOFold(CallInst *CI, const FuncInfo &FInfo) { in TDOFold()
755 bool AMDGPULibCalls::fold_recip(CallInst *CI, IRBuilder<> &B, in fold_recip()
773 bool AMDGPULibCalls::fold_divide(CallInst *CI, IRBuilder<> &B, in fold_divide()
803 bool AMDGPULibCalls::fold_pow(CallInst *CI, IRBuilder<> &B, in fold_pow()
1088 bool AMDGPULibCalls::fold_rootn(CallInst *CI, IRBuilder<> &B, in fold_rootn()
1142 bool AMDGPULibCalls::fold_fma_mad(CallInst *CI, IRBuilder<> &B, in fold_fma_mad()
1197 bool AMDGPULibCalls::fold_sqrt(CallInst *CI, IRBuilder<> &B, in fold_sqrt()
1215 bool AMDGPULibCalls::fold_sincos(CallInst *CI, IRBuilder<> &B, in fold_sincos()
1250 CallInst *UI = nullptr; in fold_sincos()
1252 CallInst *XI = dyn_cast_or_null<CallInst>(U); in fold_sincos()
1297 CallInst *Call = CreateCallEx2(B, Fsincos, UI->getArgOperand(0), P); in fold_sincos()
1319 bool AMDGPULibCalls::fold_wavefrontsize(CallInst *CI, IRBuilder<> &B) { in fold_wavefrontsize()
1342 BasicBlock::iterator AMDGPULibCalls::getEntryIns(CallInst * UI) { in getEntryIns()
1351 AllocaInst* AMDGPULibCalls::insertAlloca(CallInst *UI, IRBuilder<> &B, in insertAlloca()
1559 bool AMDGPULibCalls::evaluateCall(CallInst *aCI, const FuncInfo &FInfo) { in evaluateCall()
1672 CallInst *CI = dyn_cast<CallInst>(I); in runOnFunction()
1706 CallInst *CI = dyn_cast<CallInst>(I); in run()
1734 CallInst *CI = dyn_cast<CallInst>(I); in runOnFunction()
1762 CallInst *CI = dyn_cast<CallInst>(I); in run()