aboutsummaryrefslogtreecommitdiff
path: root/lib/Transforms/Instrumentation/ProfilePaths/ProfilePaths.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lib/Transforms/Instrumentation/ProfilePaths/ProfilePaths.cpp')
-rw-r--r--lib/Transforms/Instrumentation/ProfilePaths/ProfilePaths.cpp16
1 files changed, 7 insertions, 9 deletions
diff --git a/lib/Transforms/Instrumentation/ProfilePaths/ProfilePaths.cpp b/lib/Transforms/Instrumentation/ProfilePaths/ProfilePaths.cpp
index c8741470b3..96150142e3 100644
--- a/lib/Transforms/Instrumentation/ProfilePaths/ProfilePaths.cpp
+++ b/lib/Transforms/Instrumentation/ProfilePaths/ProfilePaths.cpp
@@ -176,18 +176,16 @@ bool ProfilePaths::runOnFunction(Function &F){
if(fr->getParent()->getName() == "main"){
//intialize threshold
- vector<const Type*> initialize_args;
- initialize_args.push_back(PointerType::get(Type::IntTy));
-
- const FunctionType *Fty = FunctionType::get(Type::VoidTy, initialize_args,
- false);
- Function *initialMeth = fr->getParent()->getParent()->getOrInsertFunction("reoptimizerInitialize", Fty);
- assert(initialMeth && "Initialize method could not be inserted!");
+
+ // FIXME: THIS IS HORRIBLY BROKEN. FUNCTION PASSES CANNOT DO THIS, EXCEPT
+ // IN THEIR INITIALIZE METHOD!!
+ Function *initialize =
+ F.getParent()->getOrInsertFunction("reoptimizerInitialize", Type::VoidTy,
+ PointerType::get(Type::IntTy), 0);
vector<Value *> trargs;
trargs.push_back(threshold);
-
- new CallInst(initialMeth, trargs, "", fr->begin());
+ new CallInst(initialize, trargs, "", fr->begin());
}