[llvm-commits] CVS: llvm/lib/Analysis/IPA/Andersens.cpp

Chris Lattner lattner at cs.uiuc.edu
Mon Mar 28 22:52:41 PST 2005



Changes in directory llvm/lib/Analysis/IPA:

Andersens.cpp updated: 1.17 -> 1.18
---
Log message:

add some more functions, ignore setcc for constraints!


---
Diffs of the changes:  (+9 -4)

 Andersens.cpp |   13 +++++++++----
 1 files changed, 9 insertions(+), 4 deletions(-)


Index: llvm/lib/Analysis/IPA/Andersens.cpp
diff -u llvm/lib/Analysis/IPA/Andersens.cpp:1.17 llvm/lib/Analysis/IPA/Andersens.cpp:1.18
--- llvm/lib/Analysis/IPA/Andersens.cpp:1.17	Tue Mar 29 00:09:07 2005
+++ llvm/lib/Analysis/IPA/Andersens.cpp	Tue Mar 29 00:52:20 2005
@@ -328,6 +328,7 @@
     void visitGetElementPtrInst(GetElementPtrInst &GEP);
     void visitPHINode(PHINode &PN);
     void visitCastInst(CastInst &CI);
+    void visitSetCondInst(SetCondInst &SCI) {} // NOOP!
     void visitSelectInst(SelectInst &SI);
     void visitVANext(VANextInst &I);
     void visitVAArg(VAArgInst &I);
@@ -609,16 +610,20 @@
 
   // These functions don't induce any points-to constraints.
   if (F->getName() == "printf" || F->getName() == "fprintf" ||
+      F->getName() == "sprintf" ||
       F->getName() == "fgets" ||
       F->getName() == "open" || F->getName() == "fopen" ||
       F->getName() == "fclose" || F->getName() == "fflush" ||
-      F->getName() == "atoi" || F->getName() == "sscanf" ||
+      F->getName() == "rewind" ||
+      F->getName() == "atoi" || F->getName() == "unlink" ||
+      F->getName() == "sscanf" || F->getName() == "fscanf" ||
       F->getName() == "llvm.memset" || F->getName() == "memcmp" ||
       F->getName() == "read" || F->getName() == "write")
     return true;
 
   // These functions do induce points-to edges.
-  if (F->getName() == "llvm.memcpy" || F->getName() == "llvm.memmove") {
+  if (F->getName() == "llvm.memcpy" || F->getName() == "llvm.memmove" ||
+      F->getName() == "memmove") {
     // Note: this is a poor approximation, this says Dest = Src, instead of
     // *Dest = *Src.
     Constraints.push_back(Constraint(Constraint::Copy,
@@ -647,8 +652,8 @@
 void Andersens::CollectConstraints(Module &M) {
   // First, the universal set points to itself.
   GraphNodes[UniversalSet].addPointerTo(&GraphNodes[UniversalSet]);
-  Constraints.push_back(Constraint(Constraint::Load, &GraphNodes[UniversalSet],
-                                   &GraphNodes[UniversalSet]));
+  //Constraints.push_back(Constraint(Constraint::Load, &GraphNodes[UniversalSet],
+  //                                 &GraphNodes[UniversalSet]));
   Constraints.push_back(Constraint(Constraint::Store, &GraphNodes[UniversalSet],
                                    &GraphNodes[UniversalSet]));
 






More information about the llvm-commits mailing list