summaryrefslogtreecommitdiffstats
path: root/libjava/interpret-run.cc
diff options
context:
space:
mode:
authorkseitz <kseitz@138bc75d-0d04-0410-961f-82ee72b054a4>2007-06-19 00:10:10 +0000
committerkseitz <kseitz@138bc75d-0d04-0410-961f-82ee72b054a4>2007-06-19 00:10:10 +0000
commit21dff5743bdaa076e239ff0aaf45fca64d1b5a4b (patch)
tree1001778084e0218424d7169c87f3ac322899ec51 /libjava/interpret-run.cc
parentddf62506020e33054a0299067c2ce3940582a54c (diff)
downloadppe42-gcc-21dff5743bdaa076e239ff0aaf45fca64d1b5a4b.tar.gz
ppe42-gcc-21dff5743bdaa076e239ff0aaf45fca64d1b5a4b.zip
* gnu/gcj/jvmti/Breakpoint.java: Make abstract.
(method): Change from private to protected. (location): Likewise. (Breakpoint): Change argument list to take only integer type. Add default constructor. (initialize_native): Renamed to ... (_save_insn): ... this to make function more explicit. (execute): New method. * gnu/gcj/jvmti/Breakpoint.h: Regenerate. * gnu/gcj/jvmti/natBreakpoint.cc (initialize_native): Rename to... (_save_insn): ... this. (install): Save the original instruction. * gnu/gcj/jvmti/NormalBreakpoint.java: New file. * gnu/gcj/jvmti/NormalBreakpoint.h: New file. * gnu/gcj/jvmti/natNormalBreakpoint.cc: New file. * gnu/gcj/jvmti/BreakpointManager.java (newBreakpoint): Instantiate a NormalBreakpoint instead of Breakpoint. * interpret-run.cc (insn_breakpoint): Remove breakpoint actions and call Breakpoint.execute to do them. * classpath/lib/gnu/gcj/jvmti/Breakpoint.class: Regenerate. * classpath/lib/gnu/gcj/jvmti/BreakpointManager.class: Likewise. * classpath/lib/gnu/gcj/jvmti/NormalBreakpoint.class: New file. * sources.am: Regenerate. * Makefile.am (nat_source_files): Add natNormalBreakpoint.cc. * Makefile.in: Regenerated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@125834 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/interpret-run.cc')
-rw-r--r--libjava/interpret-run.cc13
1 files changed, 4 insertions, 9 deletions
diff --git a/libjava/interpret-run.cc b/libjava/interpret-run.cc
index 9be08df488b..1eea57e1f9e 100644
--- a/libjava/interpret-run.cc
+++ b/libjava/interpret-run.cc
@@ -2619,26 +2619,21 @@ details. */
insn_breakpoint:
{
- JvAssert (JVMTI_REQUESTED_EVENT (Breakpoint));
-
- // Send JVMTI notification
using namespace ::java::lang;
jmethodID method = meth->self;
jlocation location = meth->insn_index (pc - 1);
- Thread *thread = Thread::currentThread ();
- JNIEnv *jni_env = _Jv_GetCurrentJNIEnv ();
- // Save the insn here since the breakpoint could be removed
- // before the JVMTI notification returns.
using namespace gnu::gcj::jvmti;
Breakpoint *bp
= BreakpointManager::getBreakpoint (reinterpret_cast<jlong> (method),
location);
JvAssert (bp != NULL);
+
+ // Save the insn here since the breakpoint could be removed
+ // before the JVMTI notification returns.
pc_t opc = reinterpret_cast<pc_t> (bp->getInsn ());
- _Jv_JVMTI_PostEvent (JVMTI_EVENT_BREAKPOINT, thread, jni_env,
- method, location);
+ bp->execute ();
// Continue execution
#ifdef DIRECT_THREADED
OpenPOWER on IntegriCloud