harmony-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Alex Astapchuk (JIRA)" <j...@apache.org>
Subject [jira] Created: (HARMONY-1785) [drlvm][.jet] wb4c - write barriers for C/C++-based GC
Date Mon, 09 Oct 2006 14:41:19 GMT
[drlvm][.jet] wb4c - write barriers for C/C++-based GC

                 Key: HARMONY-1785
                 URL: http://issues.apache.org/jira/browse/HARMONY-1785
             Project: Harmony
          Issue Type: New Feature
          Components: DRLVM
            Reporter: Alex Astapchuk
         Attachments: jet_wb4c.patch

Attached is implementation of write barriers for C/C++ based GCs (WB4C) in Jitrino.JET.

Currently, the GC's function gc_heap_slot_write_ref (file vm\gc\src\gc_for_vm.cpp) 
is used as write barrier helper.

WB4C is off by default. To turn it on pass 'wb4c=true' option to .jet. Please refer to 
PMF docs for details on how the arguments passing is working currently.

Normally, if you're using .jet-only mode (java -Xem:jet), the complete command line is

java -Xem:jet -Djit.JET.arg.wb4c=true Hello

Note: by default, the static fields writes (PUTSTATIC opcode) are *NOT* reported. 
This is due to specifics of DRLVM where the static fields lies outside of the managed heap.
To force the reporting of static fields pass 'wb4c.skip_statics=false' (only works 
together with wb4c=true):

java -Xem:jet -Djit.JET.arg.wb4c=true -Djit.JET.arg.wb4c.skip_statics=false Hello
(Note: current implementaion of gc_heap_slot_write_ref() will raise assert() in this case).

This patch also prepares some stuff for write barriers for Java (wb4j) but the complete 
implementaion of wb4j will be supplied later.

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message