Hi all,

I find there are 6 kinds of write barriers function:
WRITE_BARRIER_REM_NIL           = 0x00,
WRITE_BARRIER_REM_SOURCE_OBJ    = 0x01,
WRITE_BARRIER_REM_SOURCE_REF    = 0x02,
WRITE_BARRIER_REM_OLD_VAR       = 0x03,
WRITE_BARRIER_REM_NEW_VAR       = 0x04,
WRITE_BARRIER_REM_OBJ_SNAPSHOT  = 0x05
each of them represents a write barrier remember function in
gc_for_barriers.cpp.
And function 'gc_heap_slot_write_ref' is responsible for dispatching the
different write barriers to corresponding handler.

But it seems that only WRITE_BARRIER_REM_NIL is called when running a simple
HelloWorld program.
What does 'NIL' stand for? and I want to know what situation calls for use
of other functions.

Additionally, IMO gc_gen only use write barriers for concurrently collecting
to incremental reachability analysis, is that true?

Thanks

-- 
>From : [EMAIL PROTECTED] School of Fudan University

Reply via email to