search for: subloop

Displaying 20 results from an estimated 20 matches for "subloop".

Did you mean: subloops
2011 Jan 27
1
subloop - flexible coding - variable number of loops
Hello, I want to create a flexible code for the following example: In stead of using a different code for each n (as in my example below), I want to write a general code for every n (n from 1 to 10). I tried a lot of things, but I always got stuck with the number of subloops or witch closing the brackets. Any suggestions? Cheers, Peter Department of Mathematics and Statistics University of Canterbury New Zealand n <-2 matrixallo <- matrix(nrow=0,ncol=n) for(i in 1:20) { for (j in 1:20) { if (i+j == 20)...
2011 Jun 15
2
[LLVMdev] get LPPassManager to use it in llvm::CloneLoop
Thanks , your suggestion was welcome and CloneLoop works without passing the LPPassManager. However, I reached another problem. When the loop to be cloned has some subloops, the subloops are not properly cloned. Some clones of the clones are created and the CFG between the cloned basic blocks of the subloops is not correctly built. There are clones like for.body.clone, for.body.clone1, for.body.clone2, ... for.body.clone26 without any predecessor and for....
2007 Dec 11
2
[LLVMdev] LoopInfo Question
Hi, If I do a loop over the basic blocks in a LoopInfo object, is it going to loop over the basic blocks of the loop AND the subloops of the loop or just the BBs of the loop itself? Thanks! -bw
2011 Jun 15
0
[LLVMdev] get LPPassManager to use it in llvm::CloneLoop
On Wed, Jun 15, 2011 at 3:20 AM, Jimborean Alexandra <xinfinity_a at yahoo.com> wrote: > Thanks , your suggestion was welcome and CloneLoop works without passing the > LPPassManager. > >  However, I reached another problem. When the loop to be cloned has some > subloops, the subloops are not properly cloned. Some clones of the clones > are created and the CFG between the cloned basic blocks of the subloops is > not correctly built. There are clones like for.body.clone,  for.body.clone1, >  for.body.clone2, ...  for.body.clone26 without any predecessor an...
2012 Jun 15
0
argument "x" is missing, with no default - Please help find argument x
...epos, falsepos , falseneg, trueneg), verbose=F) # Calculate the overall accuracy. cv.evaluate$correct <- cv.evaluate$prediction == cv.evaluate$remitter mymean<-mean(cv.evaluate$correct) retlist<-data.frame(mtry, sumvar$se, sumvar$sp, mean(cv.evaluate$correct)) return(retlist) } subloop<- function(mtry=mtry, ml.frame=ml.frame, ntrees=ntrees) { nfolds<- 10 # shuffle the numbers and divide into 10 groups numberOfRows<-dim(ml.frame)[1] lengthOfDiv<-numberOfRows/nfolds shuffled<-sample(c(1:numberOfRows), numberOfRows, replace=F) rownumber<-split(shuffled,...
2011 May 09
0
[LLVMdev] get LPPassManager to use it in llvm::CloneLoop
On Mon, May 9, 2011 at 1:06 AM, Jimborean Alexandra <xinfinity_a at yahoo.com> wrote: > Hi, > > I try to write a FunctionPass that, among other tasks, has to clone some > loops from the current function. > How can I obtain the LPPassManager in order to use the CloneLoop function. > In a LoopPass this is a parameter for the runOnLoop, but how can I obtain it > in a
2011 May 09
2
[LLVMdev] get LPPassManager to use it in llvm::CloneLoop
Hi, I try to write a FunctionPass that, among other tasks, has to clone some loops from the current function. How can I obtain the LPPassManager in order to use the CloneLoop function. In a LoopPass this is a parameter for the runOnLoop, but how can I obtain it in a FunctionPass? I tried simply by creating a new instance : ValueMap<const Value *, Value* > VMap;
2008 May 09
0
[LLVMdev] [PATCH] Split LoopUnroll pass into mechanism and policy
...unrollLoop, it is done a bit later. However, AFAICS, none of the code (getTripCount, code size estimation) actually depends on this check, so it shouldn't change anything in the end. Lastly, the (original comments) say "This pass will multi-block loops only if they contain no non-unrolled subloops". I can't really find what this is supposed to mean, in particular I can't find any explicit check for subloops anywhere. Anyone know what this means? I've also tried to minimize the includes required in both cpp files, seems like there were quite some unused ones present. The n...
2004 Aug 05
2
[LLVMdev] How to get LoopInfo within Pass subclass?
...do stuff... for (Module::iterator I = M.begin(), E = M.end(); I != E; ++I){ if(! I->isExternal()) visitFunction(*I); } // ... return false; } virtual void visitFunction(Function &F){ LoopInfo *LI = &getAnalysis<LoopInfo>(); std::vector<Loop*> SubLoops(LI->begin(), LI->end()); for(unsigned i = 0, e = SubLoops.size(); i != e; ++i){ // visit SubLoops[i]; } } So, I add LoopInfo as a required analysis: virtual void getAnalysisUsage(AnalysisUsage &AU) const { AU.setPreservesAll(); AU.addRequired<LoopInfo>...
2010 Apr 20
1
[LLVMdev] iterate over loops inside the runOnFunction
Hello I'm wandring to write a Function parser that iterates over loops inside each function and inside each loop iterates over instructions So I found a way to do the Function parser that iterates over BasicBlocks (using the runOnfunction Pass) but I no know how make it iterates over loops ? So my question is there any way to make a loop inside the runOnfunction to iterate over
2009 Aug 22
3
Help on comparing two matrices
...matrices. 4. Repeat steps 2 and 3 with both of the created matrices (now taking the second row for sorting), repeat until all fragments consist of a single column. 5. Compose the columns to a sorted matrix. This algorithm has several problems: 1. How to make a loop that is branching out in two subloops on each iteration? 2. How to organize the intermediate results and compose them without losing the order? Maybe save them in lists and sublists? 3. A fundamental problem: If there are rows with equal sums the result may depend on which of them is sorted after first. Maybe this algorithm won...
2008 May 09
3
[LLVMdev] [PATCH] Split LoopUnroll pass into mechanism and policy
...gt; none of the > code (getTripCount, code size estimation) actually depends on this > check, so it > shouldn't change anything in the end. Ok. > > > Lastly, the (original comments) say "This pass will multi-block > loops only if they > contain no non-unrolled subloops". I can't really find what this is > supposed to > mean, in particular I can't find any explicit check for subloops > anywhere. > Anyone know what this means? I don't. > > I've also tried to minimize the includes required in both cpp files, > seems...
2008 May 07
8
[LLVMdev] [PATCH] Split LoopUnroll pass into mechanism and policy
Hello Matthijs, Separating mechanism from policy is a good thing for the LoopUnroll pass. Instead of moving the policy to a subclass though, I think it'd be better to move the mechanism, the unrollLoop function, out to be a standalone utility function, with the LoopInfo object passed in explicitly. FoldBlockIntoPredecessor would also be good to make into a standalone utility function, since
2011 Nov 16
0
[LLVMdev] CallSite in innermost loop
On Nov 16, 2011, at 2:43 AM, Pankaj Gode wrote: > In order to detect whether CallSite is present in innermost loop, do I need to insert logic from LoopInfo pass for collecting loops, within a CallGraphSCC pass? > > Is there any other approach for this? > PassManager not only schedules passes, it also - manages memory - ensures that analysis info is valid at the point of use -
2011 Nov 16
2
[LLVMdev] CallSite in innermost loop
In order to detect whether CallSite is present in innermost loop, do I need to insert logic from LoopInfo pass for collecting loops, within a CallGraphSCC pass?   Is there any other approach for this?   Regards, Pankaj -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20111116/cd9d51b7/attachment.html>
2008 May 09
0
[LLVMdev] [PATCH] Split LoopUnroll pass into mechanism and policy
...l for this purpose. If a LoopPassManager > object is provided and the loop is completely unrolled, the > loop is removed from the LoopPassManager. Sounds fine. > > Lastly, the (original comments) say "This pass will multi-block loops > > only if they contain no non-unrolled subloops". i Anyone know what this > > means? > I don't. Then I'll just remove the comment, it's only confusing :-) > This should say (>= 2^32). Obviously. > > + // Guard against huge trip counts. This also guards against > > assertions in > > +...
2016 Feb 10
2
LoopIdiomRegognize vs Preserved
Hi, On 02/10/2016 01:23 AM, haicheng at codeaurora.org wrote: > Thank you, Mikael. I can reproduce what you saw and am looking into it. Great! > Just curious, why do you run loop-deletion before licm and loop-idiom? As part of our internal testing we use Csmith to generate C-programs and then we run the compiler with random generated compiler flags on that input. This bug was
2018 Jul 31
2
[RFC][SVE] Supporting SIMD instruction sets with variable vector lengths
...a function, then we have no way to introduce a dependence, or barrier, at the point where the change is made. Transformations, GVN/PRE/etc. for example, can move code around the place where the change is made and I suspect that we'll have no good options to prevent it (this could include whole subloops, although we might not do that today). In some sense, if you make vscale dynamic, you've introduced dependent types into LLVM's type system, but you've done it in an implicit manner. It's not clear to me that works. If we need dependent types, then an explicit dependence seems bett...
2018 Jul 31
3
[RFC][SVE] Supporting SIMD instruction sets with variable vector lengths
On 31 July 2018 at 21:10, David A. Greene via llvm-dev <llvm-dev at lists.llvm.org> wrote: > Renato Golin via llvm-dev <llvm-dev at lists.llvm.org> writes: > >> Hi David, >> >> Let me put the last two comments up: >> >>> > But we're trying to represent slightly different techniques >>> > (predication, vscale change) which need
2014 Jun 18
2
[LLVMdev] PM: High-level review of the new Pass Manager (so far)
Hi Chandler, This is a high-level review of the new WIP `PassManager` infrastructure. For those that haven't dug into Chandler's commits, here's a very high-level overview (assuming IIUC): - The driver supports simple declarative syntax for specifying passes to run. E.g., `module(a,b,function(c,d),e)` runs module passes `a` and `b`, then function passes `c` and `d` for