Lines Matching defs:FromFunc
673 bool DataAggregator::doInterBranch(BinaryFunction *FromFunc,
681 if (FromFunc) {
682 SrcFunc = getLocationName(*FromFunc, BAT);
683 FromAggrData = getBranchData(*FromFunc);
685 FromAggrData = &NamesToBranches[FromFunc->getOneName()];
687 setBranchData(*FromFunc, FromAggrData);
690 recordExit(*FromFunc, From, Mispreds, Count);
769 auto [FromFunc, IsReturn] = handleAddress(From, /*IsFrom*/ true);
771 if (!FromFunc && !ToFunc)
775 if (IsPreagg && FromFunc != ToFunc && (IsReturn || IsCallCont)) {
785 if (FromFunc == ToFunc && To != 0) {
786 recordBranch(*FromFunc, From, To, Count, Mispreds);
787 return doIntraBranch(*FromFunc, From, To, Count, Mispreds);
790 return doInterBranch(FromFunc, ToFunc, From, To, Count, Mispreds);
795 BinaryFunction *FromFunc = getBinaryFunctionContainingAddress(First.To);
797 if (!FromFunc || !ToFunc) {
800 if (FromFunc)
801 dbgs() << formatv("{0} @ {1:x}", *FromFunc,
802 First.To - FromFunc->getAddress());
816 if (FromFunc != ToFunc) {
819 dbgs() << "Invalid trace starting in " << FromFunc->getPrintName()
820 << formatv(" @ {0:x}", First.To - FromFunc->getAddress())
827 // Set ParentFunc to BAT parent function or FromFunc itself.
828 BinaryFunction *ParentFunc = getBATParentFunction(*FromFunc);
830 ParentFunc = FromFunc;
834 BAT ? BAT->getFallthroughsInTrace(FromFunc->getAddress(), First.To,
836 : getFallthroughsInTrace(*FromFunc, First, Second, Count);
839 dbgs() << "Invalid trace starting in " << FromFunc->getPrintName()
840 << " @ " << Twine::utohexstr(First.To - FromFunc->getAddress())
849 << FromFunc->getPrintName() << ":"
854 From = BAT->translate(FromFunc->getAddress(), From, /*IsBranchSrc=*/true);
855 To = BAT->translate(FromFunc->getAddress(), To, /*IsBranchSrc=*/false);