search for: intervalpartit

Displaying 20 results from an estimated 25 matches for "intervalpartit".

2008 Aug 27
2
[LLVMdev] IntervalPartition and Intervals per function
Hi, I wrote a Function pass that requires the IntervalPartition pass in order to obtain the set of intervals for every function: virtual void getAnalysisUsage(AnalysisUsage &AU) const { AU.addRequired<IntervalPartition>(); } and get a handle to it in the runOnFunction method of my CustomPass: bool CustomPass::runOnFunction(Function& F) {...
2008 Aug 27
0
[LLVMdev] IntervalPartition and Intervals per function
On Aug 27, 2008, at 1:35 PM, Prakash Prabhu wrote: > Hi, > > I wrote a Function pass that requires the IntervalPartition pass in > order to obtain the set of intervals for every function: > > However when i access the intervals vector for a particular call of > runOnFunction, it seems that alll intervals computed for the earlier > functions are still in the > vector. To verify this, I added some...
2005 May 04
1
[LLVMdev] IntervalPartition bug?
...s not easy to tell which 1-st order invervals are contained in > > a given 2-nd order interval. > > That does seem strange. If you would like to change/refactor this code, > feel free. Okay. I've done first round of refactoring and currently writing some code of mine that uses IntervalPartition which should uncover any remaining issues. When done, I'll submit a patch. Probably I should describe the approach I taken. The problem with current Interval class is that it contains vector<BasicBlock*> and that Successor/Predecessor lists also point to basic block. That make it r...
2008 Aug 27
2
[LLVMdev] IntervalPartition and Intervals per function
...efinition of a Region in the second edition of the Dragon Book (Section 9.7 on Region-Based Analysis), so it will be great if the Intervals related code still lives on in LLVM :). I found a fix for the bug, which may not be very elegant, but works none the less. Firstly, the destroy() method in IntervalPartition.cpp did not clear the Intervals vector and secondly, since destroy() is only called from the destructor the state of the intervals is maintained across different runOnFunction() calls. So now I clear the Intervals vector in destroy() and call destroy() to start on a clean state before doing the...
2005 Apr 30
0
[LLVMdev] IntervalPartition bug?
On Fri, 29 Apr 2005, Vladimir Prus wrote: > it looks like the IntervalPartition does not work as expected when constructed > from another interval partition. > > Say, I have built an interval partition from function, and the first interval > has two basic blocks. When I create second order partition and print all > intervals, the second basic block of the fun...
2008 Aug 28
0
[LLVMdev] IntervalPartition and Intervals per function
...he second edition of the Dragon Book (Section 9.7 on > Region-Based Analysis), so it will be great if the Intervals related > code still lives on in LLVM :). Ok :) > I found a fix for the bug, which may not be very elegant, but works > none the less. Firstly, the destroy() method in IntervalPartition.cpp > did not clear the Intervals vector and secondly, Applied! http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20080825/066480.html > since destroy() is > only called from the destructor the state of the intervals is > maintained across different runOnFunction() calls....
2008 Aug 28
1
[LLVMdev] IntervalPartition and Intervals per function
...on Book (Section 9.7 on >> Region-Based Analysis), so it will be great if the Intervals related >> code still lives on in LLVM :). > > Ok :) > >> I found a fix for the bug, which may not be very elegant, but works >> none the less. Firstly, the destroy() method in IntervalPartition.cpp >> did not clear the Intervals vector and secondly, > > Applied! > http://lists.cs.uiuc.edu/pipermail/llvm-commits/Week-of-Mon-20080825/066480.html > >> since destroy() is >> only called from the destructor the state of the intervals is >> maintained acros...
2005 Apr 29
2
[LLVMdev] IntervalPartition bug?
Hi, it looks like the IntervalPartition does not work as expected when constructed from another interval partition. Say, I have built an interval partition from function, and the first interval has two basic blocks. When I create second order partition and print all intervals, the second basic block of the function is not seen any...
2012 Feb 04
1
[LLVMdev] How can I see what opt tries to delete at the end of a pass?
...nitialised value(s) ==16471== at 0xEA56580: llvm::IntervalIterator<llvm::BasicBlock, llvm::Function, llvm::GraphTraits<llvm::BasicBlock*>, llvm::GraphTraits<llvm::Inverse<llvm::BasicBlock*> > >::~IntervalIterator() (IntervalIterator.h:137) ==16471== by 0xEA5549E: llvm::IntervalPartition::runOnFunction(llvm::Function&) (IntervalPartition.cpp:71) ==16471== by 0xF04F976: llvm::FPPassManager::runOnFunction(llvm::Function&) (PassManager.cpp:1483) ==16471== by 0xF04FB30: llvm::FPPassManager::runOnModule(llvm::Module&) (PassManager.cpp:1503) ==16471== by 0xF04FE1B...
2012 Feb 03
0
[LLVMdev] How can I see what opt tries to delete at the end of a pass?
On Fri, Feb 3, 2012 at 1:20 PM, Griffin Wright <grwright at umich.edu> wrote: > > Hello, > > I've been stuck with a problem for about a month, and it has stumped > everyone in my lab.  I have a function pass that runs, and when it finishes > and opt goes to return, I get: > > While deleting: void % > An asserting value handle still pointed to this value! >
2005 Apr 20
0
[LLVMdev] "Refactoring" Basic Blocks into a new function
...lp me out here. I want to locate the Interval that begins with the call to the "magic" begin(), and ends with the call to the "magic" end(), if it exists. If there is no such valid interval, then I want to detect that and return an error. Can I make this happen by using the IntervalPartition pass? It looks like LLVM has some functionality that I could use *some where.* I just can't quite figure out how to make use of it. Thanks, Evan Jones
2012 Feb 03
3
[LLVMdev] How can I see what opt tries to delete at the end of a pass?
Hello, I've been stuck with a problem for about a month, and it has stumped everyone in my lab. I have a function pass that runs, and when it finishes and opt goes to return, I get: While deleting: void % An asserting value handle still pointed to this value! UNREACHABLE executed at /x/grwright/llvm/llvm-2.9/lib/VMCore/Value.cpp:569! On a simple test case, the error becomes 'i32 %'
2007 Mar 12
1
[LLVMdev] Structural Analysis
Is there structural analysis as described in Advanced compiler design & implementation(Muchnick) in LLVM now? I only find interval analysis in IntervalPartition.cpp now. -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20070312/5b6ea365/attachment.html>
2005 Apr 20
4
[LLVMdev] "Refactoring" Basic Blocks into a new function
I have two very specific questions about LLVM, but first let me give you the general overview of what I am trying to achieve. I have some section of a function that I want to replace with a function call to a brand new function. For example, I want to take the following function: function foo: code A <--- CUT code B <--- CUT code C and (approximately) convert it into: function foo:
2004 Sep 03
4
[LLVMdev] diffs for vc7.1
...9; : is not a member of '_STL' llvm\lib\Transforms\Scalar\LowerSwitch.cpp(211) : error C2039: 'sort' : is not a member of '_STL' llvm\lib\Analysis\BasicAliasAnalysis.cpp(700) : error C2039: 'sort' : is not a member of '_STL' llvm\lib\Analysis\IntervalPartition.cpp(29) : error C3861: 'for_each': identifier not found, even with argument-dependent lookup llvm\lib\Analysis\LoadValueNumbering.cpp(184) : error C2039: 'sort' : is not a member of '_STL' llvm\lib\Analysis\ScalarEvolution.cpp(362) : error C2039: 'sort'...
2003 Nov 13
4
[LLVMdev] llvm 1.0, g++, SuSE 9, internal compiler error
> > - gcc bug > > - problem with SuSE distribution > > One of these two. In theory GCC should never crash (even if the LLVM > sources had problems), and since SuSE made modifications to the compiler > before they shipped it, they implicitly took responsibility for the end > result. I agree. > You can try sending a bug report to SuSE. hm, sending bug report is
2005 Apr 20
3
[LLVMdev] "Refactoring" Basic Blocks into a new function
...ant to locate the Interval that begins with the call to > the "magic" begin(), and ends with the call to the "magic" end(), if > it exists. If there is no such valid interval, then I want to detect > that and return an error. Can I make this happen by using the > IntervalPartition pass? It looks like LLVM has some functionality that > I could use *some where.* I just can't quite figure out how to make > use of it. Ah ha! I figured out the succ_begin() and pred_begin() functions. This looks like it *might* be a better way to do things. At the very least, I c...
2005 Apr 22
0
[LLVMdev] tabs
...ude/llvm/Config/alloca.h Index: include/llvm/Support/Annotation.h Index: include/llvm/Target/MRegisterInfo.h Index: include/llvm/Target/TargetFrameInfo.h Index: include/llvm/Target/TargetInstrInfo.h Index: include/llvm/Target/TargetSchedInfo.h Index: lib/Analysis/Expressions.cpp Index: lib/Analysis/IntervalPartition.cpp Index: lib/Analysis/LoopInfo.cpp Index: lib/Analysis/PostDominators.cpp Index: lib/Analysis/DataStructure/EquivClassGraphs.cpp Index: lib/Analysis/IPA/FindUsedTypes.cpp Index: lib/Analysis/IPA/GlobalsModRef.cpp Index: lib/Bytecode/Writer/SlotCalculator.cpp Index: lib/CodeGen/PHIElimination.c...
2004 Dec 03
0
[LLVMdev] [Fwd: Updated LLVM Visual Studio project files]
...gt; > RelativePath="..\..\lib\Analysis\InstCount.cpp"> > > </File> > > <File > > RelativePath="..\..\lib\Analysis\Interval.cpp"> > > </File> > > <File > > RelativePath="..\..\lib\Analysis\IntervalPartition.cpp"> > > </File> > > <File > > RelativePath="..\..\lib\Analysis\LoadValueNumbering.cpp"> > > </File> > > <File > > RelativePath="..\..\lib\Analysis\LoopInfo.cpp"> > > </File&g...
2004 Dec 03
2
[LLVMdev] [Fwd: Updated LLVM Visual Studio project files]
...</File> > <File > RelativePath="..\..\lib\Analysis\InstCount.cpp"> > </File> > <File > RelativePath="..\..\lib\Analysis\Interval.cpp"> > </File> > <File > RelativePath="..\..\lib\Analysis\IntervalPartition.cpp"> > </File> > <File > RelativePath="..\..\lib\Analysis\LoadValueNumbering.cpp"> > </File> > <File > RelativePath="..\..\lib\Analysis\LoopInfo.cpp"> > </File> > <File > Relati...