Re: [rvm-research] spare one bit from the object header

Robin Garner <[email protected]> Wed, 30 Sep 2015 17:51:10 +1000
Newsgroups gmane.comp.java.jikes.rvm.devel
Message-ID <[email protected]>
OK, this may be obvious, but in a copying collector the status word is 
also used to store the forwarding pointer, so its contents can only be 
relied on until an object is copied.  This is why the copy status bits 
are always the low-order 2 bits.

hth,
Robin

On 29/09/15 21:36, 王晨曦 wrote:
> Hi, every one.
>
> 	I want to spare one bit as a flag to mark some particular object from the thin lock bits used in the object header.
> In the production configuration ,the ADDRESS_BASED_HASHING is true.
> so the object header looks like:
>   *      TTTT TTTT TTTT TTTT TTTT TOHH AAAA AAAA
> the bit marked by ‘O’ is the bit  I want to spare.
>
>   I modified the thin lock definitions:
>    /** How many bits are allocated to a thin lock? */
>    public static final int NUM_THIN_LOCK_BITS = ADDRESS_BASED_HASHING ? 21 : 19;
>
>    /** How many bits to shift to get the thin lock? */
>    public static final int THIN_LOCK_SHIFT = ADDRESS_BASED_HASHING ? 11 : 13;
>
>
> But ,In GenNurseryTraceLocal.java traceObject() method.
> I find that ,the spared bit ‘O’  can be set by something I don’t know.
>
> the check code in the traceObject():
>
>          Word objWordVal = VM.objectModel.readAvailableBitsWord(object);
>          Log.write("object header word value:");
>          Log.writeln(objWordVal);
>
>
> and the the print info is :
>    1871 object header word value:0x6e00859f  //  ….   0101  1001  1111
>
>    1876 object header word value:0x6e009dfb  //  ….   1101   1111  1011
>
> we can see that  the spared bit may be set by something.
> So,my question is who set this spared bit ?
> I checked that the thin lock count bits, it is reduced 1 bit, and I think the thin lock will not use this bit.
>
> Any response is helpful, thank you.
> ------------------------------------------------------------------------------
> _______________________________________________
> Jikesrvm-researchers mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/jikesrvm-researchers
>


------------------------------------------------------------------------------
_______________________________________________
Jikesrvm-researchers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jikesrvm-researchers