Lines Matching defs:Returns
489 /// Returns a musttail call instruction if one immediately precedes the given
517 /// block of the caller. This returns false if it is not possible to inline
595 SmallVector<ReturnInst*, 8> Returns;
634 /*ModuleLevelChanges=*/false, Returns, ".i",
765 for (ReturnInst *RI : Returns) {
789 for (ReturnInst *RI : Returns) {
812 // Handle the returns preceded by musttail calls separately.
814 for (ReturnInst *RI : Returns) {
835 // Leave behind the normal returns so we can merge control flow.
836 std::swap(Returns, NormalReturns);
842 if (Returns.size() == 1 && std::distance(FirstNewBlock, Caller->end()) == 1) {
853 NewBr->setDebugLoc(Returns[0]->getDebugLoc());
859 ReturnInst *R = Returns[0];
869 Returns[0]->eraseFromParent();
922 if (Returns.size() > 1) {
926 PHI = PHINode::Create(RTy, Returns.size(), TheCall->getName(),
936 for (unsigned i = 0, e = Returns.size(); i != e; ++i) {
937 ReturnInst *RI = Returns[i];
947 for (unsigned i = 0, e = Returns.size(); i != e; ++i) {
948 ReturnInst *RI = Returns[i];
960 } else if (!Returns.empty()) {
964 if (TheCall == Returns[0]->getReturnValue())
967 TheCall->replaceAllUsesWith(Returns[0]->getReturnValue());
971 BasicBlock *ReturnBB = Returns[0]->getParent();
980 CreatedBranchToNormalDest->setDebugLoc(Returns[0]->getDebugLoc());
983 Returns[0]->eraseFromParent();
986 // No returns, but something is using the return value of the call. Just