* src/mm/cacao-gc/rootset.c (rootset_writeback): Use above function.
void rootset_writeback(rootset_t *rs)
{
threadobject *thread;
- sourcestate_t *ss;
- executionstate_t *es;
/* walk through all rootsets */
while (rs) {
GC_LOG( dolog("GC: Writing back Root-Set to single-thread ..."); );
#endif
- /* now write back the modified sourcestate */
- ss = GC_SOURCESTATE;
- es = GC_EXECUTIONSTATE;
- replace_build_execution_state_intern(ss, es);
+ /* now rebuild the stack of the thread */
+ replace_gc_into_native(thread);
}
rs = rs->next;
}
#endif
+#if defined(ENABLE_GC_CACAO)
+void replace_gc_into_native(threadobject *thread)
+{
+ executionstate_t *es;
+ sourcestate_t *ss;
+
+ /* get the executionstate and sourcestate for the given thread */
+ es = GC_EXECUTIONSTATE;
+ ss = GC_SOURCESTATE;
+
+ /* rebuild the stack of the given thread */
+ replace_build_execution_state(ss, es);
+}
+#endif
+
/******************************************************************************/
/* NOTE: No important code below. */