Continuing to the previous mail,
if USE_CODE_SPACE is true and the space allocated for the code is full, then how the jikes rvm replaces the existing code.?
Thank you for your replies, I am looking for space management.
PushparajOn Thu, May 9, 2013 at 3:40 AM, David P Grove <firstname.lastname@example.org> wrote:
Michael Bond <email@example.com> wrote on 05/08/2013 04:53:32 PM:
> By default, USE_CODE_SPACE is true, and (machine) code is allocated into
> special code spaces that are non-moving spaces. However, if
> USE_CODE_SPACE is false, then it looks like code is allocated into the
> default space, which could be a moving space. Assuming that's right,
> then I'm not entirely sure how pointers to code are updated. At least
> some calls are indirect: they go through TIBs (virtual dispatch) or the
> JTOC (static methods), so just updating these tables is sufficient. Are
> all calls indirect, or are there direct calls in the code that need to
> be updated by updating pointers in the code itself? I suspect that all
> calls are performed indirectly rather than having absolute hard-coded
> callee addresses in the code.
Independent of USE_CODE_SPACE, all calls in Jikes RVM are indirect. (even static calls indirect through the JTOC). On the plus side, this makes adaptive recompilation very simple (install a new version of the code simply by updating a TIB/JTOC pointer). On the minus side, we are likely losing at least some performance by indirecting on every call.
I'd started working on implementing support for direct (pc-relative) calls back at OOPSLA'07 in Montreal, but never completed it. I still have a patch set kicking around if anyone wants to take another run at it. I figured it was going to take me a month +/- of solid work to make all the needed changes (pc relative calls on both platforms, still supporting GC of code, adaptive recompilation, etc).
Learn Graph Databases - Download FREE O'Reilly Book
"Graph Databases" is the definitive new guide to graph databases and
their applications. This 200-page book is written by three acclaimed
leaders in the field. The early access version is available now.
Download your free book today! http://p.sf.net/sfu/neotech_d2d_may
Jikesrvm-researchers mailing list