use simpler methods.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@20706 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Analysis/DataStructure/CompleteBottomUp.cpp b/lib/Analysis/DataStructure/CompleteBottomUp.cpp
index 16ea438..0b97995 100644
--- a/lib/Analysis/DataStructure/CompleteBottomUp.cpp
+++ b/lib/Analysis/DataStructure/CompleteBottomUp.cpp
@@ -56,11 +56,10 @@
       Instruction *TheCall = CSI->getCallSite().getInstruction();
 
       if (CSI->isIndirectCall()) { // indirect call: insert all callees
-        const std::vector<GlobalValue*> &Callees =
-          CSI->getCalleeNode()->getGlobals();
+        std::vector<Function*> Callees;
+        CSI->getCalleeNode()->addFullFunctionList(Callees);
         for (unsigned i = 0, e = Callees.size(); i != e; ++i)
-          if (Function *F = dyn_cast<Function>(Callees[i]))
-            ActualCallees.insert(std::make_pair(TheCall, F));
+          ActualCallees.insert(std::make_pair(TheCall, Callees[i]));
       } else {        // direct call: insert the single callee directly
         ActualCallees.insert(std::make_pair(TheCall,
                                             CSI->getCalleeFunc()));