diff options
author | Andy Wingo <wingo@pobox.com> | 2013-08-24 12:38:02 +0200 |
---|---|---|
committer | Andy Wingo <wingo@pobox.com> | 2013-08-24 15:41:09 +0200 |
commit | c96933fd544aaf14776a1fc3a2986afc6fecb00c (patch) | |
tree | 681be00d565ce7de3812e87c3d61eb75de4f7eaf | |
parent | e063995db80e843ef664a90eff58ebc13fbdb2e8 (diff) | |
download | guile-c96933fd544aaf14776a1fc3a2986afc6fecb00c.tar.gz |
Export the assembler procedures
* module/system/vm/assembler.scm (define-assembler):
(define-macro-assembler): Export the assemblers.
-rw-r--r-- | module/system/vm/assembler.scm | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/module/system/vm/assembler.scm b/module/system/vm/assembler.scm index b2d917d90..9c267fe52 100644 --- a/module/system/vm/assembler.scm +++ b/module/system/vm/assembler.scm @@ -440,10 +440,12 @@ later by the linker." (syntax-case x () ((_ name opcode kind arg ...) (with-syntax ((emit (id-append #'name #'emit- #'name))) - #'(define emit - (let ((emit (assembler name opcode arg ...))) - (hashq-set! assemblers 'name emit) - emit))))))) + #'(begin + (define emit + (let ((emit (assembler name opcode arg ...))) + (hashq-set! assemblers 'name emit) + emit)) + (export emit))))))) (define-syntax visit-opcodes (lambda (x) @@ -601,10 +603,12 @@ returned instead." (syntax-case x () ((_ (name arg ...) body body* ...) (with-syntax ((emit (id-append #'name #'emit- #'name))) - #'(define emit - (let ((emit (lambda (arg ...) body body* ...))) - (hashq-set! assemblers 'name emit) - emit))))))) + #'(begin + (define emit + (let ((emit (lambda (arg ...) body body* ...))) + (hashq-set! assemblers 'name emit) + emit)) + (export emit))))))) (define-macro-assembler (load-constant asm dst obj) (cond |