guile-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bdw-gc hack


From: Stefan Israelsson Tampe
Subject: bdw-gc hack
Date: Sat, 3 May 2014 00:07:37 +0200

Hi all, I'm working with two paths right now when it comes to gc.

1. Using finalizers, that fails right now
2. A modded version of bdw-gc found at https://gitorious.org/bdw-gc-logical-mod

I was thinking of showing how the new API in 2) is working, just for the curious. So:

 GC_new_kind_adv (..., bit)

This is the same as without _adv but with a new argument bit, at the end, the tag to
mask on the head SCM of the allocated datastructure. the modded gc will mask on bit
on the head SCM in case it is reached from normal code and hence one can use this to
probe if a variable is referenced normally or not.


GC_MARK_AND_PUSH_NO_TOUCH(...)

This is the same as the ideom with _NO_TOUCH attached. It will simply mark the variable
as not for gc and don't pushes the variable onto the stack and onot mask on the bit. The name should be (I will change it later to GC_MARK_NO_TOUCH( ...))

That's it. I'm not sure that this scheme supports incremental gc, but it is a nice start to play with the gc. The added overhead is low compared to the rest of the gc code.

Have fun!
/Stefan

reply via email to

[Prev in Thread] Current Thread [Next in Thread]