review request (S) 6866585 debug code in ciObjectFactory too slow

John Rose John.Rose at Sun.COM
Thu Aug 6 11:13:12 PDT 2009

On Aug 6, 2009, at 11:07 AM, Y.S.Ramakrishna at Sun.COM wrote:

> Current GCs in hotspot will never reorder perm gen objects.

And that's been true in all the years since we wrote the paranoid CI  
code.  It's just waiting for that day when all its fears are  
justtified!  :-)

> Of course having the check at every full gc seems fine in debug
> mode. The diagnostic mode may be paranoid given our current GC's,
> but is fine to have if you feel that would still be worthwhile.

Would it be possible to put the check into the GC epilogue?  Probably  
not, since ciEnv guys are not statically allocated and not easy to  
enumerate (one per active compile-thread task).  I guess I do like the  
idea of checking a GC tick counter from the CI, to throttle the  
paranoid check.  Best of all would be to have some explicit linkage  
from the GC epilogue code to the CI, which somehow documents and  
enforces the order invariance.  You can see why this is awkward:  It  
is an invariant shared by the CI and the GC.

-- John

More information about the hotspot-compiler-dev mailing list