You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by ge...@apache.org on 2006/10/06 19:23:07 UTC
svn commit: r453690 -
/incubator/harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg_meth.cpp
Author: geirm
Date: Fri Oct 6 10:23:06 2006
New Revision: 453690
URL: http://svn.apache.org/viewvc?view=rev&rev=453690
Log:
HARMONY-1711
itrino.JET does not create stack frame for empty Java methods under JVMTI
This bypasses JVMTI MethodEnter/MethodExit notifications, and prevents from walking through the stack.
The attached patch forces the complete stack frame to be generated even for empty Java methods when running under
JVMTI.
Ubuntu 6 - smoke, c-unit, ~kernel
Modified:
incubator/harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg_meth.cpp
Modified: incubator/harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg_meth.cpp
URL: http://svn.apache.org/viewvc/incubator/harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg_meth.cpp?view=diff&rev=453690&r1=453689&r2=453690
==============================================================================
--- incubator/harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg_meth.cpp (original)
+++ incubator/harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg_meth.cpp Fri Oct 6 10:23:06 2006
@@ -84,7 +84,7 @@
gen_brk();
}
- if (m_infoBlock.get_bc_size() == 1 && m_bc[0] == OPCODE_RETURN) {
+ if (m_infoBlock.get_bc_size() == 1 && m_bc[0] == OPCODE_RETURN && !g_jvmtiMode) {
// empty method, nothing to do; the same is in gen_return();
return;
}
@@ -540,7 +540,7 @@
gen_dbg_rt(true, "exiting : %s", meth_fname());
}
- if (m_infoBlock.get_bc_size() == 1 && m_bc[0] == OPCODE_RETURN) {
+ if (m_infoBlock.get_bc_size() == 1 && m_bc[0] == OPCODE_RETURN && !g_jvmtiMode) {
// empty method, nothing to do; the same is in gen_prolog();
// TODO: need to check and make sure whether it's absolutely legal
// to bypass monitors on such an empty method