]> gitweb.factorcode.org Git - factor.git/blob - basis/compiler/cfg/parallel-copy/parallel-copy-tests.factor
Temporarily build with LTO to collect performance data
[factor.git] / basis / compiler / cfg / parallel-copy / parallel-copy-tests.factor
1 USING: compiler.cfg.parallel-copy tools.test arrays
2 compiler.cfg.registers namespaces compiler.cfg.instructions
3 cpu.architecture ;
4 IN: compiler.cfg.parallel-copy.tests
5
6 SYMBOL: temp
7
8 : test-parallel-copy ( mapping -- seq )
9     3 vreg-counter set-global parallel-copy ;
10
11 {
12     { }
13 } [
14     H{ } test-parallel-copy
15 ] unit-test
16
17 {
18     {
19         T{ ##copy f 4 2 any-rep }
20         T{ ##copy f 2 1 any-rep }
21         T{ ##copy f 1 4 any-rep }
22     }
23 } [
24     H{
25         { 1 2 }
26         { 2 1 }
27     } test-parallel-copy
28 ] unit-test
29
30 {
31     {
32         T{ ##copy f 1 2 any-rep }
33         T{ ##copy f 3 4 any-rep }
34     }
35 } [
36     H{
37         { 1 2 }
38         { 3 4 }
39     } test-parallel-copy
40 ] unit-test
41
42 {
43     {
44         T{ ##copy f 1 3 any-rep }
45         T{ ##copy f 2 1 any-rep }
46     }
47 } [
48     H{
49         { 1 3 }
50         { 2 3 }
51     } test-parallel-copy
52 ] unit-test
53
54 {
55     {
56         T{ ##copy f 4 3 any-rep }
57         T{ ##copy f 3 2 any-rep }
58         T{ ##copy f 2 1 any-rep }
59         T{ ##copy f 1 4 any-rep }
60     }
61 } [
62     {
63         { 2 1 }
64         { 3 2 }
65         { 1 3 }
66         { 4 3 }
67     } test-parallel-copy
68 ] unit-test