Skip to content

Commit 43f0692

Browse files
committed
Fix up runtime path issue with Extort notes.
1 parent 4deb630 commit 43f0692

File tree

1 file changed

+28
-33
lines changed

1 file changed

+28
-33
lines changed

www/notes/extort.scrbl

Lines changed: 28 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -266,20 +266,19 @@ check:
266266
(ex
267267
;; Produces (add1 v) if v is an integer value, #f otherwise
268268
(define (plus1 v) ;; Value -> Integer | Boolean
269-
(bits->value
270-
(asm-interp
271-
(prog (Global 'entry)
272-
(Label 'entry)
273-
(Mov 'rax (value->bits v))
274-
(Mov 'r9 'rax)
275-
(And 'r9 mask-int)
276-
(Cmp 'r9 type-int)
277-
(Jne 'err)
278-
(Add 'rax (value->bits 1))
279-
(Ret)
280-
(Label 'err)
281-
(Mov 'rax (value->bits #f))
282-
(Ret)))))
269+
(run
270+
(prog (Global 'entry)
271+
(Label 'entry)
272+
(Mov 'rax (value->bits v))
273+
(Mov 'r9 'rax)
274+
(And 'r9 mask-int)
275+
(Cmp 'r9 type-int)
276+
(Jne 'err)
277+
(Add 'rax (value->bits 1))
278+
(Ret)
279+
(Label 'err)
280+
(Mov 'rax (value->bits #f))
281+
(Ret))))
283282

284283
(plus1 0)
285284
(plus1 1)
@@ -297,8 +296,7 @@ error. The @racket[asm-interp] intercepts these calls are returns the
297296
@racket['err] symbol to match what the interpreter does:
298297

299298
@ex[
300-
(current-objs '("runtime.o"))
301-
(asm-interp
299+
(run
302300
(prog (Global 'entry)
303301
(Label 'entry)
304302
(Extern 'raise_error)
@@ -311,22 +309,19 @@ error:
311309
(ex
312310
;; Produces (add1 v) if v is an integer, 'err otherwise
313311
(define (plus1 v) ;; Value -> Integer | 'err
314-
(match
315-
(asm-interp
316-
(prog (Global 'entry)
317-
(Label 'entry)
318-
(Mov 'rax (value->bits v))
319-
(Mov 'r9 'rax)
320-
(And 'r9 mask-int)
321-
(Cmp 'r9 type-int)
322-
(Jne 'err)
323-
(Add 'rax (value->bits 1))
324-
(Ret)
325-
(Label 'err)
326-
(Extern 'raise_error)
327-
(Call 'raise_error)))
328-
['err 'err]
329-
[b (bits->value b)]))
312+
(run
313+
(prog (Global 'entry)
314+
(Label 'entry)
315+
(Mov 'rax (value->bits v))
316+
(Mov 'r9 'rax)
317+
(And 'r9 mask-int)
318+
(Cmp 'r9 type-int)
319+
(Jne 'err)
320+
(Add 'rax (value->bits 1))
321+
(Ret)
322+
(Label 'err)
323+
(Extern 'raise_error)
324+
(Call 'raise_error))))
330325

331326
(plus1 0)
332327
(plus1 1)
@@ -423,6 +418,6 @@ totality of the semantics:
423418
And again, we can randomly test the compiler by generating programs and inputs:
424419

425420
@ex[
426-
(require "random.rkt")
421+
(require extort/random)
427422
(for ((i 100))
428423
(check-compiler (random-expr) (random-input)))]

0 commit comments

Comments
 (0)