]> gitweb.factorcode.org Git - factor.git/blob - basis/compiler/tree/propagation/recursive/recursive-tests.factor
af2bdbda601215c3d67243212ce1807e84c72939
[factor.git] / basis / compiler / tree / propagation / recursive / recursive-tests.factor
1 USING: tools.test compiler.tree.propagation.recursive
2 math.intervals kernel math literals layouts ;
3 IN: compiler.tree.propagation.recursive.tests
4
5 [ T{ interval f { 0 t } { 1/0. t } } ] [
6     T{ interval f { 1 t } { 1 t } }
7     T{ interval f { 0 t } { 0 t } }
8     integer generalize-counter-interval
9 ] unit-test
10
11 [ T{ interval f { 0 t } { $[ max-array-capacity ] t } } ] [
12     T{ interval f { 1 t } { 1 t } }
13     T{ interval f { 0 t } { 0 t } }
14     fixnum generalize-counter-interval
15 ] unit-test
16
17 [ T{ interval f { -1/0. t } { 10 t } } ] [
18     T{ interval f { -1 t } { -1 t } }
19     T{ interval f { 10 t } { 10 t } }
20     integer generalize-counter-interval
21 ] unit-test
22
23 [ T{ interval f { $[ most-negative-fixnum ] t } { 10 t } } ] [
24     T{ interval f { -1 t } { -1 t } }
25     T{ interval f { 10 t } { 10 t } }
26     fixnum generalize-counter-interval
27 ] unit-test
28
29 [ t ] [
30     T{ interval f { -268435456 t } { 268435455 t } }
31     T{ interval f { 1 t } { 268435455 t } }
32     over
33     integer generalize-counter-interval =
34 ] unit-test
35
36 [ t ] [
37     T{ interval f { -268435456 t } { 268435455 t } }
38     T{ interval f { 1 t } { 268435455 t } }
39     over
40     fixnum generalize-counter-interval =
41 ] unit-test
42
43 [ full-interval ] [
44     T{ interval f { -5 t } { 3 t } }
45     T{ interval f { 2 t } { 11 t } }
46     integer generalize-counter-interval
47 ] unit-test
48
49 [ $[ fixnum-interval ] ] [
50     T{ interval f { -5 t } { 3 t } }
51     T{ interval f { 2 t } { 11 t } }
52     fixnum generalize-counter-interval
53 ] unit-test