summaryrefslogtreecommitdiff
path: root/omegalib/examples/syr2k
blob: 29cdf4e1a7ecbb7c7a104e4c3e87688cd6020369 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# This example of code generation comes from
#   "Access Normalization: Loop Restructuring for NUMA Compilers"
#    by Wei Li and Keshav Pingali
#    Cornell Tech. report TR 92-1278

symbolic n,b;

IS10 := {[i,j,k] : 1 <= i <= j <= n && j <= i+2b-2
        && i-b+1,j-b+1,1 <= k <= i+b-1,j+b-1,n};
T10 := {[i,j,k] -> [j-i+1,k-j,k]};

known := {[*,*,*] : 1 <= b <= n};

codegen T10:IS10;
codegen T10:IS10 given known;
codegen T10:IS10;
codegen T10:IS10 given known;