search for: loopinfobase

Displaying 20 results from an estimated 22 matches for "loopinfobase".

2008 Mar 18
2
[LLVMdev] Build problem in TOT llvm
I'm getting a lot of these from TOT make: /Volumes/MacOS9/gcc/llvm/include/llvm/Analysis/LoopInfo.h: In instantiation of 'llvm::LoopInfoBase<llvm::BasicBlock>': /Volumes/MacOS9/gcc/llvm/include/llvm/Analysis/LoopInfo.h:886: instantiated from here /Volumes/MacOS9/gcc/llvm/include/llvm/Analysis/LoopInfo.h:573: warning: 'class llvm::LoopInfoBase<llvm::BasicBlock>' has virtual functions but non-virtual destru...
2008 Mar 18
0
[LLVMdev] Build problem in TOT llvm
On Mar 17, 2008, at 5:46 PM, Dale Johannesen wrote: > I'm getting a lot of these from TOT make: > > /Volumes/MacOS9/gcc/llvm/include/llvm/Analysis/LoopInfo.h: In > instantiation of 'llvm::LoopInfoBase<llvm::BasicBlock>': > /Volumes/MacOS9/gcc/llvm/include/llvm/Analysis/LoopInfo.h:886: > instantiated from here > /Volumes/MacOS9/gcc/llvm/include/llvm/Analysis/LoopInfo.h:573: > warning: 'class llvm::LoopInfoBase<llvm::BasicBlock>' has virtual > functions but n...
2008 Mar 18
1
[LLVMdev] Build problem in TOT llvm
On Mar 17, 2008, at 6:22 PM, Devang Patel wrote: > > On Mar 17, 2008, at 5:46 PM, Dale Johannesen wrote: > >> I'm getting a lot of these from TOT make: >> >> /Volumes/MacOS9/gcc/llvm/include/llvm/Analysis/LoopInfo.h: In >> instantiation of 'llvm::LoopInfoBase<llvm::BasicBlock>': >> /Volumes/MacOS9/gcc/llvm/include/llvm/Analysis/LoopInfo.h:886: >> instantiated from here >> /Volumes/MacOS9/gcc/llvm/include/llvm/Analysis/LoopInfo.h:573: >> warning: 'class llvm::LoopInfoBase<llvm::BasicBlock>' has virtual >...
2012 Mar 13
2
[LLVMdev] How to keep FunctionPass analysis result alive in Module Pass?
...run on the specified function. While you can run a function pass on many different functions, there still exists only *one* instance of the pass itself. The only thing that changes between different calls to getAnalysis<LoopInfo>(F) is the analysis information held by the LoopInfo pass in its LoopInfoBase member. It gets released and overwritten on every call to LoopInfo::runOnFunction() - see the call to releaseMemory() right at the beginning. The idea of creating some sort of Map of Function* ----> LoopInfo* therefore won't work. It also doesn't make sense to keep Loop* pointers around...
2012 Mar 13
0
[LLVMdev] How to keep FunctionPass analysis result alive in Module Pass?
...ction. While > you can run a function pass on many different functions, there still > exists only *one* instance of the pass itself. The only thing that > changes between different calls to getAnalysis<LoopInfo>(F) is the > analysis information held by the LoopInfo pass in its LoopInfoBase > member. It gets released and overwritten on every call to > LoopInfo::runOnFunction() - see the call to releaseMemory() right at > the beginning. That seems like a reasonable explanation. > > The idea of creating some sort of Map of Function* ----> LoopInfo* > therefore...
2013 May 09
2
[LLVMdev] LoopPass symbol error
...fine for me. > > Someone else should try this on linux with shared libs. > > You can also try removing these lines from LoopInfo.h, which seem > superfluous to me: > > __extension__ extern template class LoopBase<BasicBlock, Loop>; > __extension__ extern template class LoopInfoBase<BasicBlock, Loop>; > > -Andy > > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130509/552ffdf1/attachment.html>
2018 Nov 27
2
ScalarEvolution class returns no valid loop exit count
...= 0; for(int i; i < 10; ++i){ a = a + 1; }; ...... For the loop analyzation I use the ScalarEvolution class with the following initialization: ...... void analysis(Function* func) DominatorTree DT = DominatorTree(); DT.recalculate(*func); DT.updateDFSNumbers(); LoopInfoBase<BasicBlock, Loop> LIB; LIB.releaseMemory(); LIB.analyze(DT); for(auto&bb :*func){ Loop * L = LIB.getLoopFor(&bb); if(L != nullptr){ AssumptionCache AC = AssumptionCache(*bb.getParent()); Triple MT(llvm::sys::getDefaultTargetTriple()...
2010 Jan 08
1
[LLVMdev] integrate LLVM Poly into existing LLVM infrastructure
...must admit > this approach > helps me on another, similar project I'm working on in parallel (no > pun intended). > Tobias, is this how you are architecting your region analysis already? > > John > i just implementing the skeleton of Region/RegionInfo like LoopBase and LoopInfoBase[1] in the llvm existing codes, and found that theres lots of common between "Region" and "Loop": 1. both of them are consist of several BasicBlocks 2. both of them have some kind of nested structures, so both a loop and a region could have parent or childrens 3. both of them...
2012 Apr 26
2
[LLVMdev] Detect if a basicblock is part of a loop
...r example), you could create this information by simply creating a DominatorTreeBase of your function and using it to calculate the LoopInfo, as below: DominatorTreeBase<BasicBlock> *DTB; DTB = new DominatorTreeBase<BasicBlock>(false); DTB->recalculate(*AuxFunction); LoopInfoBase<BasicBlock, Loop> LIB; LIB.Calculate(*DTB); Cheers, -- Cristianno Martins PhD Student of Computer Science University of Campinas cmartins at ic.unicamp.br On Thursday, 26 de April de 2012 at 11:57, Hal Finkel wrote: > Rinaldini, > > What exactly did you run? Specifically,...
2013 May 09
0
[LLVMdev] LoopPass symbol error
...ded loop pass as you described works fine for me. Someone else should try this on linux with shared libs. You can also try removing these lines from LoopInfo.h, which seem superfluous to me: __extension__ extern template class LoopBase<BasicBlock, Loop>; __extension__ extern template class LoopInfoBase<BasicBlock, Loop>; -Andy -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130508/e11e2f44/attachment.html>
2013 May 09
2
[LLVMdev] LoopPass symbol error
Hello, I am building a loop pass following these instructions: http://llvm.org/docs/WritingAnLLVMPass.html Everything works fine, I did it many times for Function Passes, but in the runOnLoopmethod, whenever I call a method of the loop L passed as argument, for example L->begin(), I get the following error: opt: symbol lookup error: /home/giacomo/llvmcsfv/Debug+Asserts/lib/Acsl.so: >
2013 May 09
0
[LLVMdev] LoopPass symbol error
...omeone else should try this on linux with shared libs. >> >> You can also try removing these lines from LoopInfo.h, which seem >> superfluous to me: >> >> __extension__ extern template class LoopBase<BasicBlock, Loop>; >> __extension__ extern template class LoopInfoBase<BasicBlock, Loop>; >> >> -Andy >> >> > -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20130509/453eae21/attachment.html>
2010 Jan 08
1
[LLVMdev] Make LoopBase inherit from "RegionBase"?
...> helps me on another, similar project I'm working on in parallel (no >> pun intended). >> Tobias, is this how you are architecting your region analysis already? >> >> John >> > > i just implementing the skeleton of Region/RegionInfo like LoopBase and > LoopInfoBase[1] in the llvm existing codes, and found that theres lots > of common between "Region" and "Loop": > > 1. both of them are consist of several BasicBlocks > 2. both of them have some kind of nested structures, so both a loop and > a region could have parent or chil...
2012 Apr 26
0
[LLVMdev] Detect if a basicblock is part of a loop
...r example), you could create this information by simply creating a DominatorTreeBase of your function and using it to calculate the LoopInfo, as below: DominatorTreeBase<BasicBlock> *DTB; DTB = new DominatorTreeBase<BasicBlock>(false); DTB->recalculate(*AuxFunction); LoopInfoBase<BasicBlock, Loop> LIB; LIB.Calculate(*DTB); Cheers, -- Cristianno Martins PhD Student of Computer Science University of Campinas cmartins at ic.unicamp.br On Thursday, 26 de April de 2012 at 11:57, Hal Finkel wrote: Rinaldini, What exactly did you run? Specifically, you may be missi...
2010 Jan 12
0
[LLVMdev] Make LoopBase inherit from "RegionBase"?
...gt; helps me on another, similar project I'm working on in parallel (no >> pun intended). >> Tobias, is this how you are architecting your region analysis already? >> >> John >> > > i just implementing the skeleton of Region/RegionInfo like LoopBase and > LoopInfoBase[1] in the llvm existing codes, and found that theres lots > of common between "Region" and "Loop": > > 1. both of them are consist of several BasicBlocks Correct. > 2. both of them have some kind of nested structures, so both a loop and > a region could have par...
2012 Mar 09
0
[LLVMdev] How to keep FunctionPass analysis result alive in Module Pass?
On 3/9/12 4:28 PM, Fan Long wrote: > Thank you for your quick reply. > > Actually I am using a std::map to map Function* to LoopInfo*, but that > does not help in this case. Each time I call > getAnalysis<llvm::LoopInfo>(*F), it returns the same instance of > llvm::LoopInfo, so the std::map is just mapping every function into > the same instance. It seems only the
2012 Apr 26
0
[LLVMdev] Detect if a basicblock is part of a loop
Rinaldini, What exactly did you run? Specifically, you may be missing some analysis passes that are necessary for LoopInfo to have the loop information you desire. -Hal On Thu, 26 Apr 2012 14:02:04 +0000 Rinaldini Julien <julien.rinaldini at heig-vd.ch> wrote: > Hi, > > I'm trying to detect if a basicblock is part of a loop or not. > > I tried the llvm::LoopInfo
2010 Jan 12
8
[LLVMdev] Make LoopBase inherit from "RegionBase"?
...gt; helps me on another, similar project I'm working on in parallel (no >> pun intended). >> Tobias, is this how you are architecting your region analysis already? >> >> John >> > > i just implementing the skeleton of Region/RegionInfo like LoopBase and > LoopInfoBase[1] in the llvm existing codes, and found that theres lots > of common between "Region" and "Loop": > > 1. both of them are consist of several BasicBlocks Correct. > 2. both of them have some kind of nested structures, so both a loop and > a region could have par...
2012 Apr 26
2
[LLVMdev] Detect if a basicblock is part of a loop
Hi, I'm trying to detect if a basicblock is part of a loop or not. I tried the llvm::LoopInfo like that (http://llvm.org/docs/doxygen/html/classllvm_1_1LoopInfo.html#a4abca289c73cd09487e05d11d9f7d877): LoopInfo *loop = new LoopInfo(); bool isLoop = loop->getLoopFor(myBB); // getLoopFor - Return the inner most loop that BB lives in. If a basic block is in no loop (for example the entry
2012 Mar 09
3
[LLVMdev] How to keep FunctionPass analysis result alive in Module Pass?
Thank you for your quick reply. Actually I am using a std::map to map Function* to LoopInfo*, but that does not help in this case. Each time I call getAnalysis<llvm::LoopInfo>(*F), it returns the same instance of llvm::LoopInfo, so the std::map is just mapping every function into the same instance. It seems only the analysis result for the last function is valid, because all the result for