similar to: [LLVMdev] Help with pass ordering

Displaying 20 results from an estimated 800 matches similar to: "[LLVMdev] Help with pass ordering"

2006 May 03
2
[LLVMdev] Conflicting passes?
Hi all, Why are these two passes conflicting: UnifyFunctionExitNodes and LowerSwitch? AU.addRequired(LowerSwitchID) works, so does AU.addRequired<unifyFunctionExitNodes>(), but the two together don't... opt: PassManagerT.h:387: void llvm::PassManagerT<Trait>::markPassUsed(const llvm::PassInfo*, llvm::Pass*) [with Trait = llvm::MTraits]: Assertion `getAnalysisOrNullUp(P)
2007 Mar 26
2
[LLVMdev] Problems with one pass using another
Hi, I have two function passes: AvailOut and HashGVN. AvailOut needs to use HashGVN. And they're built in the same shared object file. But addRequired<HashGVN> fails with this error: # opt -load ../../../build/Release/lib/LLVMGVN.so -hashgvn -availout --debug-pass=Structure <basic.s.bc >basic.out.bc opt: /proj/tbres/shanth/llvm/llvm-1.9/lib/VMCore/PassManagerT.h:387: void
2006 May 30
3
[LLVMdev] Adding an object to llc (analysis pass)
Hi > One would expect this, its a facility of the C++ language. The anonymous > namespace is, essentially, the same as declaring everything in it > static. That is, the symbols are not exported and not available for > linking. Yes, it was pretty clear after finding out that this isn't a linking error which i suspected... > > So for all those trying to add an analysis path:
2009 May 13
3
[LLVMdev] ModulePass using BreakCriticalEdges
Hi, I'm writing a ModulePass that needs critical edges split up. I have the statement AU.addRequiredID(BreakCriticalEdgesID); in my getAnalysisUsage() but the pass never gets executed. I guess I have to request pass execution for each function, but I can't get behind how to do that, since there is no analysis group for that kind of transformation. Thanks, Andi
2009 May 13
0
[LLVMdev] ModulePass using BreakCriticalEdges [Followup]
Hi, Andreas Neustifter wrote: > I'm writing a ModulePass that needs critical edges split up. I have the > statement > > AU.addRequiredID(BreakCriticalEdgesID); > > in my getAnalysisUsage() but the pass never gets executed. > > I guess I have to request pass execution for each function, but I can't > get behind how to do that, since there is no analysis group
2006 Sep 09
2
[LLVMdev] Help with pass registration
Dear guys, I have updated my LLVM to the top of CVS, and now I am getting errors like this one below when I write new passes: "llc: PassManagerT.h:387: void llvm::PassManagerT<Trait>::markPassUsed(const llvm::PassInfo*, llvm::Pass*) [with Trait = llvm::FTraits]: Assertion `getAnalysisOrNullUp(P) && dynamic_cast<ImmutablePass*>(getAnalysisOrNullUp(P)) &&
2006 Mar 22
1
[LLVMdev] problem loading analysis results from Inliner pass
On Tue, 21 Mar 2006, Michael McCracken wrote: > opt: /home/mmccrack/lens/obj-llvm-darcslocal/../llvm-darcslocal/llvm/lib/VMCore/PassManagerT.h:426: > void llvm::PassManagerT<UnitType>::markPassUsed(const llvm::PassInfo*, > llvm::Pass*) [with UnitType = llvm::Module]: Assertion > `getAnalysisOrNullUp(P) && > dynamic_cast<ImmutablePass*>(getAnalysisOrNullUp(P))
2006 May 31
0
[LLVMdev] Adding an object to llc (analysis pass)
On Wed, 31 May 2006, Silken Tiger wrote: >> that requires a BasicBlockPass, it will fail the same was as when a >> ModulePass requires a FunctionPass. > void MParSchedule::getAnalysisUsage(AnalysisUsage &AU) const { > AU.setPreservesAll(); > } > > MParSchedule requires nothing and changes nothing. So hopefully the above code > represents this fact? Right
2006 Mar 21
0
[LLVMdev] problem loading analysis results from Inliner pass
A On 3/21/06, Michael McCracken <michael.mccracken at gmail.com> wrote: > On 3/21/06, Chris Lattner <sabre at nondot.org> wrote: > > On Mon, 20 Mar 2006, Michael McCracken wrote: > > > > > Hi, I'm trying to access an analysis pass from the Inliner pass, and > > > I'm having a lot of trouble getting that to work - I can verify that > >
2006 May 30
0
[LLVMdev] Adding an object to llc
On Tue, 2006-05-30 at 14:48 +0200, Silken Tiger wrote: > Hi > > Thanks for all your feedback. I just found the reason for the compile failure > for my analysis pass: I had to add my object to the namespace llvm instead of > anonymous. This took me some time since i was looking for an linking > failure... but as errors go i should have looked at the error message a >
2006 Jun 01
2
[LLVMdev] Adding an object to llc (analysis pass)
Hi > Right it does. However, does something *else* require MParSchedule? If > so, what? Ok, i am writing on a different backend based on the cbackend. The test usage of this pass looks like this: void getAnalysisUsage(AnalysisUsage &AU) const { AU.addRequired<LoopInfo>(); AU.addRequired<MParSchedule>(); AU.setPreservesAll(); } and then in the
2006 May 30
2
[LLVMdev] Adding an object to llc
Hi Thanks for all your feedback. I just found the reason for the compile failure for my analysis pass: I had to add my object to the namespace llvm instead of anonymous. This took me some time since i was looking for an linking failure... but as errors go i should have looked at the error message a little closer. So for all those trying to add an analysis path: * add the object name to the
2006 May 31
2
[LLVMdev] Adding an object to llc (analysis pass)
Hi Am Dienstag, 30. Mai 2006 19:21 schrieb Chris Lattner: > On Tue, 30 May 2006, Silken Tiger wrote: > > Everthing now compiles fine, but when running llc with invoking my own > > backend derived from the cbackend i get the following error: > > namespace llvm { > > class MParSchedule : public BasicBlockPass { > > public: > > > >
2007 Mar 26
0
[LLVMdev] Problems with one pass using another
Hi Prashanth, On Mar 25, 2007, at 11:43 PM, Prashanth Radhakrishnan wrote: > Hi, > > I have two function passes: AvailOut and HashGVN. AvailOut needs to > use > HashGVN. And they're built in the same shared object file. > > But addRequired<HashGVN> fails with this error: > > # opt -load ../../../build/Release/lib/LLVMGVN.so -hashgvn - > availout
2007 Apr 07
1
[LLVMdev] Pass management
Dear guys, I need help fixing a little piece of code. I have a pass that I really want to execute after the TwoAddressinstructionPass. But if I write "AU.addRequiredID(TwoAddressInstructionPassID);" in my pass' getAnalysisUsage, I end up getting the infamous: PassManagerT.h:387: failed assertion `getAnalysisOrNullUp(P) &&
2004 Aug 05
2
[LLVMdev] How to get LoopInfo within Pass subclass?
Hi, I have a hopefully quick question. I'm writing a Pass that needs to see a whole module at a time and keep some state, so I subclassed Pass. However, I want to be able to see the Loops in each Function. Roughly, here's what I want: virtual bool run(Module &M){ // do stuff... for (Module::iterator I = M.begin(), E = M.end(); I != E; ++I){ if(! I->isExternal())
2004 Aug 06
0
[LLVMdev] How to get LoopInfo within Pass subclass?
On Thu, 5 Aug 2004, Michael McCracken wrote: > Hi, I have a hopefully quick question. I'm writing a Pass that needs to > see a whole module at a time and keep some state, so I subclassed Pass. > However, I want to be able to see the Loops in each Function. Roughly, ok. > However, when running I'm informed that: > > PassManagerT.h:421: failed assertion
2006 Sep 09
0
[LLVMdev] Help with pass registration
On Fri, 8 Sep 2006, Fernando Magno Quintao Pereira wrote: > I have updated my LLVM to the top of CVS, and now I am getting > errors like this one below when I write new passes: What does your getAnalysisUsage method look like? -Chris > "llc: PassManagerT.h:387: void > llvm::PassManagerT<Trait>::markPassUsed(const llvm::PassInfo*, > llvm::Pass*) [with Trait =
2006 Mar 21
3
[LLVMdev] problem loading analysis results from Inliner pass
On 3/21/06, Chris Lattner <sabre at nondot.org> wrote: > On Mon, 20 Mar 2006, Michael McCracken wrote: > > > Hi, I'm trying to access an analysis pass from the Inliner pass, and > > I'm having a lot of trouble getting that to work - I can verify that > > my pass is loaded and run (it is a dynamically loaded pass that is > > part of an analysisgroup),
2004 Aug 06
2
[LLVMdev] How to get LoopInfo within Pass subclass?
On Aug 5, 2004, at 5:30 PM, Chris Lattner wrote: > On Thu, 5 Aug 2004, Michael McCracken wrote: > >> Hi, I have a hopefully quick question. I'm writing a Pass that needs >> to >> see a whole module at a time and keep some state, so I subclassed >> Pass. >> However, I want to be able to see the Loops in each Function. Roughly, > > ok. > >>