alt-vm-package-defs.scm 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. ; Copyright (c) 1993-2008 by Richard Kelsey and Jonathan Rees. See file COPYING.
  2. ; These are used to compile the GC separately from the VM. It has new
  3. ; definitions of the VM structures that the GC uses, with all of the values
  4. ; defined as externals. We only need to define those values that the GC
  5. ; actually uses.
  6. (define-structure interpreter-gc interpreter-gc-interface
  7. (open prescheme)
  8. (begin
  9. (define s48-gc-root
  10. (external "s48_gc_root" (=> () null)))
  11. (define s48-post-gc-cleanup
  12. (external "s48_post_gc_cleanup" (=> (boolean boolean) null)))))
  13. (define-structure symbols (export s48-symbol-table)
  14. (open prescheme)
  15. (begin
  16. (define s48-symbol-table
  17. (external "s48_symbol_table" (=> () integer)))))
  18. (define-structure vmio (export s48-channels s48-channel-count)
  19. (open prescheme)
  20. (begin
  21. (define s48-channels
  22. (external "s48_channels" (=> () (^ integer))))
  23. (define s48-channel-count
  24. (external "s48_channel_count" (=> () integer)))))
  25. (define-structure shared-bindings-access shared-bindings-access-interface
  26. (open prescheme)
  27. (begin
  28. (define s48-imported-bindings
  29. (external "s48_imported_bindings" (=> () integer)))
  30. (define s48-exported-bindings
  31. (external "s48_exported_bindings" (=> () integer)))))