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