Mercurial > repos > rhope
comparison testc.rhope @ 18:ea991f95ae1f
C backend working well enough to generate Fib test
author | Mike Pavone <pavone@retrodev.com> |
---|---|
date | Wed, 27 May 2009 04:49:32 -0400 |
parents | 69dfca29565f |
children | 90c20dc3f4e5 |
comparison
equal
deleted
inserted
replaced
17:d05184970c1c | 18:ea991f95ae1f |
---|---|
13 | 13 |
14 stream1 <- [[[base]Instruction Stream | 14 stream1 <- [[[base]Instruction Stream |
15 ]Release[Result[0]] | 15 ]Release[Result[0]] |
16 ]Move[AddRef[Constant["const_1"]], "out"] | 16 ]Move[AddRef[Constant["const_1"]], "out"] |
17 {Print["stream1 done"]} | 17 {Print["stream1 done"]} |
18 | |
19 stream3 <- [[[base]Instruction Stream | |
20 ]Release["n"] | |
21 ]Tail Method Call["+", ("work1","work2")] | |
18 | 22 |
19 stream2 <- [[[[[[base]Instruction Stream | 23 stream2 <- [[[[[[[[[[[base]Instruction Stream |
20 ]Release[Result[0]] | 24 ]Release[Result[0]] |
21 ]Method Call["-", [[()]Append[AddRef["n"]]]Append[AddRef[Constant["const_1"]]]] | 25 ]Method Call["-", [[()]Append[AddRef["n"]]]Append[AddRef[Constant["const_1"]]]] |
22 ]Move[Result[0], "work1"] | 26 ]Move[Result[0], "work1"] |
23 ]Method Call["-", [[()]Append[AddRef["n"]]]Append[AddRef[Constant["const_2"]]]] | 27 ]Method Call["-", [[()]Append[AddRef["n"]]]Append[AddRef[Constant["const_2"]]]] |
24 ]Move[Result[0], "work2"] | 28 ]Move[Result[0], "work2"] |
29 ]Call["Fib", ("work1")] | |
30 ]Move[Result[0], "work1"] | |
31 ]Call["Fib", ("work2")] | |
32 ]Move[Result[0], "work2"] | |
33 ]Do If[NotCond["out"], stream3] | |
25 {Print["stream2 done"]} | 34 {Print["stream2 done"]} |
26 | 35 |
27 func <- [[base | 36 func <- [[[base |
28 ]Do If[Result[0], stream1] | 37 ]Do If[Result[0], stream1] |
29 ]Do If[Result[1], stream2] | 38 ]Do If[Result[1], stream2] |
39 ]Release["n"] | |
30 {Print["func done"] } | 40 {Print["func done"] } |
31 | 41 |
32 Print[[func]Definitions] | 42 Print[[func]Definitions] |
33 { | 43 { |
34 Print[[func]Text] } | 44 Print[[func]Text] } |