A set of benchmarks to compare a new prototype MiniZinc implementation
1predicate output_this(array [int] of var int: arr);
2@@@@@@@@@@
3:output_this:ROOT 1
4:f_fib_i:FUN 1
5IMMI 1 R1
6LEI R0 R1 R2
7JMPIF R2 l7
8SUBI R0 R1 R2
9CALL FUN f_fib_i 0 R2
10POP R3
11SUBI R2 R1 R2
12CALL FUN f_fib_i 0 R2
13POP R2
14ADDI R2 R3 R0
15l7: PUSH R0
16RET
17:main:ROOT 0
18OPEN_AGGREGATION OTHER
19 IMMI 1 R0
20 IMMI 1000 R1
21 IMMI 23 R2
22 ITER_RANGE R0 R1 l2
23 l1: ITER_NEXT R3
24 CALL FUN f_fib_i 0 R2
25 POP R3
26 JMP l1
27 l2: OPEN_AGGREGATION VEC
28 PUSH R3
29 CLOSE_AGGREGATION
30 POP R3
31 CALL ROOT output_this 1 R3
32 CLEAR R0 R3
33 RET