Skip to content

Commit 0d60987

Browse files
committed
TestSort is back cc @namin
1 parent 3541995 commit 0d60987

File tree

4 files changed

+371
-17
lines changed

4 files changed

+371
-17
lines changed

test-out/epfl/test2-sort1-dot.check

Lines changed: 303 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,303 @@
1+
digraph G {
2+
rankdir=LR
3+
"Sym(8)" [
4+
label="Sym(8) \n Min(Sym(0),Sym(1))"
5+
shape=box
6+
]
7+
"Sym(0)" -> "Sym(8)"
8+
"Sym(1)" -> "Sym(8)"
9+
"Sym(10)" [
10+
label="Sym(10) \n Min(Sym(2),Sym(3))"
11+
shape=box
12+
]
13+
"Sym(2)" -> "Sym(10)"
14+
"Sym(3)" -> "Sym(10)"
15+
"Sym(12)" [
16+
label="Sym(12) \n Min(Sym(8),Sym(10))"
17+
shape=box
18+
]
19+
"Sym(8)" -> "Sym(12)"
20+
"Sym(10)" -> "Sym(12)"
21+
"Sym(9)" [
22+
label="Sym(9) \n Max(Sym(0),Sym(1))"
23+
shape=box
24+
]
25+
"Sym(0)" -> "Sym(9)"
26+
"Sym(1)" -> "Sym(9)"
27+
"Sym(11)" [
28+
label="Sym(11) \n Max(Sym(2),Sym(3))"
29+
shape=box
30+
]
31+
"Sym(2)" -> "Sym(11)"
32+
"Sym(3)" -> "Sym(11)"
33+
"Sym(14)" [
34+
label="Sym(14) \n Min(Sym(9),Sym(11))"
35+
shape=box
36+
]
37+
"Sym(9)" -> "Sym(14)"
38+
"Sym(11)" -> "Sym(14)"
39+
"Sym(16)" [
40+
label="Sym(16) \n Min(Sym(12),Sym(14))"
41+
shape=box
42+
]
43+
"Sym(12)" -> "Sym(16)"
44+
"Sym(14)" -> "Sym(16)"
45+
"Sym(20)" [
46+
label="Sym(20) \n Min(Sym(4),Sym(5))"
47+
shape=box
48+
]
49+
"Sym(4)" -> "Sym(20)"
50+
"Sym(5)" -> "Sym(20)"
51+
"Sym(22)" [
52+
label="Sym(22) \n Min(Sym(6),Sym(7))"
53+
shape=box
54+
]
55+
"Sym(6)" -> "Sym(22)"
56+
"Sym(7)" -> "Sym(22)"
57+
"Sym(24)" [
58+
label="Sym(24) \n Min(Sym(20),Sym(22))"
59+
shape=box
60+
]
61+
"Sym(20)" -> "Sym(24)"
62+
"Sym(22)" -> "Sym(24)"
63+
"Sym(21)" [
64+
label="Sym(21) \n Max(Sym(4),Sym(5))"
65+
shape=box
66+
]
67+
"Sym(4)" -> "Sym(21)"
68+
"Sym(5)" -> "Sym(21)"
69+
"Sym(23)" [
70+
label="Sym(23) \n Max(Sym(6),Sym(7))"
71+
shape=box
72+
]
73+
"Sym(6)" -> "Sym(23)"
74+
"Sym(7)" -> "Sym(23)"
75+
"Sym(26)" [
76+
label="Sym(26) \n Min(Sym(21),Sym(23))"
77+
shape=box
78+
]
79+
"Sym(21)" -> "Sym(26)"
80+
"Sym(23)" -> "Sym(26)"
81+
"Sym(28)" [
82+
label="Sym(28) \n Min(Sym(24),Sym(26))"
83+
shape=box
84+
]
85+
"Sym(24)" -> "Sym(28)"
86+
"Sym(26)" -> "Sym(28)"
87+
"Sym(32)" [
88+
label="Sym(32) \n Min(Sym(16),Sym(28))"
89+
shape=box
90+
]
91+
"Sym(16)" -> "Sym(32)"
92+
"Sym(28)" -> "Sym(32)"
93+
"Sym(13)" [
94+
label="Sym(13) \n Max(Sym(8),Sym(10))"
95+
shape=box
96+
]
97+
"Sym(8)" -> "Sym(13)"
98+
"Sym(10)" -> "Sym(13)"
99+
"Sym(15)" [
100+
label="Sym(15) \n Max(Sym(9),Sym(11))"
101+
shape=box
102+
]
103+
"Sym(9)" -> "Sym(15)"
104+
"Sym(11)" -> "Sym(15)"
105+
"Sym(18)" [
106+
label="Sym(18) \n Min(Sym(13),Sym(15))"
107+
shape=box
108+
]
109+
"Sym(13)" -> "Sym(18)"
110+
"Sym(15)" -> "Sym(18)"
111+
"Sym(25)" [
112+
label="Sym(25) \n Max(Sym(20),Sym(22))"
113+
shape=box
114+
]
115+
"Sym(20)" -> "Sym(25)"
116+
"Sym(22)" -> "Sym(25)"
117+
"Sym(27)" [
118+
label="Sym(27) \n Max(Sym(21),Sym(23))"
119+
shape=box
120+
]
121+
"Sym(21)" -> "Sym(27)"
122+
"Sym(23)" -> "Sym(27)"
123+
"Sym(30)" [
124+
label="Sym(30) \n Min(Sym(25),Sym(27))"
125+
shape=box
126+
]
127+
"Sym(25)" -> "Sym(30)"
128+
"Sym(27)" -> "Sym(30)"
129+
"Sym(34)" [
130+
label="Sym(34) \n Min(Sym(18),Sym(30))"
131+
shape=box
132+
]
133+
"Sym(18)" -> "Sym(34)"
134+
"Sym(30)" -> "Sym(34)"
135+
"Sym(36)" [
136+
label="Sym(36) \n Min(Sym(32),Sym(34))"
137+
shape=box
138+
]
139+
"Sym(32)" -> "Sym(36)"
140+
"Sym(34)" -> "Sym(36)"
141+
"Sym(17)" [
142+
label="Sym(17) \n Max(Sym(12),Sym(14))"
143+
shape=box
144+
]
145+
"Sym(12)" -> "Sym(17)"
146+
"Sym(14)" -> "Sym(17)"
147+
"Sym(29)" [
148+
label="Sym(29) \n Max(Sym(24),Sym(26))"
149+
shape=box
150+
]
151+
"Sym(24)" -> "Sym(29)"
152+
"Sym(26)" -> "Sym(29)"
153+
"Sym(40)" [
154+
label="Sym(40) \n Min(Sym(17),Sym(29))"
155+
shape=box
156+
]
157+
"Sym(17)" -> "Sym(40)"
158+
"Sym(29)" -> "Sym(40)"
159+
"Sym(19)" [
160+
label="Sym(19) \n Max(Sym(13),Sym(15))"
161+
shape=box
162+
]
163+
"Sym(13)" -> "Sym(19)"
164+
"Sym(15)" -> "Sym(19)"
165+
"Sym(31)" [
166+
label="Sym(31) \n Max(Sym(25),Sym(27))"
167+
shape=box
168+
]
169+
"Sym(25)" -> "Sym(31)"
170+
"Sym(27)" -> "Sym(31)"
171+
"Sym(42)" [
172+
label="Sym(42) \n Min(Sym(19),Sym(31))"
173+
shape=box
174+
]
175+
"Sym(19)" -> "Sym(42)"
176+
"Sym(31)" -> "Sym(42)"
177+
"Sym(44)" [
178+
label="Sym(44) \n Min(Sym(40),Sym(42))"
179+
shape=box
180+
]
181+
"Sym(40)" -> "Sym(44)"
182+
"Sym(42)" -> "Sym(44)"
183+
"Sym(48)" [
184+
label="Sym(48) \n Min(Sym(36),Sym(44))"
185+
shape=box
186+
]
187+
"Sym(36)" -> "Sym(48)"
188+
"Sym(44)" -> "Sym(48)"
189+
"Sym(49)" [
190+
label="Sym(49) \n Max(Sym(36),Sym(44))"
191+
shape=box
192+
]
193+
"Sym(36)" -> "Sym(49)"
194+
"Sym(44)" -> "Sym(49)"
195+
"Sym(37)" [
196+
label="Sym(37) \n Max(Sym(32),Sym(34))"
197+
shape=box
198+
]
199+
"Sym(32)" -> "Sym(37)"
200+
"Sym(34)" -> "Sym(37)"
201+
"Sym(45)" [
202+
label="Sym(45) \n Max(Sym(40),Sym(42))"
203+
shape=box
204+
]
205+
"Sym(40)" -> "Sym(45)"
206+
"Sym(42)" -> "Sym(45)"
207+
"Sym(50)" [
208+
label="Sym(50) \n Min(Sym(37),Sym(45))"
209+
shape=box
210+
]
211+
"Sym(37)" -> "Sym(50)"
212+
"Sym(45)" -> "Sym(50)"
213+
"Sym(51)" [
214+
label="Sym(51) \n Max(Sym(37),Sym(45))"
215+
shape=box
216+
]
217+
"Sym(37)" -> "Sym(51)"
218+
"Sym(45)" -> "Sym(51)"
219+
"Sym(33)" [
220+
label="Sym(33) \n Max(Sym(16),Sym(28))"
221+
shape=box
222+
]
223+
"Sym(16)" -> "Sym(33)"
224+
"Sym(28)" -> "Sym(33)"
225+
"Sym(35)" [
226+
label="Sym(35) \n Max(Sym(18),Sym(30))"
227+
shape=box
228+
]
229+
"Sym(18)" -> "Sym(35)"
230+
"Sym(30)" -> "Sym(35)"
231+
"Sym(38)" [
232+
label="Sym(38) \n Min(Sym(33),Sym(35))"
233+
shape=box
234+
]
235+
"Sym(33)" -> "Sym(38)"
236+
"Sym(35)" -> "Sym(38)"
237+
"Sym(41)" [
238+
label="Sym(41) \n Max(Sym(17),Sym(29))"
239+
shape=box
240+
]
241+
"Sym(17)" -> "Sym(41)"
242+
"Sym(29)" -> "Sym(41)"
243+
"Sym(43)" [
244+
label="Sym(43) \n Max(Sym(19),Sym(31))"
245+
shape=box
246+
]
247+
"Sym(19)" -> "Sym(43)"
248+
"Sym(31)" -> "Sym(43)"
249+
"Sym(46)" [
250+
label="Sym(46) \n Min(Sym(41),Sym(43))"
251+
shape=box
252+
]
253+
"Sym(41)" -> "Sym(46)"
254+
"Sym(43)" -> "Sym(46)"
255+
"Sym(52)" [
256+
label="Sym(52) \n Min(Sym(38),Sym(46))"
257+
shape=box
258+
]
259+
"Sym(38)" -> "Sym(52)"
260+
"Sym(46)" -> "Sym(52)"
261+
"Sym(53)" [
262+
label="Sym(53) \n Max(Sym(38),Sym(46))"
263+
shape=box
264+
]
265+
"Sym(38)" -> "Sym(53)"
266+
"Sym(46)" -> "Sym(53)"
267+
"Sym(39)" [
268+
label="Sym(39) \n Max(Sym(33),Sym(35))"
269+
shape=box
270+
]
271+
"Sym(33)" -> "Sym(39)"
272+
"Sym(35)" -> "Sym(39)"
273+
"Sym(47)" [
274+
label="Sym(47) \n Max(Sym(41),Sym(43))"
275+
shape=box
276+
]
277+
"Sym(41)" -> "Sym(47)"
278+
"Sym(43)" -> "Sym(47)"
279+
"Sym(54)" [
280+
label="Sym(54) \n Min(Sym(39),Sym(47))"
281+
shape=box
282+
]
283+
"Sym(39)" -> "Sym(54)"
284+
"Sym(47)" -> "Sym(54)"
285+
"Sym(55)" [
286+
label="Sym(55) \n Max(Sym(39),Sym(47))"
287+
shape=box
288+
]
289+
"Sym(39)" -> "Sym(55)"
290+
"Sym(47)" -> "Sym(55)"
291+
"Sym(56)" [
292+
label="Sym(56) \n Result(List(Sym(48), Sym(49), Sym(50), Sym(51), Sym(52), Sym(53), Sym(54), Sym(55)))"
293+
shape=box
294+
]
295+
"Sym(48)" -> "Sym(56)"
296+
"Sym(49)" -> "Sym(56)"
297+
"Sym(50)" -> "Sym(56)"
298+
"Sym(51)" -> "Sym(56)"
299+
"Sym(52)" -> "Sym(56)"
300+
"Sym(53)" -> "Sym(56)"
301+
"Sym(54)" -> "Sym(56)"
302+
"Sym(55)" -> "Sym(56)"
303+
}

test-out/epfl/test2-sort1.check

Lines changed: 49 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,49 @@
1+
TP(Sym(8),Min(Sym(0),Sym(1)))
2+
TP(Sym(9),Max(Sym(0),Sym(1)))
3+
TP(Sym(10),Min(Sym(2),Sym(3)))
4+
TP(Sym(11),Max(Sym(2),Sym(3)))
5+
TP(Sym(12),Min(Sym(8),Sym(10)))
6+
TP(Sym(13),Max(Sym(8),Sym(10)))
7+
TP(Sym(14),Min(Sym(9),Sym(11)))
8+
TP(Sym(15),Max(Sym(9),Sym(11)))
9+
TP(Sym(16),Min(Sym(12),Sym(14)))
10+
TP(Sym(17),Max(Sym(12),Sym(14)))
11+
TP(Sym(18),Min(Sym(13),Sym(15)))
12+
TP(Sym(19),Max(Sym(13),Sym(15)))
13+
TP(Sym(20),Min(Sym(4),Sym(5)))
14+
TP(Sym(21),Max(Sym(4),Sym(5)))
15+
TP(Sym(22),Min(Sym(6),Sym(7)))
16+
TP(Sym(23),Max(Sym(6),Sym(7)))
17+
TP(Sym(24),Min(Sym(20),Sym(22)))
18+
TP(Sym(25),Max(Sym(20),Sym(22)))
19+
TP(Sym(26),Min(Sym(21),Sym(23)))
20+
TP(Sym(27),Max(Sym(21),Sym(23)))
21+
TP(Sym(28),Min(Sym(24),Sym(26)))
22+
TP(Sym(29),Max(Sym(24),Sym(26)))
23+
TP(Sym(30),Min(Sym(25),Sym(27)))
24+
TP(Sym(31),Max(Sym(25),Sym(27)))
25+
TP(Sym(32),Min(Sym(16),Sym(28)))
26+
TP(Sym(33),Max(Sym(16),Sym(28)))
27+
TP(Sym(34),Min(Sym(18),Sym(30)))
28+
TP(Sym(35),Max(Sym(18),Sym(30)))
29+
TP(Sym(36),Min(Sym(32),Sym(34)))
30+
TP(Sym(37),Max(Sym(32),Sym(34)))
31+
TP(Sym(38),Min(Sym(33),Sym(35)))
32+
TP(Sym(39),Max(Sym(33),Sym(35)))
33+
TP(Sym(40),Min(Sym(17),Sym(29)))
34+
TP(Sym(41),Max(Sym(17),Sym(29)))
35+
TP(Sym(42),Min(Sym(19),Sym(31)))
36+
TP(Sym(43),Max(Sym(19),Sym(31)))
37+
TP(Sym(44),Min(Sym(40),Sym(42)))
38+
TP(Sym(45),Max(Sym(40),Sym(42)))
39+
TP(Sym(46),Min(Sym(41),Sym(43)))
40+
TP(Sym(47),Max(Sym(41),Sym(43)))
41+
TP(Sym(48),Min(Sym(36),Sym(44)))
42+
TP(Sym(49),Max(Sym(36),Sym(44)))
43+
TP(Sym(50),Min(Sym(37),Sym(45)))
44+
TP(Sym(51),Max(Sym(37),Sym(45)))
45+
TP(Sym(52),Min(Sym(38),Sym(46)))
46+
TP(Sym(53),Max(Sym(38),Sym(46)))
47+
TP(Sym(54),Min(Sym(39),Sym(47)))
48+
TP(Sym(55),Max(Sym(39),Sym(47)))
49+
List(Sym(48), Sym(49), Sym(50), Sym(51), Sym(52), Sym(53), Sym(54), Sym(55))

test-src/epfl/test1-arith/Relat.scala

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import common._
66

77
trait Relat extends Base {
88

9-
implicit def unit(x: Double): Rep[Double]
109

1110
/*
1211
implicit def doubleRepRelat(x: Rep[Double]) = new {
@@ -41,7 +40,7 @@ trait RelatExp extends Relat with BaseExp {
4140
def max(x: Rep[Double], y: Rep[Double]) = Max(x,y)
4241
}
4342

44-
trait RelatExpOpt extends RelatExp {
43+
trait RelatExpOpt extends RelatExp with LiftAll {
4544

4645
override def min(x: Rep[Double], y: Rep[Double]) = (x,y) match {
4746
case (Const(x), Const(y)) => math.min(x,y)

0 commit comments

Comments
 (0)