Lines Matching refs:Caller
104 /// Forward the 'resume' instruction to the caller's landing pad block.
163 /// Forward the 'resume' instruction to the caller's landing pad block.
245 Function *Caller = FirstNewBlock->getParent();
254 for (Function::iterator I = FirstNewBlock->getIterator(), E = Caller->end();
271 for (Function::iterator BB = FirstNewBlock->getIterator(), E = Caller->end();
301 Function *Caller = FirstNewBlock->getParent();
329 // This connects all the instructions which 'unwind to caller' to the invoke
331 for (Function::iterator BB = FirstNewBlock->getIterator(), E = Caller->end();
370 E = Caller->end();
388 /// aliasing scopes from a function inlined into a caller multiple times could
397 // caller. I'm omitting that check here because it might confuse
548 // property of the callee, but also all control dependencies in the caller.
732 // already in the caller. To do this, we might need a DT of the caller.
749 // caller, then don't bother inserting the assumption.
762 /// Once we have cloned code over from a callee into the caller,
771 const Function *Caller = CS.getInstruction()->getParent()->getParent();
774 CallGraphNode *CallerNode = CG[Caller];
776 // Since we inlined some uninlined call sites in the callee into the caller,
777 // add edges from the caller to all of the callees of the callee.
815 // destination. This can also happen if the call graph node of the caller
828 // Update the call graph by deleting the edge from Callee to Caller. We must
829 // do this after the loop above in case Caller and Callee are the same.
856 Function *Caller = TheCall->getParent()->getParent();
858 // If the called function is readonly, then it could not mutate the caller's
868 const DataLayout &DL = Caller->getParent()->getDataLayout();
873 &IFI.ACT->getAssumptionCache(*Caller)) >=
883 Caller->getParent()->getDataLayout().getPrefTypeAlignment(AggTy);
891 &*Caller->begin()->begin());
997 // ((__always_inline__, __nodebug__)) functions which must use caller
1014 /// caller. This returns false if it is not possible to inline this call.
1056 Function *Caller = OrigBB->getParent();
1059 // 1. If the caller has no GC, then the callee's GC must be propagated to the
1060 // caller.
1061 // 2. If the caller has a differing GC, it is invalid to inline.
1063 if (!Caller->hasGC())
1064 Caller->setGC(CalledFunc->getGC());
1065 else if (CalledFunc->getGC() != Caller->getGC())
1075 // Find the personality function used by the landing pads of the caller. If it
1079 Caller->hasPersonalityFn()
1080 ? Caller->getPersonalityFn()->stripPointerCasts()
1084 Caller->setPersonalityFn(CalledPersonality);
1132 Function::iterator LastBlock = --Caller->end();
1145 auto &DL = Caller->getParent()->getDataLayout();
1173 // instructions are actually cloned into the caller so that we can easily
1181 CloneAndPruneFunctionInto(Caller, CalledFunc, VMap,
1190 Caller->getParent(),
1252 fixupLineNumbers(Caller, FirstNewBlock, TheCall);
1263 IFI.ACT->getAssumptionCache(*Caller).clear();
1267 // block for the callee, move them to the entry block of the caller. First
1271 BasicBlock::iterator InsertPoint = Caller->begin()->begin();
1287 // Keep track of the static allocas that we inline into the caller.
1301 Caller->getEntryBlock().getInstList().splice(
1305 DIBuilder DIB(*Caller->getParent());
1316 for (Function::iterator BB = FirstNewBlock, E = Caller->end(); BB != E;
1365 auto &DL = Caller->getParent()->getDataLayout();
1398 Module *M = Caller->getParent();
1424 E = Caller->end();
1493 Type *NewRetTy = Caller->getReturnType();
1527 if (Returns.size() == 1 && std::distance(FirstNewBlock, Caller->end()) == 1) {
1533 Caller->getBasicBlockList().pop_back();
1600 Caller->getBasicBlockList().splice(AfterCallBB->getIterator(),
1601 Caller->getBasicBlockList(), FirstNewBlock,
1602 Caller->end());
1699 Caller->getBasicBlockList().erase(CalleeEntry);
1705 auto &DL = Caller->getParent()->getDataLayout();
1707 &IFI.ACT->getAssumptionCache(*Caller))) {