Use a dedicated shared node list instead of finalizers for references from host to interpreter

John has added hooks to the garbage collectors, we can implement a custom finalizer list with 3-word instead of 5-word nodes.

These hooks are available on linux x64 only for now, see the email of John on October 23 and https://gitlab.science.ru.nl/clean-compiler-and-rts/run-time-system/commit/b93191ae54ffa389543198b7a5ba27846ffb779a:

Ik heb garbage collector hooks toegevoegd (en gecommit) aan het runtime systeem voor 64 bit linux. Om ze te kunnen gebruiken moet je in make_astartup.csh (en de trace en profile varianten) --defsym GC_HOOKS=1 toevoegen bij het aanroepen van de assembler.

De hooks zijn:

gc_hook_before_copy
gc_hook_after_copy

gc_hook_before_mark
gc_hook_before_mark_prefetch
gc_hook_after_mark

gc_hook_before_compact
gc_hook_between_mark_and_compact
gc_hook_after_compact

gc_hook_after_call_finalizers

Dit zijn (64 bit) variabelen (geinitializeerd met NULL) die het adres van de aan te roepen code (eindigend met een return) bevatten.

Edited by Clean Importer