Link List in Assembly Interpreter

Tom Rodriguez Thomas.Rodriguez at Sun.COM
Tue Jun 19 11:33:19 PDT 2007


There's nothing stopping your from doing any of these things, assuming you can 
write the code.  Anything that involves malloc or free obviously needs to be 
done by calling C code.  The assembly interpreter calls out to helper C 
functions all the time and that's generally the normal way of doing anything 
which is too complicated to do from assembly.  You can't call virtuals or member 
functions from the interpreter though.  I'd probably break it down into putting 
elements into arrays or linked lists from assembly but any resizing of the data 
structures would be done from C.  Actually I'd probably start with calling into 
C as much as possible and only go the way of assembly if it was absolutely 
necessary for speed.  There should be lots of examples of calling C you can copy 
from.  In particular method entries and backedges already have callouts in them 
for invocation counter overflows.

tom

Nima Rouhollah Gougol wrote:
> Hello everybody, Again this is Nima Gougol. I am seriously working on 
> HotSpot toward my Masters' thesis at SJSU. Currently,  I am trying to 
> enhance HotSpot invocation threshold and compilation triggering with 
> dynamic invocation threshold instead the static CompileThreshold which 
> is 10,000 in server mode. Any feedback regarding any of the following 
> questions will be extremely appreciated.
> 
> My question is how I may store and access some data as a link list (or a 
> grow able array) from Assembly interpreter? I am already storing data 
> within JavaThread structure of the thread that is running interpreter. 
> Can I access a static member of JavaThread in assembly interpreter? Can 
> I reloce, grow or shrink an array structure within JavaThread from 
> assembly interpreter?  Can call a C method of JavaThread that is running 
> the interpreter from assembly interpreter? For example, can I get the 
> entry point of a C method of JavaThread  and call it with __ call() 
> method of assembly? Can I generate a grow able array or link list inside 
> the heap of Java Virtual Machine from assembly interpreter?
> 
> Sincerely,
> 
> Nima R. Gougol



More information about the hotspot-dev mailing list