[llvm-commits] [poolalloc] r138069 - /poolalloc/trunk/lib/DSA/Local.cpp
John Criswell
criswell at uiuc.edu
Fri Aug 19 13:26:00 PDT 2011
Author: criswell
Date: Fri Aug 19 15:26:00 2011
New Revision: 138069
URL: http://llvm.org/viewvc/llvm-project?rev=138069&view=rev
Log:
Added support for the memory use marker intrinsics:
llvm.lifetime.start
llvm.lifetime.end
llvm.invariant.start
llvm.invariant.end
Modified:
poolalloc/trunk/lib/DSA/Local.cpp
Modified: poolalloc/trunk/lib/DSA/Local.cpp
URL: http://llvm.org/viewvc/llvm-project/poolalloc/trunk/lib/DSA/Local.cpp?rev=138069&r1=138068&r2=138069&view=diff
==============================================================================
--- poolalloc/trunk/lib/DSA/Local.cpp (original)
+++ poolalloc/trunk/lib/DSA/Local.cpp Fri Aug 19 15:26:00 2011
@@ -812,7 +812,20 @@
N->setModifiedMarker()->setVAStartMarker();
}
-/// returns true if the intrinsic is handled
+///
+/// Method: visitIntrinsic()
+///
+/// Description:
+/// Generate correct DSNodes for calls to LLVM intrinsic functions.
+///
+/// Inputs:
+/// CS - The CallSite representing the call or invoke to the intrinsic.
+/// F - A pointer to the function called by the call site.
+///
+/// Return value:
+/// true - This intrinsic is properly handled by this method.
+/// false - This intrinsic is not recognized by DSA.
+///
bool GraphBuilder::visitIntrinsic(CallSite CS, Function *F) {
++NumIntrinsicCall;
switch (F->getIntrinsicID()) {
@@ -942,6 +955,13 @@
return true;
}
+ // Process lifetime intrinsics
+ case Intrinsic::lifetime_start:
+ case Intrinsic::lifetime_end:
+ case Intrinsic::invariant_start:
+ case Intrinsic::invariant_end:
+ return true;
+
default: {
//ignore pointer free intrinsics
if (!isa<PointerType>(F->getReturnType())) {
More information about the llvm-commits
mailing list