search for: getcandidatepairs

Displaying 8 results from an estimated 8 matches for "getcandidatepairs".

2011 Dec 20
2
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
Hi, I see that there are two functions in your code that are O(n^2) in number of instructions of the program: getCandidatePairs and buildDepMap. I think that you could make these two functions faster if you work on some form of factored def-use chains for memory, like the VUSE/VDEFs of GCC. I was trying to find a similar representation in LLVM: isn't there already a virtual SSA representation for memory references in...
2011 Dec 20
0
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
On Tue, 2011-12-20 at 13:57 -0600, Sebastian Pop wrote: > Hi, > > I see that there are two functions in your code that are O(n^2) in > number of instructions of the program: getCandidatePairs and > buildDepMap. I think that you could make these two functions faster > if you work on some form of factored def-use chains for memory, like > the VUSE/VDEFs of GCC. Thanks for the comment! I am not aware of anything along these lines, although it would be quite helpful. The pass spe...
2011 Dec 02
1
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...of view I am not yet completely convinced the >> algorithm itself is not worse than N^2. I really want to understand this >> part better and plan to look into problematic behaviour in functions not >> directly visible in the core routines. > > Here are my thoughts: > > getCandidatePairs - This is O(N^2) in the number of instructions in BB. > [This assumes that all of the external helper functions, especially > queries to alias and scalar-evolution analysis don't make the complexity > worse]. Yes. Alias analysis and scalar-evolution are queries that may not be fast e...
2011 Dec 02
0
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...> On the algorithmic point of view I am not yet completely convinced the > algorithm itself is not worse than N^2. I really want to understand this > part better and plan to look into problematic behaviour in functions not > directly visible in the core routines. Here are my thoughts: getCandidatePairs - This is O(N^2) in the number of instructions in BB. [This assumes that all of the external helper functions, especially queries to alias and scalar-evolution analysis don't make the complexity worse]. computeConnectedPairs - For each candidate pair, there are O(N^2) in the worse case, this l...
2011 Dec 02
5
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...d::pair<std::multimap<ValuePair, ValuePair>::iterator, > + std::multimap<ValuePair, ValuePair>::iterator> > + VPPIteratorPair; > + > + // FIXME: const correct? > + > + bool vectorizePairs(BasicBlock&BB); > + > + void getCandidatePairs(BasicBlock&BB, > + std::multimap<Value *, Value *> &CandidatePairs, > + std::vector<Value *> &PairableInsts); > + > + vojd computeConnectedPairs(std::multimap<Value *, Value *> &CandidatePairs, > +...
2011 Dec 14
0
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
...aluePair>::iterator, > > + std::multimap<ValuePair, ValuePair>::iterator> > > + VPPIteratorPair; > > + > > + // FIXME: const correct? > > + > > + bool vectorizePairs(BasicBlock&BB); > > + > > + void getCandidatePairs(BasicBlock&BB, > > + std::multimap<Value *, Value *> &CandidatePairs, > > + std::vector<Value *> &PairableInsts); > > + > > + vojd computeConnectedPairs(std::multimap<Value *, Value *> &Candi...
2011 Nov 23
0
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
On Mon, 2011-11-21 at 21:22 -0600, Hal Finkel wrote: > On Mon, 2011-11-21 at 11:55 -0600, Hal Finkel wrote: > > Tobias, > > > > I've attached an updated patch. It contains a few bug fixes and many > > (refactoring and coding-convention) changes inspired by your comments. > > > > I'm currently trying to fix the bug responsible for causing a compile
2011 Nov 22
5
[LLVMdev] [llvm-commits] [PATCH] BasicBlock Autovectorization Pass
On Mon, 2011-11-21 at 11:55 -0600, Hal Finkel wrote: > Tobias, > > I've attached an updated patch. It contains a few bug fixes and many > (refactoring and coding-convention) changes inspired by your comments. > > I'm currently trying to fix the bug responsible for causing a compile > failure when compiling >