harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Weldon Washburn" <weldon...@gmail.com>
Subject [DRLVM][MMTk GC] marksweep configuration works in "user mode"
Date Tue, 29 Aug 2006 04:48:30 GMT
All,

I just committed mods that allow MMTk marksweep configuration to run
the simple tests in test.java.

There were some workarounds in MMTk code itself.  It does not make
sense to commit these workarounds to drlvm/trunk or to put them in
JIRA.  Instead, I told Steve Blackburn what the MMTk porting problems
are.

For the record the MMTk mods are:

1)
SegregatedFreeList.java wants to use vmmagic atomic operations even in
single java thread app.  But vmmagic atomic ops are not fully
functional in Jitrino.JET just yet.  The workaround is to do a simple
write to memory instead of CAS.  The mods to SegregatedFreeList.java
are:
731a732
>       atomic = false;  //wjw hack around Addresss.attempt bug

2)
MMType.getSlot() is hard coded to assume that element zero is an
"Offset" of zero from the vtable ptr.  While this may indeed be the
case for JikesRVM, in DRLVM the offset is 12.  The diff to MMType.java
is:
83,86c83,86
<     if (isReferenceArray)
<       return addr.plus(arrayOffset).plus(reference << LOG_BYTES_IN_ADDRESS);
<     else
<       return addr.plus(offsets[reference]);
---
>       if (isReferenceArray)
>           return addr.plus(12).plus(reference << LOG_BYTES_IN_ADDRESS);  // return
addr.plus(arrayOffset).plus(reference << LOG_BYTES_IN_ADDRESS);
>       else
>           return addr.plus(offsets[reference]);



-- 
Weldon Washburn
Intel Middleware Products Division

---------------------------------------------------------------------
Terms of use : http://incubator.apache.org/harmony/mailing.html
To unsubscribe, e-mail: harmony-dev-unsubscribe@incubator.apache.org
For additional commands, e-mail: harmony-dev-help@incubator.apache.org


Mime
View raw message