search for: fpm2

Displaying 5 results from an estimated 5 matches for "fpm2".

Did you mean: fpm
2008 Aug 11
2
[LLVMdev] Applying different Optimizations for different Functions - Questions?
Hi! I am trying to develop an LLVM tool which can apply different optimizations for selected functions. For example, I want to apply an optimization onto one function but not for another one. I am using the standard optimizations available in LLVM. That is the runOnModule function I have written: bool ComplNewBBFuncs::runOnModule(Module &M) { Function *Main =
2009 Jul 27
2
[LLVMdev] Pass Scheduling Information without using opt
...ePass { bool runOnModule(mod) { for some Functions f in mod { (do some stuff) ExistingModuleProvider mp(mod); FunctionPassManager* fpm = new FunctionPassManager(&mp); fpm->add(createLowerSwitchesPass()); fpm->add(createBreakCriticalEdgesPass()); fpm->add(createLoopSimplifyPass()); fpm2->run(*f); mp.releaseModule(); (do more stuff) } } } Now what I want to have is some runtime-output of the pass manager that tells me what passes were run in what order, give me timing information if possible etc. I hope my explanation is better this time :). Cheers, Ralf
2009 Jul 26
0
[LLVMdev] Pass Scheduling Information without using opt
On Sun, Jul 26, 2009 at 1:48 PM, Ralf Karrenberg<Chareos at gmx.de> wrote: > Hey Daniel, > > thanks for the response. > >> I believe all you need to do is call llvm::llvm_shutdown(). >> > I am not sure that this is what I need. When and how should I call > llvm_shutdown()? At the end of the program, this just arranges for LLVM's "managed statics"
2009 Jul 27
0
[LLVMdev] Pass Scheduling Information without using opt
...anager* fpm = > new FunctionPassManager(&mp); I think creating a new Function Pass Manager inside a module pass is not ideal, however... > > fpm->add(createLowerSwitchesPass()); > fpm->add(createBreakCriticalEdgesPass()); > fpm->add(createLoopSimplifyPass()); > > fpm2->run(*f); > > mp.releaseModule(); > > (do more stuff) > } > > } > > } > > > Now what I want to have is some runtime-output of the pass manager that > tells me what passes were run in what order, give me timing information > if possible etc. You can set...
2009 Jul 26
2
[LLVMdev] Pass Scheduling Information without using opt
Hey Daniel, thanks for the response. > I believe all you need to do is call llvm::llvm_shutdown(). > I am not sure that this is what I need. When and how should I call llvm_shutdown()? After the FunctionPassManager is done, the calling ModulePass still performs quite a few actions on the transformed code and also calls the FunctionPassManager on different functions. However, I need