search for: loop_1

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

Did you mean: loop1
2012 Nov 30
2
[LLVMdev] [polly] scev codegen (first step to remove the dependence on ivcanon pass)
...code generated by either CLooG or ISL-codegen like this: Stmt_1(c1, c1+4, c1+c2); we will construct a map that maps the old iteration domain with 3 dimensions (there are 3 arguments in Stmt_1 representing the original loop nest in which Stmt_1 was located, let's call the original loop nest loop_1, loop_2, loop_3) to the new expressions generated by cloog that are function of the new iteration domain with 2 dimensions (c1 and c2 are the new induction variables of the code generated by cloog). So the content of that map is: loop_1 -> c1 loop_2 -> c1+7 loop_3 -> c1+c2 Given an acce...
2012 Dec 01
0
[LLVMdev] [polly] scev codegen (first step to remove the dependence on ivcanon pass)
...odegen like this: > > Stmt_1(c1, c1+4, c1+c2); > > we will construct a map that maps the old iteration domain with 3 > dimensions > (there are 3 arguments in Stmt_1 representing the original loop nest in > which > Stmt_1 was located, let's call the original loop nest loop_1, loop_2, > loop_3) to > the new expressions generated by cloog that are function of the new > iteration > domain with 2 dimensions (c1 and c2 are the new induction variables of > the code > generated by cloog). So the content of that map is: > > loop_1 -> c1 > loop_2...
2011 Aug 03
0
[LLVMdev] scalar evolution to determine access functions in arays
...calar evolution pass? Hi Alexandra, sorry for the delay, I was a little bit busy. In general your approach is correct, but scalar evolution is in your case not able to derive an access function that is defined in terms of loop iterators. (If it would you would have something like {0, + 1}<loop_1> in your scev expression). What I suspect is that you need to run some canonicalization passes before you actually run the scalar evolution pass. Most of the time these passes should be sufficient: -correlated-propagation -mem2reg -instcombine -loop-simplify -indvars But in Polly we use e.g....
2011 Jul 27
3
[LLVMdev] scalar evolution to determine access functions in arays
Hello, How can I compute the functions on the loop iterators used as array indices?  For example: for i = 0, N       for j = 0, M             A[2*i + j - 10] = ...  Can I obtain that this instruction A[2*i + j - 10]= .. always accesses memory using a function       f(i,j)   =   2*i + j - 10 + base_address_of_A If I run the scalar evolution pass on this code I obtain: %arrayidx =
2012 Dec 03
1
[LLVMdev] [polly] scev codegen (first step to remove the dependence on ivcanon pass)
Tobias Grosser wrote: > You create a map from the old_loop to a symbolic expression. What type would > this symbolic expression have? Would it be a SCEVExpr? evaluateAtIteration takes a scev, so apply will take a scev, or a map (loop->scev). You can always build a ScevUnknown from an SSA name and use that in the apply. > At the moment, we calculate at the beginning of each >
2008 Jun 13
4
Sweave: looping over mixed R/LaTeX code
...2 Iteration 3 \end{document} ################################################ Right now, I do have a working but painful solution. I put the loop contents in a separate loop.Rnw file, then: 1. run everything before the loop through R for initialization 2. Sweave loop.Rnw; shell("move loop.tex loop_1.tex") Sweave loop.Rnw; shell("move loop.tex loop_2.tex") ... Sweave loop.Rnw; shell("move loop.tex loop_n.tex") 3. \input all loop_i.tex files into master.Rnw and Sweave master.Rnw This does what I need, however, it is a major pain code-wise, e.g., there appears t...
2007 Sep 11
2
[LLVMdev] volatiles
...x = sink; } void and_4 (void) { t not_zero = ~0; t sink = x & not_zero; x = sink; } void and_5 (void) { volatile t not_zero = ~0; t sink = x & not_zero; x = sink; } void and_6 (void) { t not_zero = ~0; volatile t sink = x & not_zero; x = sink; } volatile t y; void loop_1 (void) { t i; t result = y; for (i=0; i<10; i++) { result += x; } y = result; } void loop_2 (void) { t i; for (i=0; i<10; i++) { x += 3; } } void loop_3 (void) { t i; volatile t z; for (i=0; i<10; i++) { z += 3; } } void loop_4 (t n) { t b; t res...
2011 Aug 03
2
[LLVMdev] scalar evolution to determine access functions in arays
...e scalar evolution pass? Hi Alexandra, sorry for the delay, I was a little bit busy. In general your approach is correct, but scalar evolution is in your case not able to derive an access function that is defined in terms of loop iterators. (If it would you would have something like {0, + 1}<loop_1> in your scev expression). What I suspect is that you need to run some canonicalization passes before you actually run the scalar evolution pass. Most of the time these passes should be sufficient: -correlated-propagation -mem2reg -instcombine -loop-simplify -indvars But in Polly we use e.g.:...