search for: mustwriteaccess

Displaying 11 results from an estimated 11 matches for "mustwriteaccess".

2013 Aug 16
0
[LLVMdev] [Polly] Analysis of extra compile-time overhead for simple nested loops
On 08/16/2013 02:42 AM, Star Tan wrote: > At 2013-08-16 12:44:02,"Tobias Grosser" <tobias at grosser.es> wrote: >> Hi, >> >> I tried to reproduce your findings, but could not do so. > > > Sorry, I did not put all code in my previous email because the code seems a little too long and complicated. > You can refer to the detailed C code and LLVM IR
2013 Jul 29
0
[LLVMdev] [Polly] Analysis of the expensive compile-time overhead of Polly Dependence pass
On 07/29/2013 09:15 AM, Sven Verdoolaege wrote: > On Mon, Jul 29, 2013 at 07:37:14AM -0700, Tobias Grosser wrote: >> On 07/29/2013 03:18 AM, Sven Verdoolaege wrote: >>> On Sun, Jul 28, 2013 at 04:42:25PM -0700, Tobias Grosser wrote: >>>> Sven: In terms of making the behaviour of isl easier to understand, >>>> it may make sense to fail/assert in case
2013 Jul 31
1
[LLVMdev] [Polly] Analysis of the expensive compile-time overhead of Polly Dependence pass
...t;= 7 }; Scattering := [p_0, p_1, p_2] -> { Stmt_for_body6[i0] -> scattering[0, i0, 0] }; ReadAccess := [p_0, p_1, p_2] -> { Stmt_for_body6[i0] -> MemRef_input[o0] : 2o0 = p_0 + 16i0 }; ReadAccess := [p_0, p_1, p_2] -> { Stmt_for_body6[i0] -> MemRef_input[o0] : 2o0 = p_1 + 16i0 }; MustWriteAccess := [p_0, p_1, p_2] -> { Stmt_for_body6[i0] -> MemRef_input[o0] : 2o0 = p_0 + 16i0 }; MustWriteAccess := [p_0, p_1, p_2] -> { Stmt_for_body6[i0] -> MemRef_input[o0] : 2o0 = p_1 + 16i0 }; MustWriteAccess := [p_0, p_1, p_2] -> { Stmt_for_body6[i0] -> MemRef_input[o0] : 2o0 = p_2 + !...
2013 Aug 17
2
[LLVMdev] [Polly] Analysis of extra compile-time overhead for simple nested loops
...Scattering := [cond.reload] -> { Stmt_for_body16[i0, i1, i2, i3, i4, i5] -> scattering[0, i0, 0, i1, 0, i2, 0, i3, 0, i4, 0, i5, 0] }; ReadAccess := [cond.reload] -> { Stmt_for_body16[i0, i1, i2, i3, i4, i5] -> MemRef_X[0] }; MustWriteAccess := [cond.reload] -> { Stmt_for_body16[i0, i1, i2, i3, i4, i5] -> MemRef_X[0] }; } Similarly, the scops result for "X[0]=0" would be: $ polly-opt -basicaa -polly-prepare -polly-scops SingleAssign.preopt.ll -analyze (*Note: you can download SingleAssign.preop...
2013 Aug 16
2
[LLVMdev] [Polly] Analysis of extra compile-time overhead for simple nested loops
At 2013-08-16 12:44:02,"Tobias Grosser" <tobias at grosser.es> wrote: >Hi, > >I tried to reproduce your findings, but could not do so. Sorry, I did not put all code in my previous email because the code seems a little too long and complicated. You can refer to the detailed C code and LLVM IR code on http://llvm.org/bugs/show_bug.cgi?id=16843 There are four attachments
2013 Jul 26
6
[LLVMdev] [Polly] Analysis of the expensive compile-time overhead of Polly Dependence pass
Hi Sebastian, Recently, I found the "Polly - Calculate dependences" pass would lead to significant compile-time overhead when compiling some loop-intensive source code. Tobias told me you found similar problem as follows: http://llvm.org/bugs/show_bug.cgi?id=14240 My evaluation shows that "Polly - Calculate dependences" pass consumes 96.4% of total compile-time overhead
2013 Jul 28
0
[LLVMdev] [Polly] Analysis of the expensive compile-time overhead of Polly Dependence pass
...[0, i0, 0] }; > ReadAccess := > [p_0] -> { Stmt_for_body6[i0] -> MemRef_input[o0] : 2o0 = p_0 + 16i0 }; > ReadAccess := > [p_0] -> { Stmt_for_body6[i0] -> MemRef_input[o0] : 2o0 = 2 + p_0 + 16i0 }; > MustWriteAccess := > [p_0] -> { Stmt_for_body6[i0] -> MemRef_input[o0] : 2o0 = p_0 + 16i0 }; > MustWriteAccess := > [p_0] -> { Stmt_for_body6[i0] -> MemRef_input[o0] : 2o0 = 2 + p_0 + 16i0 }; > MustWriteAccess := >...
2015 Sep 23
4
Find loops in LLVM bytecode
Hi, I want to find simple loops in LLVM bytecode, and extract the basic information of the loop. For example: for (i=0; i<1000; i++) sum += i; I want to extract the bound [0, 1000), the loop variable "i" and the loop body (sum += i). What should I do? I read the LLVM API document, and find some useful classes like "Loop", "LoopInfo". But I do
2013 Aug 08
2
[LLVMdev] [Polly] Summary of some expensive compiler passes, especially PollyDependence
...x[ 0] ^= R(x[12]+x[ 8],18); .... x[14] ^= R(x[13]+x[12],13); x[15] ^= R(x[14]+x[13],18); } which would be translated into a serial of affine functions: ReadAccess := { Stmt_for_body5[i0] -> MemRef_x[12] }; ReadAccess := { Stmt_for_body5[i0] -> MemRef_x[4] }; MustWriteAccess := { Stmt_for_body5[i0] -> MemRef_x[4] }; ReadAccess := { Stmt_for_body5[i0] -> MemRef_x[0] }; ... Consequently, the PollyDependence pass would produce very complex Read/Write/MayWrite as follows: Read: { Stmt_for_body[i0] -> MemRef_in[i0] : i0 >= 0 and i0 <...
2013 Aug 08
0
[LLVMdev] [Polly] Summary of some expensive compiler passes, especially PollyDependence
.... > x[14] ^= R(x[13]+x[12],13); x[15] ^= R(x[14]+x[13],18); > } > which would be translated into a serial of affine functions: > ReadAccess := { Stmt_for_body5[i0] -> MemRef_x[12] }; > ReadAccess := { Stmt_for_body5[i0] -> MemRef_x[4] }; > MustWriteAccess := { Stmt_for_body5[i0] -> MemRef_x[4] }; > ReadAccess := { Stmt_for_body5[i0] -> MemRef_x[0] }; > ... > Consequently, the PollyDependence pass would produce very complex Read/Write/MayWrite as follows: > > > Read: { Stmt_for_body[i0] -> MemRef_...
2013 Aug 09
2
[LLVMdev] [Polly] Summary of some expensive compiler passes, especially PollyDependence
...R(x[13]+x[12],13);  x[15] ^= R(x[14]+x[13],18); >>    } >> which would be translated into a serial of affine functions: >>        ReadAccess :=    { Stmt_for_body5[i0] -> MemRef_x[12] }; >>        ReadAccess :=    { Stmt_for_body5[i0] -> MemRef_x[4] }; >>        MustWriteAccess :=    { Stmt_for_body5[i0] -> MemRef_x[4] }; >>        ReadAccess :=    { Stmt_for_body5[i0] -> MemRef_x[0] }; >>        ... >> Consequently, the PollyDependence pass would produce very complex Read/Write/MayWrite as follows: >> >> >>        Read: { Stmt_fo...