pet_expr: merge unary, binary and ternary types into operation type
[pet.git] / tests / forward_substitution1.scop
blobb00c90b9c8b3160521e6f62bb6bfd3b203cd1eb6
1 start: 31
2 end: 95
3 context: '{  :  }'
4 arrays:
5 - context: '{  :  }'
6   extent: '{ a[i0] : i0 >= 0 and i0 <= 9 }'
7   element_type: int
8   element_size: 4
9 - context: '{  :  }'
10   extent: '{ b[] }'
11   element_type: int
12   element_size: 4
13 - context: '{  :  }'
14   extent: '{ c[] }'
15   element_type: int
16   element_size: 4
17 statements:
18 - line: 5
19   domain: '{ S_0[] }'
20   schedule: '{ S_0[] -> [0] }'
21   body:
22     type: op
23     operation: =
24     arguments:
25     - type: access
26       relation: '{ S_0[] -> b[] }'
27       index: '{ S_0[] -> b[] }'
28       reference: __pet_ref_0
29       read: 0
30       write: 1
31     - type: int
32       value: 1
33 - line: 6
34   domain: '{ S_1[] }'
35   schedule: '{ S_1[] -> [1] }'
36   body:
37     type: op
38     operation: =
39     arguments:
40     - type: access
41       relation: '{ S_1[] -> c[] }'
42       index: '{ S_1[] -> c[] }'
43       reference: __pet_ref_1
44       read: 0
45       write: 1
46     - type: access
47       relation: '{ S_1[] -> b[] }'
48       index: '{ S_1[] -> b[] }'
49       reference: __pet_ref_2
50       read: 1
51       write: 0
52 - line: 7
53   domain: '{ S_2[] }'
54   schedule: '{ S_2[] -> [2] }'
55   body:
56     type: op
57     operation: =
58     arguments:
59     - type: access
60       relation: '{ S_2[] -> b[] }'
61       index: '{ S_2[] -> b[] }'
62       reference: __pet_ref_3
63       read: 0
64       write: 1
65     - type: int
66       value: 2
67 - line: 8
68   domain: '{ S_3[] }'
69   schedule: '{ S_3[] -> [3] }'
70   body:
71     type: op
72     operation: =
73     arguments:
74     - type: access
75       relation: '{ S_3[] -> a[1] }'
76       index: '{ S_3[] -> a[(1)] }'
77       reference: __pet_ref_4
78       read: 0
79       write: 1
80     - type: int
81       value: 5