[讨论] [请教]hotspot的模板解释方法时如何将方法的指令串起来

fp1203 2011-09-28
一直没看明白这个过程,只知道模板初始化时每个指令被翻译成了对应的机器码,但执行方法时如何串联起来这个过程不是很明白。。。

或者说我比较好奇模板解释的过程,请教大家了!
hellhell 2011-09-28
请参考,cpu/sparc/vm/interp_masm_sparc.cpp里的dispatch_next函数,其实过程很简单,无非就是读出下一条bytecode,然后根据top stack state选择dispatch table,在dispatch table上找到下一条bytecode的template,然后跳转过去。
RednaxelaFX 2011-09-28
我那个JVM分享的演示稿里有讲的。这个模板解释器算是比较典型的token-threaded interpreter。请参考wiki http://en.wikipedia.org/wiki/Threaded_code#Token_threading
fp1203 2011-09-28
恩,谢谢大家,原理我懂了,事实上有了table,就是个查表的过程,一开始就是这么想的,但没达到细节
Global site tag (gtag.js) - Google Analytics