Skip to content
Snippets Groups Projects
Commit 723055bb authored by toy's avatar toy
Browse files

Update to sparc gencgc so that alloc-tn holds the

current-region-free-pointer.

Cross compile may be needed, but I'm not sure.  I only used
cross-compiling to do this change.

sparc/macros.lisp:
o Update the allocation macro appropriately for alloc-tn holding the
  current-region-free-pointer.

lisp/gencgc.c:
o Define macros for setting and getting *current-region-free-oointer*
  and *current-region-end-addr* so sparc can use alloc-tn.
  *current-region-free-pointer* isn't used anymore, but is still a
  static symbol.  It's been replaced by alloc-tn.
o On sparc, set_alloc_pointer doesn't need to do anything anymore.
o Don't need to call update_dynamic_space_free_pointer anymore.
o The assertion that *current-region-free-pointer* is a fixnum is no
  longer valid on sparc because that is alloc-tn which contains the
  pseudo-atomic bits.

lisp/sparc-arch.c:
o The allocation trap instruction is now preceeded by a SUB
  instruction.  Handle that correctly.  Keep support for the OR
  instruction for now, but should be removed.
o Set alloc-tn from current_dynamic_space_free_pointer.
parent 7cbaa2fa
No related branches found
No related tags found
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment