extract_affine_from_call: extract out is_affine_builtin
[pet.git] / tests / data_dependent2.scop
blob0a957c6b41c4df6f30e0d750d4c84003b531a7ea
1 start: 59
2 end: 206
3 indent: "\t"
4 context: '{  :  }'
5 schedule: '{ domain: "{ S_0[]; S_3[i, j] : i >= 0 and i <= 9 and j >= 0 and j <= 9;
6   S_2[i, j] : i >= 0 and i <= 9 and j >= 0 and j <= 9; S_1[i] : i >= 0 and i <= 9
7   }", child: { sequence: [ { filter: "{ S_0[] }" }, { filter: "{ S_3[i, j]; S_2[i,
8   j]; S_1[i] }", child: { schedule: "L_0[{ S_1[i] -> [(i)]; S_3[i, j] -> [(i)]; S_2[i,
9   j] -> [(i)] }]", child: { sequence: [ { filter: "{ S_1[i] }" }, { filter: "{ S_3[i,
10   j]; S_2[i, j] }", child: { schedule: "L_1[{ S_3[i, j] -> [(j)]; S_2[i, j] -> [(j)]
11   }]", child: { sequence: [ { filter: "{ S_2[i, j] }" }, { filter: "{ S_3[i, j] }"
12   } ] } } } ] } } } ] } }'
13 arrays:
14 - context: '{  :  }'
15   extent: '{ __pet_test_0[i] : i >= 0 and i <= 9 }'
16   value_bounds: '{ [i0] : i0 >= 0 and i0 <= 1 }'
17   element_type: int
18   element_size: 4
19   uniquely_defined: 1
20 - context: '{  :  }'
21   extent: '{ N[] }'
22   element_type: int
23   element_size: 4
24 - context: '{  :  }'
25   extent: '{ a[i0] : i0 >= 0 and i0 <= 9 }'
26   element_type: int
27   element_size: 4
28 statements:
29 - line: 10
30   domain: '{ S_0[] }'
31   body:
32     type: expression
33     expr:
34       type: op
35       operation: =
36       arguments:
37       - type: access
38         index: '{ S_0[] -> N[] }'
39         reference: __pet_ref_0
40         read: 0
41         write: 1
42       - type: int
43         value: 5
44 - line: 12
45   domain: '{ S_1[i] : i >= 0 and i <= 9 }'
46   body:
47     type: expression
48     expr:
49       type: op
50       operation: =
51       arguments:
52       - type: access
53         index: '{ S_1[i] -> __pet_test_0[(i)] }'
54         reference: __pet_ref_1
55         read: 0
56         write: 1
57       - type: op
58         operation: <=
59         arguments:
60         - type: access
61           index: '{ S_1[i] -> N[] }'
62           reference: __pet_ref_2
63           read: 1
64           write: 0
65         - type: int
66           value: 4
67 - line: 14
68   domain: '{ [S_2[i, j] -> [1]] : i >= 0 and i <= 9 and j >= 0 and j <= 9 }'
69   body:
70     type: expression
71     expr:
72       type: op
73       operation: =
74       arguments:
75       - type: access
76         index: '{ S_2[i, j] -> a[(j)] }'
77         reference: __pet_ref_4
78         read: 0
79         write: 1
80       - type: op
81         operation: +
82         arguments:
83         - type: op
84           operation: +
85           arguments:
86           - type: int
87             value: 5
88           - type: access
89             index: '{ S_2[i, j] -> [(j)] }'
90             reference: __pet_ref_5
91             read: 1
92             write: 0
93         - type: access
94           index: '{ S_2[i, j] -> N[] }'
95           reference: __pet_ref_6
96           read: 1
97           write: 0
98   arguments:
99   - type: access
100     index: '{ S_2[i, j] -> __pet_test_0[(i)] }'
101     reference: __pet_ref_3
102     read: 1
103     write: 0
104 - line: 15
105   domain: '{ [S_3[i, j] -> [1]] : i >= 0 and i <= 9 and j >= 0 and j <= 9 }'
106   body:
107     type: expression
108     expr:
109       type: op
110       operation: =
111       arguments:
112       - type: access
113         index: '{ S_3[i, j] -> N[] }'
114         reference: __pet_ref_8
115         read: 0
116         write: 1
117       - type: call
118         name: f
119   arguments:
120   - type: access
121     index: '{ S_3[i, j] -> __pet_test_0[(i)] }'
122     reference: __pet_ref_7
123     read: 1
124     write: 0