Lines Matching refs:CallInst
79 bool replaceWithNative(CallInst *CI, const FuncInfo &FInfo);
84 bool TDOFold(CallInst *CI, const FuncInfo &FInfo);
89 bool fold_recip(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
92 bool fold_divide(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
95 bool fold_pow(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
98 bool fold_rootn(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
101 bool fold_fma_mad(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
104 bool sincosUseNative(CallInst *aCI, const FuncInfo &FInfo);
109 bool evaluateCall(CallInst *aCI, FuncInfo &FInfo);
112 bool fold_exp(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
115 bool fold_exp2(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
118 bool fold_exp10(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
121 bool fold_log(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
124 bool fold_log2(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
127 bool fold_log10(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
130 bool fold_sqrt(CallInst *CI, IRBuilder<> &B, const FuncInfo &FInfo);
133 bool fold_sincos(CallInst * CI, IRBuilder<> &B, AliasAnalysis * AA);
136 bool fold_read_write_pipe(CallInst *CI, IRBuilder<> &B, FuncInfo &FInfo);
139 BasicBlock::iterator getEntryIns(CallInst * UI);
141 AllocaInst* insertAlloca(CallInst * UI, IRBuilder<> &B, const char *prefix);
146 CallInst *CI;
148 bool isUnsafeMath(const CallInst *CI) const;
156 bool fold(CallInst *CI, AliasAnalysis *AA = nullptr);
161 bool useNative(CallInst *CI);
220 static CallInst *CreateCallEx(IRB &B, Value *Callee, Value *Arg, in INITIALIZE_PASS_DEPENDENCY()
222 CallInst *R = B.CreateCall(Callee, Arg, Name); in INITIALIZE_PASS_DEPENDENCY()
229 static CallInst *CreateCallEx2(IRB &B, Value *Callee, Value *Arg1, Value *Arg2, in CreateCallEx2()
231 CallInst *R = B.CreateCall(Callee, {Arg1, Arg2}, Name); in CreateCallEx2()
488 bool AMDGPULibCalls::isUnsafeMath(const CallInst *CI) const { in isUnsafeMath()
508 bool AMDGPULibCalls::sincosUseNative(CallInst *aCI, const FuncInfo &FInfo) { in sincosUseNative()
528 Value *sinval = CallInst::Create(sinExpr, opr0, "splitsin", aCI); in sincosUseNative()
529 Value *cosval = CallInst::Create(cosExpr, opr0, "splitcos", aCI); in sincosUseNative()
542 bool AMDGPULibCalls::useNative(CallInst *aCI) { in useNative()
575 bool AMDGPULibCalls::fold_read_write_pipe(CallInst *CI, IRBuilder<> &B, in fold_read_write_pipe()
636 bool AMDGPULibCalls::fold(CallInst *CI, AliasAnalysis *AA) { in fold()
725 bool AMDGPULibCalls::TDOFold(CallInst *CI, const FuncInfo &FInfo) { in TDOFold()
789 bool AMDGPULibCalls::replaceWithNative(CallInst *CI, const FuncInfo &FInfo) { in replaceWithNative()
811 bool AMDGPULibCalls::fold_recip(CallInst *CI, IRBuilder<> &B, in fold_recip()
829 bool AMDGPULibCalls::fold_divide(CallInst *CI, IRBuilder<> &B, in fold_divide()
859 bool AMDGPULibCalls::fold_pow(CallInst *CI, IRBuilder<> &B, in fold_pow()
1143 bool AMDGPULibCalls::fold_rootn(CallInst *CI, IRBuilder<> &B, in fold_rootn()
1201 bool AMDGPULibCalls::fold_fma_mad(CallInst *CI, IRBuilder<> &B, in fold_fma_mad()
1255 bool AMDGPULibCalls::fold_sqrt(CallInst *CI, IRBuilder<> &B, in fold_sqrt()
1273 bool AMDGPULibCalls::fold_sincos(CallInst *CI, IRBuilder<> &B, in fold_sincos()
1306 CallInst *UI = nullptr; in fold_sincos()
1308 CallInst *XI = dyn_cast_or_null<CallInst>(U); in fold_sincos()
1351 CallInst *Call = CreateCallEx2(B, Fsincos, UI->getArgOperand(0), P); in fold_sincos()
1374 BasicBlock::iterator AMDGPULibCalls::getEntryIns(CallInst * UI) { in getEntryIns()
1383 AllocaInst* AMDGPULibCalls::insertAlloca(CallInst *UI, IRBuilder<> &B, in insertAlloca()
1591 bool AMDGPULibCalls::evaluateCall(CallInst *aCI, FuncInfo &FInfo) { in evaluateCall()
1726 CallInst *CI = dyn_cast<CallInst>(I); in runOnFunction()
1751 CallInst *CI = dyn_cast<CallInst>(I); in runOnFunction()