Displaying 5 results from an estimated 5 matches for "stmt_for_body5".
Did you mean:
stmt_for_body6
2013 Aug 08
2
[LLVMdev] [Polly] Summary of some expensive compiler passes, especially PollyDependence
...> 0;i -= 2) {
x[ 4] ^= R(x[ 0]+x[12], 7); x[ 8] ^= R(x[ 4]+x[ 0], 9);
x[12] ^= R(x[ 8]+x[ 4],13); 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 compl...
2013 Aug 08
0
[LLVMdev] [Polly] Summary of some expensive compiler passes, especially PollyDependence
...0]+x[12], 7); x[ 8] ^= R(x[ 4]+x[ 0], 9);
> x[12] ^= R(x[ 8]+x[ 4],13); 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...
2013 Aug 09
2
[LLVMdev] [Polly] Summary of some expensive compiler passes, especially PollyDependence
...R(x[ 4]+x[ 0], 9);
>> x[12] ^= R(x[ 8]+x[ 4],13); 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,...
2016 Aug 03
3
Extracting the names of the variables that creates loop-carried dependencies
...L; j++)
{
a_matrix[i][j] = a_matrix[i][j - 1];
}
}
I get the following AST:
#pragma omp parallel for
for (int c0 = 0; c0 <= 31; c0 += 1)
#pragma minimal dependence distance: 1
for (int c1 = 0; c1 <= 30; c1 += 1)
Stmt_for_body5(c0, c1);
As expected the second loop has a dependence distance of 1. Then, here
is when I would like to know if
it possible to extract the name of the variable (a_matrix) e.g. by
developing a custom LLVM pass, based on
Polly passes.
Thanks,
Miguel
2016 Aug 05
0
Extracting the names of the variables that creates loop-carried dependencies
...t;>> I get the following AST:
>>>
>>> #pragma omp parallel for
>>> for (int c0 = 0; c0 <= 31; c0 += 1)
>>> #pragma minimal dependence distance: 1
>>> for (int c1 = 0; c1 <= 30; c1 += 1)
>>> Stmt_for_body5(c0, c1);
>>>
>>> As expected the second loop has a dependence distance of 1. Then, here is
>>> when I would like to know if
>>> it possible to extract the name of the variable (a_matrix) e.g. by
>>> developing a custom LLVM pass, based on
>>> Po...