search for: createfunctioninliningpass

Displaying 20 results from an estimated 45 matches for "createfunctioninliningpass".

2008 Jan 08
2
[LLVMdev] Setting how aggressive the inliner is in 2.1
Is there a way to set how aggressive the inliner pass (createFunctionInliningPass) without going through the command line interface? Is there any reason InlineLimit isn't an argument to the createFunctionInliningPass function? Thanks, Robert
2008 Jan 08
0
[LLVMdev] Setting how aggressive the inliner is in 2.1
On Mon, 7 Jan 2008, Robert Zeh wrote: > Is there a way to set how aggressive the inliner pass > (createFunctionInliningPass) without going through the command line > interface? Nope. Well, you could call cl::ParseCommandLine yourself (passing in a static array) like llvm-gcc does, but other than that "no". > Is there any reason InlineLimit isn't an argument to the > createFunctionInliningPass...
2016 Apr 16
2
[TSAN] LLVM statistics and pass initialization trigger race detection
...Registry&) InlineSimple.cpp:82 (libLTO.dylib+0x000000ab2b55) #3 (anonymous namespace)::SimpleInliner::SimpleInliner() InlineSimple.cpp:50 (libLTO.dylib+0x000000ab2e8e) #4 (anonymous namespace)::SimpleInliner::SimpleInliner() InlineSimple.cpp:49 (libLTO.dylib+0x000000ab2d19) #5 llvm::createFunctionInliningPass() InlineSimple.cpp:85 (libLTO.dylib+0x000000ab2ce3) ... Previous read of size 4 at 0x0001113619e8 by thread T14: #0 llvm::initializeSimpleInlinerPass(llvm::PassRegistry&) InlineSimple.cpp:82 (libLTO.dylib+0x000000ab2b65) #1 (anonymous namespace)::SimpleInliner::SimpleInliner() Inline...
2011 Nov 23
2
[LLVMdev] JIT: Inlining introduces intrinsics.
If I activate the Inliner pass: Builder.Inliner = createFunctionInliningPass(Threshold); this is the result: LLVM ERROR: Program used external function 'llvm.lifetime.start' which could not be resolved! It happens on almost all my test cases, even at -O0. This JIT compiler does the same as `opt' wrt optimization passes. I'm using a LLVM snapshot from app...
2011 Nov 23
2
[LLVMdev] JIT: Inlining introduces intrinsics.
Hello Eli. Eli Friedman <eli.friedman at gmail.com> writes: >> If I activate the Inliner pass: >> >>    Builder.Inliner = createFunctionInliningPass(Threshold); >> >> this is the result: >> >> LLVM ERROR: Program used external function 'llvm.lifetime.start' which could not be resolved! >> >> It happens on almost all my test cases, even at -O0. >> >> This JIT compiler does the same as `opt&...
2009 Mar 14
0
[LLVMdev] Strange LLVM Crash
...ss()); passManager.add(llvm::createRaiseAllocationsPass()); passManager.add(llvm::createCFGSimplificationPass()); passManager.add(llvm::createPromoteMemoryToRegisterPass()); passManager.add(llvm::createGlobalOptimizerPass()); passManager.add(llvm::createGlobalDCEPass()); passManager.add(llvm::createFunctionInliningPass()); I would like to know either which pass does this (global optimizer maybe?) so I can disable it, or what flag I can set on my C++ function objects to keep them from being pruned out. -- View this message in context: http://www.nabble.com/Strange-LLVM-Crash-tp22508882p22515204.html Sent from th...
2009 Mar 14
2
[LLVMdev] Strange LLVM Crash
...lvm::createRaiseAllocationsPass()); > passManager.add(llvm::createCFGSimplificationPass()); > passManager.add(llvm::createPromoteMemoryToRegisterPass()); > passManager.add(llvm::createGlobalOptimizerPass()); > passManager.add(llvm::createGlobalDCEPass()); > passManager.add(llvm::createFunctionInliningPass()); > > I would like to know either which pass does this (global optimizer maybe?) > so I can disable it, or what flag I can set on my C++ function objects to > keep them from being pruned out.
2011 Oct 15
2
[LLVMdev] Maximum inlining threshold
Hi, We want to apply the deepest possible inlining to the target code. Looks like builder.Inliner = createFunctionInliningPass(2000); does the sufficient inlining, but what would be the best value for threshold here? Apparently, builder.Inliner = createFunctionInliningPass(numeric_limits<int>::max()); gives less inlining, that 2000. Thanks, - D.
2011 Nov 23
0
[LLVMdev] JIT: Inlining introduces intrinsics.
On Tue, Nov 22, 2011 at 8:26 PM, Óscar Fuentes <ofv at wanadoo.es> wrote: > If I activate the Inliner pass: > >    Builder.Inliner = createFunctionInliningPass(Threshold); > > this is the result: > > LLVM ERROR: Program used external function 'llvm.lifetime.start' which could not be resolved! > > It happens on almost all my test cases, even at -O0. > > This JIT compiler does the same as `opt' wrt optimization passes. I&...
2012 Feb 29
1
[LLVMdev] how to remove inlined function
Hi! I'm using clang/llvm 3.0 release and I have a module that is generated by clang with some functions declared as inline. after inlining (llvm::createFunctionInliningPass) I'd like to remove the functions that were inlined. how can this be done? surprisingly they are removed if a print pass (llvm::createPrintModulePass) is present. is there an explanation for this? -Jochen
2008 Jan 12
1
[LLVMdev] Setting how aggressive the inliner is in 2.1
...ists.llvm.org/pipermail/llvm-dev/attachments/20080111/18fad7e6/attachment.obj> -------------- next part -------------- Robert On Jan 8, 2008, at 3:26 PM, Chris Lattner wrote: > On Mon, 7 Jan 2008, Robert Zeh wrote: >> Is there a way to set how aggressive the inliner pass >> (createFunctionInliningPass) without going through the command line >> interface? > > Nope. Well, you could call cl::ParseCommandLine yourself (passing > in a > static array) like llvm-gcc does, but other than that "no". > >> Is there any reason InlineLimit isn't an argument to the...
2010 Mar 02
2
[LLVMdev] make SHARED_LIBRARY=1 broken?
...88): undefined reference to `llvm::createGlobalDCEPass()' /home/src/llvm-trunk/llvm/tools/opt/Release/opt.o: In function `(anonymous namespace)::AddOptimizationPasses(llvm::PassManager&, llvm::FunctionPassManager&, unsigned int)': opt.cpp:(.text+0x6e7): undefined reference to `llvm::createFunctionInliningPass(int)' opt.cpp:(.text+0x781): undefined reference to `llvm::createAlwaysInlinerPass()' /home/src/llvm-trunk/llvm/tools/opt/Release/opt.o: In function `T.1601': opt.cpp:(.text+0x1f1f): undefined reference to `llvm::createArgumentPromotionPass(unsigned int)' opt.cpp:(.text+0x1f24): und...
2009 Mar 14
5
[LLVMdev] Strange LLVM Crash
I'm implementing a JIT and getting some strange crashes. I'm unsure exactly what's causing them, but it seems to occur when I call the getReturnType() method on some LLVM function objects. More precisely, I'm registering some native C++ functions as LLVM functions through the addGlobalMapping method of an execution engine object. I then keep a pointer to those LLVM function
2011 Nov 25
0
[LLVMdev] JIT: Inlining introduces intrinsics.
Óscar Fuentes <ofv at wanadoo.es> writes: >>> If I activate the Inliner pass: >>> >>>    Builder.Inliner = createFunctionInliningPass(Threshold); >>> >>> this is the result: >>> >>> LLVM ERROR: Program used external function 'llvm.lifetime.start' which could not be resolved! >>> >>> It happens on almost all my test cases, even at -O0. >>> >>> This JIT...
2008 Jul 30
0
[LLVMdev] llvm-gcc fortran bootstrap broken
...// Non-zero if bytecode from PCH is successfully read. int flag_llvm_pch_read; +// Non-zero if libcalls should not be simplified. +int flag_no_simplify_libcalls; + // Global state for the LLVM backend. Module *TheModule = 0; DebugInfo *TheDebugInfo = 0; @@ -381,7 +383,7 @@ PM->add(createFunctionInliningPass()); // Inline small functions if (optimize > 2) PM->add(createArgumentPromotionPass()); // Scalarize uninlined fn args - if (!flag_no_builtin) + if (!flag_no_simplify_libcalls) PM->add(createSimplifyLibCallsPass()); // Library Call Optimizations PM-&gt...
2008 Apr 16
3
[LLVMdev] flag_unit_at_a_time and pass scheduling in llvm-gcc
In llvm-backend.cpp I see: if (optimize > 1) { if (flag_inline_trees > 1) // respect -fno-inline-functions PM->add(createFunctionInliningPass()); // Inline small functions if (flag_unit_at_a_time && !lang_hooks.flag_no_builtin()) PM->add(createSimplifyLibCallsPass()); // Library Call Optimizations if (optimize > 2) PM->add(createArgumentPromotionPass()); // Scalarize uninlined fn args }...
2009 Mar 14
0
[LLVMdev] Strange LLVM Crash
...cationsPass()); >> passManager.add(llvm::createCFGSimplificationPass()); >> passManager.add(llvm::createPromoteMemoryToRegisterPass()); >> passManager.add(llvm::createGlobalOptimizerPass()); >> passManager.add(llvm::createGlobalDCEPass()); >> passManager.add(llvm::createFunctionInliningPass()); >> >> I would like to know either which pass does this (global optimizer >> maybe?) >> so I can disable it, or what flag I can set on my C++ function objects to >> keep them from being pruned out. > > _______________________________________________ > LLV...
2011 Mar 22
2
[LLVMdev] LLVM optimization passes crash when running on second thread
...ows: llvm::OwningPtr<llvm::PassManager> passManager( new llvm::PassManager ); if ( optimize ) { llvm::createStandardFunctionPasses( passManager.get(), 2 ); llvm::createStandardModulePasses( passManager.get(), 2, false, true, true, true, false, llvm::createFunctionInliningPass() ); llvm::createStandardLTOPasses( passManager.get(), true, true, false ); } passManager->run( *module ); - If I *don't* comment out the optimization passes (inside the if statement above) LLVM crashes with what appears to be a stack overflow; I've attached the...
2011 Mar 22
0
[LLVMdev] LLVM optimization passes crash when running on second thread
...m::OwningPtr<llvm::PassManager> passManager( new llvm::PassManager ); >        if ( optimize ) >        { >          llvm::createStandardFunctionPasses( passManager.get(), 2 ); >          llvm::createStandardModulePasses( passManager.get(), 2, false, true, true, true, false, llvm::createFunctionInliningPass() ); >          llvm::createStandardLTOPasses( passManager.get(), true, true, false ); >        } >        passManager->run( *module ); > - If I *don't* comment out the optimization passes (inside the if statement above) LLVM crashes with what appears to be a stack overflow; I...
2012 Feb 29
2
[LLVMdev] problem with inlining pass
Hi! My llvm version is 3.0 release. I have a module generated by clang. When I optimize it, I first add an inlining pass (llvm::createFunctionInliningPass), then these passes: - own FunctionPass - llvm::createPromoteMemoryToRegisterPass - llvm::createInstructionCombiningPass - llvm::createDeadInstEliminationPass - llvm::createDeadStoreEliminationPass - new llvm::DominatorTree() - new llvm::LoopInfo() - llvm::createLoopSimplifyPass() - own FunctionPas...