« Return to Thread: [jira] Created: (RVM-836) Static initialization loop in Generational collectors

[jira] Work started: (RVM-836) Static initialization loop in Generational collectors

by JIRA jira@codehaus.org :: Rate this Message:

Reply to Author | View in Thread


     [ http://jira.codehaus.org/browse/RVM-836?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Work on RVM-836 started by Robin Garner.

> Static initialization loop in Generational collectors
> -----------------------------------------------------
>
>                 Key: RVM-836
>                 URL: http://jira.codehaus.org/browse/RVM-836
>             Project: RVM
>          Issue Type: Bug
>          Components: MMTk
>            Reporter: Robin Garner
>            Assignee: Robin Garner
>
> The GenConstraints class depends on several constants in the class Gen, eg
>   public boolean needsStaticWriteBarrier() { return Gen.USE_STATIC_WRITE_BARRIER; }
>   public boolean needsLogBitInHeader() { return Gen.USE_OBJECT_BARRIER; }
>   public int maxNonLOSDefaultAllocBytes() { return Gen.MAX_NURSERY_ALLOC_BYTES; }
> The first two are resolved at compile-time by javac, the last compiles to
> public int maxNonLOSDefaultAllocBytes();
>   Code:
>    0: getstatic #3; //Field org/mmtk/plan/generational/Gen.MAX_NURSERY_ALLOC_BYTES:I
>    3: ireturn
> which causes the Plan class hierarchy to be statically initialized.  Since Plan says
>   public static final int MAX_NON_LOS_DEFAULT_ALLOC_BYTES = VM.activePlan.constraints().maxNonLOSDefaultAllocBytes();
> there is a loop.  The JikesRVM bootstrap process somehow resolves this correctly, but in the MMTk harness this constant ends up as zero.
> The obvious solution is to lift this calculation into the GenConstraints class, since it's only ever used there.

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

       

------------------------------------------------------------------------------
_______________________________________________
Jikesrvm-issues mailing list
Jikesrvm-issues@...
https://lists.sourceforge.net/lists/listinfo/jikesrvm-issues

 « Return to Thread: [jira] Created: (RVM-836) Static initialization loop in Generational collectors