adding a debugprint statement in the il to make it easier for me to trace what's happening
This commit is contained in:
parent
2c3c6d0e0e
commit
01f2bc7566
|
@ -129,6 +129,8 @@ EOF
|
|||
(assemble-label (make-Label (LinkedLabel-label stmt)))
|
||||
(assemble-label (make-Label (LinkedLabel-linked-to stmt))))
|
||||
(next)]
|
||||
[(DebugPrint? stmt)
|
||||
(next)]
|
||||
[(AssignImmediateStatement? stmt)
|
||||
(next)]
|
||||
[(AssignPrimOpStatement? stmt)
|
||||
|
@ -177,6 +179,8 @@ EOF
|
|||
(format "~a" stmt))
|
||||
"")
|
||||
(cond
|
||||
[(DebugPrint? stmt)
|
||||
(format "MACHINE.params.currentOutputPort.write(~a);" (assemble-oparg (DebugPrint-value stmt)))]
|
||||
[(AssignImmediateStatement? stmt)
|
||||
(let: ([t : String (assemble-target (AssignImmediateStatement-target stmt))]
|
||||
[v : OpArg (AssignImmediateStatement-value stmt)])
|
||||
|
|
|
@ -34,6 +34,8 @@
|
|||
[(LinkedLabel? stmt)
|
||||
(list (LinkedLabel-label stmt)
|
||||
(LinkedLabel-linked-to stmt))]
|
||||
[(DebugPrint? stmt)
|
||||
empty]
|
||||
[(AssignImmediateStatement? stmt)
|
||||
(let: ([v : OpArg (AssignImmediateStatement-value stmt)])
|
||||
(collect-input v))]
|
||||
|
|
|
@ -120,7 +120,14 @@
|
|||
PushControlFrame/Call
|
||||
PushControlFrame/Prompt
|
||||
|
||||
PopControlFrame))
|
||||
PopControlFrame
|
||||
|
||||
DebugPrint))
|
||||
|
||||
|
||||
;; Debug print statement.
|
||||
(define-struct: DebugPrint ([value : OpArg])
|
||||
#:transparent)
|
||||
|
||||
|
||||
(define-type Statement (U UnlabeledStatement
|
||||
|
|
|
@ -62,6 +62,9 @@
|
|||
[(LinkedLabel? stmt)
|
||||
#f]
|
||||
|
||||
[(DebugPrint? stmt)
|
||||
#f]
|
||||
|
||||
[(AssignImmediateStatement? stmt)
|
||||
(equal? (AssignImmediateStatement-target stmt)
|
||||
(AssignImmediateStatement-value stmt))]
|
||||
|
|
|
@ -96,6 +96,10 @@
|
|||
'ok]
|
||||
[(LinkedLabel? i)
|
||||
'ok]
|
||||
[(DebugPrint? i)
|
||||
;; Hack: just to monitor evaluation.
|
||||
(displayln (evaluate-oparg m (DebugPrint-value i)))
|
||||
'ok]
|
||||
[(AssignImmediateStatement? i)
|
||||
(step-assign-immediate! m i)]
|
||||
[(AssignPrimOpStatement? i)
|
||||
|
|
Loading…
Reference in New Issue
Block a user