search for: pmtoplevelmanager

Displaying 20 results from an estimated 76 matches for "pmtoplevelmanager".

2011 May 03
4
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
When migrating my project to 2.9, I've encountered a strange segfault where if a ModulePass's getAnalysisUsage adds LoopInfo and DominatorTree, then llvm::PMTopLevelManager::findAnalysisUsage will segfault. What's odd is that if I rearrange this (add required for DominatorTree before LoopInfo), it does not segfault. I realize that LoopInfo requires and preserves DominatorTree, but this behavior is strange. All my other passes migrated fine (after adding in code to...
2011 May 04
2
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
...eled. On Wed, May 4, 2011 at 12:59 AM, Duncan Sands <baldrick at free.fr> wrote: > Hi Michael, > >> When migrating my project to 2.9, I've encountered a strange segfault >> where if a ModulePass's getAnalysisUsage adds LoopInfo and >> DominatorTree, then llvm::PMTopLevelManager::findAnalysisUsage will >> segfault. > > I suggest you build LLVM with assertions enabled - then you should get a > helpful error message rather than a segfault.  I think you are not allowed > to use LoopInfo from a ModulePass, but I don't recall the details.  This > came u...
2011 May 04
0
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
Hi Michael, > When migrating my project to 2.9, I've encountered a strange segfault > where if a ModulePass's getAnalysisUsage adds LoopInfo and > DominatorTree, then llvm::PMTopLevelManager::findAnalysisUsage will > segfault. I suggest you build LLVM with assertions enabled - then you should get a helpful error message rather than a segfault. I think you are not allowed to use LoopInfo from a ModulePass, but I don't recall the details. This came up several times already on t...
2016 Mar 24
0
Help with pass manager
The problems happens because PMTopLevelManager::findAnalysisPassInfo(AnalysisID AID) returns nullptr in PMTopLevelManager::addImmutablePass(ImmutablePass *P). This because PassRegistry::getPassRegistry()->getPassInfo(AID) call in it returns nullptr as well. Should I probably register the pass I want to add with PassRegistry::registerPass(con...
2011 May 04
0
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
...-o test gdb --args ./test prints the following stack trace: #0 0x00000000004e35ba in llvm::PassInfo::isAnalysisGroup (this=0x0) at llvm/include/llvm/PassSupport.h:91 #1 0x00000000004e2ffa in llvm::PassInfo::createPass (this=0x0) at llvm/lib/VMCore/Pass.cpp:196 #2 0x00000000004e522e in llvm::PMTopLevelManager::schedulePass (this=0x85eb60, P=0x85ef10) at llvm/lib/VMCore/PassManager.cpp:617 #3 0x00000000004ebcce in llvm::PassManagerImpl::add (this=0x85e9b0, P=0x85ef10) at llvm/lib/VMCore/PassManager.cpp:396 #4 0x00000000004e9735 in llvm::PassManager::addImpl (this=0x7fffffffdd90, P=0x85ef10) at llvm/...
2016 Mar 30
1
Help with pass manager
...ses all need to be initialized before they are added into a pass manager. Are you calling TargetLibraryInfoWrapperPass::initializePass anywhere? -Chris > On Mar 24, 2016, at 10:41 AM, Lorenzo Laneve via llvm-dev <llvm-dev at lists.llvm.org> wrote: > > The problems happens because PMTopLevelManager::findAnalysisPassInfo(AnalysisID AID) returns nullptr in PMTopLevelManager::addImmutablePass(ImmutablePass *P). > This because PassRegistry::getPassRegistry()->getPassInfo(AID) call in it returns nullptr as well. > Should I probably register the pass I want to add with PassRegistry::regist...
2011 May 04
1
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
...prints the following stack trace: > > #0  0x00000000004e35ba in llvm::PassInfo::isAnalysisGroup (this=0x0) at > llvm/include/llvm/PassSupport.h:91 > #1  0x00000000004e2ffa in llvm::PassInfo::createPass (this=0x0) at > llvm/lib/VMCore/Pass.cpp:196 > #2  0x00000000004e522e in llvm::PMTopLevelManager::schedulePass > (this=0x85eb60, P=0x85ef10) at llvm/lib/VMCore/PassManager.cpp:617 > #3  0x00000000004ebcce in llvm::PassManagerImpl::add (this=0x85e9b0, > P=0x85ef10) at llvm/lib/VMCore/PassManager.cpp:396 > #4  0x00000000004e9735 in llvm::PassManager::addImpl (this=0x7fffffffdd90, &gt...
2016 Mar 24
2
Help with pass manager
...>>>>> >>>>>>>> On Mar 23, 2016, at 5:41 PM, Lorenzo Laneve <lore97drk at icloud.com <mailto:lore97drk at icloud.com>> wrote: >>>>>>>> >>>>>>>> The stack trace: >>>>>>>> llvm::PMTopLevelManager::addImmutablePass(llvm::ImmutablePass*) >>>>>>>> llvm::PMTopLevelManager::schedulePass(llvm::Pass*) >>>>>>>> moduleToObjectFile(llvm::Module*,std::string&,llvm::LLVMContext&) >>>>>>> >>>>>>> >>...
2011 May 17
0
[LLVMdev] 2.9 segfault when requesting for both LoopInfo and DominatorTree analyses.
...I did not try 2.8) Thanks, Arushi On Tue, May 3, 2011 at 6:18 PM, Michael Ilseman <michael at lunarg.com> wrote: > When migrating my project to 2.9, I've encountered a strange segfault > where if a ModulePass's getAnalysisUsage adds LoopInfo and > DominatorTree, then llvm::PMTopLevelManager::findAnalysisUsage will > segfault. What's odd is that if I rearrange this (add required for > DominatorTree before LoopInfo), it does not segfault. I realize that > LoopInfo requires and preserves DominatorTree, but this behavior is > strange. All my other passes migrated fine (aft...
2013 Jun 21
2
[LLVMdev] About writing a modulePass in addPreEmitPass() for NVPTX
...PreEmitPass() for NVPTX, but I encounter an assertion failed when executing clang. Here is my error message. ==== Pass 'NVPTX Assembly Printer' is not initialized. Verify if there is a pass dependency cycle. Required Passes: llc: /home/pyyu/local/llvm/lib/IR/PassManager.cpp:637: void llvm::PMTopLevelManager::schedulePass(llvm::Pass*): Assertion `PI && "Expected required passes to be initialized"' failed. 0 llc 0x000000000176cd86 llvm::sys::PrintStackTrace(_IO_FILE*) + 38 1 llc 0x000000000176d00d 2 llc 0x000000000176ca5c 3 libpthread.so.0 0x...
2012 Mar 21
0
[LLVMdev] llvm seg fault when specifying addRequiredTransitive in module pass
Hi all, I am using llvm to perform some static analysis with a module pass. In getAnalysisUsage(), I specified some required passes by: addRequiredTransitive<LoopInfo>(); When I run my pass using opt, it crashes with segmentation fault with callstack: #0 0x0877aebd in llvm::PMTopLevelManager::findAnalysisUsage (this=0x8c10934, P=0xb15b988) at PassManager.cpp:573 #1 0x0877aa9b in llvm::PMTopLevelManager::setLastUser (this=0x8c10934, AnalysisPasses=..., P=0xb121c18) at PassManager.cpp:512 #2 0x0877ee0f in llvm::MPPassManager::addLowerLevelRequiredPass (this=0x8c102d8, P=0xb121c18, Requ...
2016 Mar 24
2
Help with pass manager
The stack trace: llvm::PMTopLevelManager::addImmutablePass(llvm::ImmutablePass*) llvm::PMTopLevelManager::schedulePass(llvm::Pass*) moduleToObjectFile(llvm::Module*,std::string&,llvm::LLVMContext&) Sometimes it doesn't crash because TargetRegistry::lookupTarget() returns an error which says it doesn't support the current...
2013 Dec 02
2
[LLVMdev] Segmentation fault when traverse call graph
...he call graph such as: CallGraph CG = this->getAnalysis<CallGraph>; for (CallGraph::const_iterator i = CG.begin(); i != CG.end(); ++i) { .... } However, I encountered a segmentation fault with the next core dump information. What should I do? llvm::PassInfo::createPass() const + 4 llvm::PMTopLevelManager::schedulePass(llvm::Pass*) llvm::PassManager::add(llvm::Pass*) ... -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20131202/c8daa472/attachment.html>
2009 Aug 10
2
[LLVMdev] How to use a FunctionPass in a ModulePass?
...40e __assert_fail + 238 5 opt 0x08507bc5 llvm::Pass* llvm::callDefaultCtor<llvm::TargetData>() + 0 6 opt 0x08507be2 llvm::Pass* llvm::callDefaultCtor<llvm::TargetData>() + 29 7 opt 0x08596996 llvm::PassInfo::createPass() const + 126 8 opt 0x0859156a llvm::PMTopLevelManager::schedulePass(llvm::Pass*) + 284 9 opt 0x085915f1 llvm::PMTopLevelManager::schedulePass(llvm::Pass*) + 419 10 opt 0x0859b9ec llvm::FunctionPassManagerImpl::add(llvm::Pass*) + 30 11 opt 0x085917ab llvm::MPPassManager::addLowerLevelRequiredPass(llvm::Pass*, llvm::Pass*) + 315 12...
2011 Dec 06
2
[LLVMdev] Assertion `PI && "Expected required passes to be initialized"' failed for AliasAnalysis.
...78 false, false) 2679 However when I run Clang with my pass enabled, I get the following error: $ clang_build_Linux/Release+Asserts/bin/clang -fthread-sanitizer -c t.c CREATE clang: /usr/local/google/tsan-llvm/data-race-test/clang_src/lib/VMCore/PassManager.cpp:634: void llvm::PMTopLevelManager::schedulePass(llvm::Pass*): Assertion `PI && "Expected required passes to be initialized"' failed. 0 clang 0x0000000001d1757f 1 clang 0x0000000001d197f2 2 libpthread.so.0 0x00007fe8a157d8f0 3 libc.so.6 0x00007fe8a086ca75 gsignal + 53 4 libc.so.6...
2016 Mar 24
2
Help with pass manager
...2016, at 1:44 AM, Mehdi Amini <mehdi.amini at apple.com <mailto:mehdi.amini at apple.com>> wrote: > >> On Mar 23, 2016, at 5:41 PM, Lorenzo Laneve <lore97drk at icloud.com <mailto:lore97drk at icloud.com>> wrote: >> >> The stack trace: >> llvm::PMTopLevelManager::addImmutablePass(llvm::ImmutablePass*) >> llvm::PMTopLevelManager::schedulePass(llvm::Pass*) >> moduleToObjectFile(llvm::Module*,std::string&,llvm::LLVMContext&) > > > Without mapping to line numbers this is not very helpful: moduleToObjectFile never calls schedulePa...
2011 Dec 06
0
[LLVMdev] Assertion `PI && "Expected required passes to be initialized"' failed for AliasAnalysis.
Hi Alexander, I had the same error: sincos: /home/marcusmae/rpmbuild/BUILD/llvm/lib/VMCore/PassManager.cpp:635: void llvm::PMTopLevelManager::schedulePass(llvm::Pass*): Assertion `PI && "Expected required passes to be initialized"' failed. The solution was to add: PassRegistry &Registry = *PassRegistry::getPassRegistry(); initializeCore(Registry); initializeScalarOpts(Registry); initializeIPO(Registry...
2011 May 30
1
[LLVMdev] Segfault when trying to schedule custom ImmutablePass
...segfaults when ScalarEvolution tries to get TargetData if available. Below is the complete stack trace: #0 0x083ae6fd in std::vector<llvm::PassInfo const*, std::allocator<llvm::PassInfo const*> >::begin (this=0x10) at /usr/include/c++/4.4/bits/stl_vector.h:435 #1 0x083a63c8 in llvm::PMTopLevelManager::findAnalysisPass (this=0x85f6ad4, AID=0x85eef30) at /home/michael/LunarGLASS/LLVM/llvm-2.9/lib/VMCore/PassManager.cpp:673 #2 0x083a7f0e in llvm::PMDataManager::findAnalysisPass (this=0x88931b8, AID=0x85eef30, SearchParent=true) at /home/michael/LunarGLASS/LLVM/llvm-2.9/lib/VMCore/PassManager.cpp:...
2016 Mar 24
0
Help with pass manager
> On Mar 23, 2016, at 5:41 PM, Lorenzo Laneve <lore97drk at icloud.com> wrote: > > The stack trace: > llvm::PMTopLevelManager::addImmutablePass(llvm::ImmutablePass*) > llvm::PMTopLevelManager::schedulePass(llvm::Pass*) > moduleToObjectFile(llvm::Module*,std::string&,llvm::LLVMContext&) Without mapping to line numbers this is not very helpful: moduleToObjectFile never calls schedulePass. Also you didn'...
2016 Mar 24
2
Help with pass manager
...apple.com <mailto:mehdi.amini at apple.com>> wrote: >> >>> >>>> On Mar 23, 2016, at 5:41 PM, Lorenzo Laneve <lore97drk at icloud.com <mailto:lore97drk at icloud.com>> wrote: >>>> >>>> The stack trace: >>>> llvm::PMTopLevelManager::addImmutablePass(llvm::ImmutablePass*) >>>> llvm::PMTopLevelManager::schedulePass(llvm::Pass*) >>>> moduleToObjectFile(llvm::Module*,std::string&,llvm::LLVMContext&) >>> >>> >>> Without mapping to line numbers this is not very helpful: m...