aboutsummaryrefslogtreecommitdiff
path: root/src/main/stanza/passes.stanza
diff options
context:
space:
mode:
authorjackbackrack2015-04-18 13:23:16 -0700
committerjackbackrack2015-04-18 13:23:16 -0700
commit5298af3dffcd0985922a2a8317fa6a67e192a9c0 (patch)
treeed5762e8d0d474e4c8716ab0fa9a09f322257d60 /src/main/stanza/passes.stanza
parent130c6676418e85d5d4dd12a0f0845e912eda8c3e (diff)
change to have flo file go to a file
Diffstat (limited to 'src/main/stanza/passes.stanza')
-rw-r--r--src/main/stanza/passes.stanza17
1 files changed, 8 insertions, 9 deletions
diff --git a/src/main/stanza/passes.stanza b/src/main/stanza/passes.stanza
index 24867612..30898ae6 100644
--- a/src/main/stanza/passes.stanza
+++ b/src/main/stanza/passes.stanza
@@ -1963,8 +1963,14 @@ public defn emit-flo (o:OutputStream, c:Circuit) :
emit-module(o, modules(c)[0])
c
+public defn emit-flo (pathname:String, c:Circuit) :
+ val out = FileOutputStream(pathname)
+ emit-flo(out, c)
+ close(out)
+ c
+
;============= DRIVER ======================================
-public defn run-passes (c: Circuit, p: List<Char>) :
+public defn run-passes (c: Circuit, p: List<Char>, pathname:String) :
var c*:Circuit = c
println("Compiling!")
if PRINT-CIRCUITS : println("Original Circuit")
@@ -1992,12 +1998,5 @@ public defn run-passes (c: Circuit, p: List<Char>) :
if contains(p,'l') : do-stage("Inline Instances", inline-instances)
if contains(p,'m') : do-stage("Split Expressions", split-exp)
if contains(p,'n') : do-stage("Real IR", to-real-ir)
- if contains(p,'o') : do-stage("To Flo", emit-flo{STANDARD-OUTPUT,_})
+ if contains(p,'o') : do-stage("To Flo", emit-flo{pathname,_})
println("Done!")
-
-
- ;; println("Shim for Jonathan's Passes")
- ;; c* = shim(c*)
- ;; println("Inline Modules")
- ;; c* = inline-modules(c*)
- ; c*