search for: passmanager

Displaying 20 results from an estimated 1180 matches for "passmanager".

2011 May 03
4
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
...t this behavior is strange. All my other passes migrated fine (after adding in code to do the initializations), but perhaps I'm still not initializing everything properly?. Below is an example program and it's stack trace and debug info. #include "llvm/Pass.h" #include "llvm/PassManager.h" #include "llvm/Analysis/Dominators.h" #include "llvm/Analysis/LoopInfo.h" using namespace llvm; // Forward decl namespace llvm { void initializeFooPass(PassRegistry&); } // end namespace llvm namespace { class Foo : public ModulePass { public:...
2008 Aug 15
3
[LLVMdev] Problems understanding alias analysis validation logic
...pass to the pass manager, but it appears to get invalidated by another pass, and never rerun. My understanding from reading the documentation is that when a pass gets invalidated, it should be rerun before any other passes that requires it. Here is a simple example of the problem I am seeing: PassManager passManager; passManager.add(new TargetData(getTargetData())); passManager.add(createAndersensPass()); passManager.add(createIPSCCPPass()); passManager.add(createGVNPass()); <----will use BasicAA not Andersens ... In this case, I would expect that the GVN pass would use the andersen AA re...
2011 May 04
2
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
...ted fine (after adding in code to do >> the initializations), but perhaps I'm still not initializing >> everything properly?. Below is an example program and it's stack trace >> and debug info. >> >> #include "llvm/Pass.h" >> #include "llvm/PassManager.h" >> #include "llvm/Analysis/Dominators.h" >> #include "llvm/Analysis/LoopInfo.h" >> >> using namespace llvm; >> >> // Forward decl >> namespace llvm { >>      void initializeFooPass(PassRegistry&); >> } // end name...
2009 Mar 14
0
[LLVMdev] Strange LLVM Crash
...es will prune some of the native C++ functions I'm registering in my module (the functions that haven't been called/used yet). I'd like to find a way to disable this so that all the native functions I register will stay in the module. Here are the optimization passes I'm running: passManager.add(new llvm::TargetData(s_pModule)); passManager.add(llvm::createLowerSetJmpPass()); passManager.add(llvm::createRaiseAllocationsPass()); passManager.add(llvm::createCFGSimplificationPass()); passManager.add(llvm::createPromoteMemoryToRegisterPass()); passManager.add(llvm::createGlobalOptimiz...
2011 May 04
0
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
Hi Michael, hi Duncan, yesterday I stumbled over something that might be related. At least I could also just be doing some initialization wrong or something in this direction... In my case, I hit a segfault in PassInfo::isAnalysisGroup() after PassManager.add(myModulePass) is called. My setup seems fairly simple, the attached code should reproduce the error. Compile with g++ test.cpp `llvm-config --cxxflags --ldflags --libs all` -o test gdb --args ./test prints the following stack trace: #0 0x00000000004e35ba in llvm::PassInfo::isAnalysisGroup (...
2011 May 04
1
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
...x.de> wrote: > Hi Michael, hi Duncan, > > yesterday I stumbled over something that might be related. > At least I could also just be doing some initialization wrong or something > in this direction... > > In my case, I hit a segfault in PassInfo::isAnalysisGroup() after > PassManager.add(myModulePass) is called. > My setup seems fairly simple, the attached code should reproduce the error. > > Compile with > g++ test.cpp `llvm-config --cxxflags --ldflags --libs all` -o test > > gdb --args ./test > prints the following stack trace: > > #0  0x00000000004...
2009 Mar 14
2
[LLVMdev] Strange LLVM Crash
...ay in the > module. "externally visible" functions should never be deleted. What's the linkage type on your functions? internal? Don't mark things internal unless you don't mind if they go away. :) Nick > Here are the optimization passes I'm running: > > passManager.add(new llvm::TargetData(s_pModule)); > passManager.add(llvm::createLowerSetJmpPass()); > passManager.add(llvm::createRaiseAllocationsPass()); > passManager.add(llvm::createCFGSimplificationPass()); > passManager.add(llvm::createPromoteMemoryToRegisterPass()); > passManager.add(...
2011 May 04
0
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
...ll my other passes migrated fine (after adding in code to do > the initializations), but perhaps I'm still not initializing > everything properly?. Below is an example program and it's stack trace > and debug info. > > #include "llvm/Pass.h" > #include "llvm/PassManager.h" > #include "llvm/Analysis/Dominators.h" > #include "llvm/Analysis/LoopInfo.h" > > using namespace llvm; > > // Forward decl > namespace llvm { > void initializeFooPass(PassRegistry&); > } // end namespace llvm > > namespace { &g...
2006 Nov 07
4
[LLVMdev] PassManager
Hi All, I am planning to re-implement PassManager in llvm 2.0. The goal is to address http://nondot.org/sabre/LLVMNotes/Inliner-PassManager.txt and http://nondot.org/sabre/LLVMNotes/LoopOptimizerNotes.txt and other crazy ideas Chris has. Current implementation of PassManager is very complex. Initially I attempted to update it to add...
2006 Sep 28
1
[LLVMdev] Bug in WritingAnLLVMPass.html
I find a bug in document llvm/docs/WritingAnLLVMPass.html#debughints Since the PassManager class is in the namespace llvm, we should use command (gdb) break llvm::PassManager::run to set breakpoint. Otherwise we get error message: (gdb) break PassManager::run Can't find member of namespace, class, struct, or union named "PassManager::run" Hint: try 'PassManager::run&...
2008 Dec 10
2
[LLVMdev] AliasAnalysis tutorial 2
Thank you very much John for your answer , you understood well my problem (and the signification of my "own" PassManager). I already tried your solution but it is not enough. The problem is the same with existing AA (andersen for example) : when calling with opt, this works well, but when adding in local PassManager ( with add() ), it is not working (I test this with the DeadStoreEliminationPass which performs an...
2008 Dec 09
1
[LLVMdev] AliasAnalysis tutorial 2
Hi ! In my quest of implementing my own AA, i understood that it doesn't work because i don't use the 'opt' tool but i create my own PassManager (this for other reasons). The problem is the same with other existing AA (AndersensPass or globalModRefPass) : these AApasses are not chained with the basicAA when they are created in PassManager ... So my question is now : how to call an AAPass using a local PassManager (without opt) ? Than...
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
2018 Aug 14
2
Error: ‘class llvm::PassManager<llvm::Module>’ has no member named ‘add’
Hi Philip, I also tried that including file: #include "llvm/IR/LegacyPassManager.h" but error remain same. Please help. On Tue, Aug 14, 2018, 2:58 AM Philip Pfaffe <philip.pfaffe at gmail.com> wrote: > Hi Ratnesh, > > the PassManager used in that example has moved into the legacy namespace: > http://llvm.org/doxygen/classllvm_1_1legacy_1_1PassManager.ht...
2011 May 30
1
[LLVMdev] Segfault when trying to schedule custom ImmutablePass
...handle myself identically to how e.g. TargetData is handled. Should I submit this as a bug? Also, even if I'm just using this wrong, maybe there should be an assert. I've searched the mailing list archives, but didn't find anything related. Here's the code that segfaults: llvm::PassManager canonicalize; canonicalize.add(llvm::createIndVarSimplifyPass()); canonicalize.add(gla_llvm::createCanonicalizeCFGPass()); canonicalize.add(gla_llvm::createBackEndPointerPass(backEnd)); canonicalize.add(gla_llvm::createCanonicalizeInstsPass()); canonicalize.run(*module); where...
2018 Aug 13
2
Error: ‘class llvm::PassManager<llvm::Module>’ has no member named ‘add’
Hi, I am begineer to llvm, implementing a main.cpp from https://github.com/davidar/lljvm/blob/master/backend/main.cpp A) : When I am declaring a command: * PassManager PM* * PM.add(new DataLayout td)* It shows error: > *error: missing template arguments before ‘PM’* * PassManager PM;* ^ >*main_test.cpp:48:2: error: ‘PM’ was not declared in this scope* * PM.add(new DataLayout(td));* Keeping in mind the above error, I changed the code...
2008 Dec 09
0
[LLVMdev] AliasAnalysis tutorial 2
Julien Schmitt wrote: > Hi ! > In my quest of implementing my own AA, i understood that it doesn't work > because i don't use the 'opt' tool but i create my own PassManager (this > for other reasons). > The problem is the same with other existing AA (AndersensPass or > globalModRefPass) : > these AApasses are not chained with the basicAA when they are created in > PassManager ... > > So my question is now : how to call an AAPass using a local...
2009 Mar 14
0
[LLVMdev] Strange LLVM Crash
...lly visible" functions should never be deleted. What's the > linkage type on your functions? internal? Don't mark things internal > unless you don't mind if they go away. :) > > Nick > >> Here are the optimization passes I'm running: >> >> passManager.add(new llvm::TargetData(s_pModule)); >> passManager.add(llvm::createLowerSetJmpPass()); >> passManager.add(llvm::createRaiseAllocationsPass()); >> passManager.add(llvm::createCFGSimplificationPass()); >> passManager.add(llvm::createPromoteMemoryToRegisterPass()); >&g...
2008 Dec 10
0
[LLVMdev] AliasAnalysis tutorial 2
...'t know which pass need an AA (i guess this should be automatic whith the method 'getAnalysisUsage' ) to be continued ... Julien Julien Schmitt a écrit : > Thank you very much John for your answer , you understood well my problem > (and the signification of my "own" PassManager). > > I already tried your solution but it is not enough. The problem is the > same with > existing AA (andersen for example) : when calling with opt, this works > well, but > when adding in local PassManager ( with add() ), it is not working (I > test this with > the DeadSt...
2014 Jan 17
2
[LLVMdev] Do all user-written passes have to be run through a PassManager object (called from outside the LLVM infrastructure)?
...and that is likely to improve quality as more developers are better informed. ________________________________________ From: Criswell, John T Sent: Thursday, January 16, 2014 1:29 PM To: Gai, Jiading; llvmdev at cs.uiuc.edu Subject: Re: [LLVMdev] Do all user-written passes have to be run through a PassManager object (called from outside the LLVM infrastructure)? On 1/16/14 11:44 AM, Gai, Jiading wrote: > I have written several passes that have no pre-requisites for any > previous LLVM native passes prior to my own. For those passes, I have verified that at > least the following two approaches...