Proper skew transformation
[clay.git] / tests / unitary / skew_loop3.c.orig.scop
blobaefa43ac9475dae0c489c3e9751334b513fa956a
1 #                                                     
2 #          <|                                         
3 #           A                                         
4 #          /.\                                       
5 #     <|  [""M#                                     
6 #      A   | #            Clan McCloog Castle         
7 #     /.\ [""M#           [Generated by Clan 0.8.0]
8 #    [""M# | #  U"U#U                              
9 #     | #  | #  \ .:/                                
10 #     | #  | #___| #                                  
11 #     | "--'     .-"                                
12 #   |"-"-"-"-"-#-#-##                            
13 #   |     # ## ######                                 
14 #    \       .::::'/                                 
15 #     \      ::::'/                                  
16 #   :8a|    # # ##                                    
17 #   ::88a      ###                                    
18 #  ::::888a  8a ##::.                                 
19 #  ::::::888a88a[]::::                                
20 # :::::::::SUNDOGa8a::::. ..                          
21 # :::::8::::888:Y8888:::::::::...                     
22 #::':::88::::888::Y88a______________________________________________________
23 #:: ::::88a::::88a:Y88a                                  __---__-- __
24 #' .: ::Y88a:::::8a:Y88a                            __----_-- -------_-__
25 #  :' ::::8P::::::::::88aa.                   _ _- --  --_ --- __  --- __--
26 #.::  :::::::::::::::::::Y88as88a...s88aa.
28 # [File generated by the OpenScop Library 0.9.0]
30 <OpenScop>
32 # =============================================== Global
33 # Language
36 # Context
37 CONTEXT
38 0 4 0 0 0 2
40 # Parameters are provided
42 <strings>
43 N M
44 </strings>
46 # Number of statements
49 # =============================================== Statement 1
50 # Number of relations describing the statement:
53 # ----------------------------------------------  1.1 Domain
54 DOMAIN
55 6 6 2 0 0 2
56 # e/i|  i    j |  N    M |  1  
57    1    1    0    0    0    0    ## i >= 0
58    1   -1    0    1    0    0    ## -i+N >= 0
59    1    0    0    1    0    0    ## N >= 0
60    1    0    1    0    0    0    ## j >= 0
61    1    0   -1    0    1    0    ## -j+M >= 0
62    1    0    0    0    1    0    ## M >= 0
64 # ----------------------------------------------  1.2 Scattering
65 SCATTERING
66 5 11 5 2 0 2
67 # e/i| c1   c2   c3   c4   c5 |  i    j |  N    M |  1  
68    0   -1    0    0    0    0    0    0    0    0    0    ## c1 == 0
69    0    0   -1    0    0    0    1    0    0    0    0    ## c2 == i
70    0    0    0   -1    0    0    0    0    0    0    0    ## c3 == 0
71    0    0    0    0   -1    0    0    1    0    0    0    ## c4 == j
72    0    0    0    0    0   -1    0    0    0    0    0    ## c5 == 0
74 # ----------------------------------------------  1.3 Access
75 WRITE
76 3 9 3 2 0 2
77 # e/i| Arr  [1]  [2]|  i    j |  N    M |  1  
78    0   -1    0    0    0    0    0    0    5    ## Arr == A
79    0    0   -1    0    1    0    0    0    0    ## [1] == i
80    0    0    0   -1    0    1    0    0    0    ## [2] == j
82 # ----------------------------------------------  1.4 Statement Extensions
83 # Number of Statement Extensions
85 <body>
86 # Number of original iterators
88 # List of original iterators
89 i j
90 # Statement body expression
91 A[i][j] = 0;
92 </body>
94 # =============================================== Statement 2
95 # Number of relations describing the statement:
98 # ----------------------------------------------  2.1 Domain
99 DOMAIN
100 3 5 1 0 0 2
101 # e/i|  i |  N    M |  1  
102    1    1    0    0    0    ## i >= 0
103    1   -1    1    0    0    ## -i+N >= 0
104    1    0    1    0    0    ## N >= 0
106 # ----------------------------------------------  2.2 Scattering
107 SCATTERING
108 3 8 3 1 0 2
109 # e/i| c1   c2   c3 |  i |  N    M |  1  
110    0   -1    0    0    0    0    0    0    ## c1 == 0
111    0    0   -1    0    1    0    0    0    ## c2 == i
112    0    0    0   -1    0    0    0    1    ## c3 == 1
114 # ----------------------------------------------  2.3 Access
115 WRITE
116 2 7 2 1 0 2
117 # e/i| Arr  [1]|  i |  N    M |  1  
118    0   -1    0    0    0    0    6    ## Arr == B
119    0    0   -1    1    0    0    0    ## [1] == i
121 # ----------------------------------------------  2.4 Statement Extensions
122 # Number of Statement Extensions
124 <body>
125 # Number of original iterators
127 # List of original iterators
129 # Statement body expression
130 B[i] = 0;
131 </body>
133 # =============================================== Extensions
134 <scatnames>
135 b0 i b1 j b2
136 </scatnames>
138 <arrays>
139 # Number of arrays
141 # Mapping array-identifiers/array-names
142 1 i
143 2 N
144 3 j
145 4 M
146 5 A
147 6 B
148 </arrays>
150 <coordinates>
151 # File name
152 unitary/skew_loop3.c
153 # Starting line and column
154 2 0
155 # Ending line and column
156 11 0
157 # Indentation
159 </coordinates>
161 <clay>
162    skew([0,0],1,-1);
163  </clay>
165 </OpenScop>