pet_expr: merge unary, binary and ternary types into operation type
[pet.git] / tests / mod2.scop
blob062b3f10132ec889c1d9e2a97fe6f299b5bcd7bd
1 start: 38
2 end: 127
3 context: '[N] -> {  : N >= 0 and N <= 2147483647 }'
4 arrays:
5 - context: '[N] -> {  : N >= 0 }'
6   extent: '[N] -> { a[i0] : i0 <= -1 + N and i0 >= 0 }'
7   element_type: int
8   element_size: 4
9 statements:
10 - line: 9
11   domain: '[N] -> { S_0[i] : exists (e0 = floor((i)/2): 2e0 = i and i <= -1 + N and
12     i >= 0) }'
13   schedule: '[N] -> { S_0[i] -> [0, i] }'
14   body:
15     type: op
16     operation: =
17     arguments:
18     - type: access
19       relation: '[N] -> { S_0[i] -> a[i] }'
20       index: '[N] -> { S_0[i] -> a[(i)] }'
21       reference: __pet_ref_0
22       read: 0
23       write: 1
24     - type: op
25       operation: '%'
26       arguments:
27       - type: access
28         relation: '[N] -> { S_0[i] -> [i] }'
29         index: '[N] -> { S_0[i] -> [(i)] }'
30         reference: __pet_ref_1
31         read: 1
32         write: 0
33       - type: int
34         value: 3