[llvm-commits] [poolalloc] r52018 - /poolalloc/trunk/lib/DSA/StdLibPass.cpp
John Criswell
criswell at uiuc.edu
Thu Jun 5 13:14:48 PDT 2008
Author: criswell
Date: Thu Jun 5 15:14:48 2008
New Revision: 52018
URL: http://llvm.org/viewvc/llvm-project?rev=52018&view=rev
Log:
Do not create a DSGraph for realloc() if it does not return a pointer.
Modified:
poolalloc/trunk/lib/DSA/StdLibPass.cpp
Modified: poolalloc/trunk/lib/DSA/StdLibPass.cpp
URL: http://llvm.org/viewvc/llvm-project/poolalloc/trunk/lib/DSA/StdLibPass.cpp?rev=52018&r1=52017&r2=52018&view=diff
==============================================================================
--- poolalloc/trunk/lib/DSA/StdLibPass.cpp (original)
+++ poolalloc/trunk/lib/DSA/StdLibPass.cpp Thu Jun 5 15:14:48 2008
@@ -54,10 +54,12 @@
Graph.getReturnNodeFor(*I).getNode()->clearNodeFlags()
->setHeapMarker()->setModifiedMarker();
} else if (Name == "realloc") {
- Graph.getReturnNodeFor(*I).getNode()->clearNodeFlags()
- ->setHeapMarker()->setModifiedMarker();
- Graph.getNodeForValue(I->arg_begin()).getNode()->clearNodeFlags()
- ->mergeWith(Graph.getReturnNodeFor(*I), 0);
+ if (isa<PointerType>(I->getReturnType())) {
+ Graph.getReturnNodeFor(*I).getNode()->clearNodeFlags()
+ ->setHeapMarker()->setModifiedMarker();
+ Graph.getNodeForValue(I->arg_begin()).getNode()->clearNodeFlags()
+ ->mergeWith(Graph.getReturnNodeFor(*I), 0);
+ }
} else if (Name == "strdup") {
Graph.getReturnNodeFor(*I).getNode()->clearNodeFlags()
->setHeapMarker()->setModifiedMarker();
More information about the llvm-commits
mailing list