jvmti-int.h (_Jv_GetJDWP_JVMTIEnv): Declare.
* include/jvmti-int.h (_Jv_GetJDWP_JVMTIEnv): Declare. * gnu/classpath/jdwp/natVMVirtualMachine.cc (_Jv_GetJDWP_JVMTIEnv): New function. * gnu/classpath/jdwp/natVMMethod.cc (getName): Implement. (getSignature): Implement. (getModifiers): Implement. From-SVN: r121185
This commit is contained in:
parent
22fa69dace
commit
161a649cb9
4 changed files with 43 additions and 7 deletions
|
@ -1,3 +1,12 @@
|
||||||
|
2007-01-25 Keith Seitz <keiths@redhat.com>
|
||||||
|
|
||||||
|
* include/jvmti-int.h (_Jv_GetJDWP_JVMTIEnv): Declare.
|
||||||
|
* gnu/classpath/jdwp/natVMVirtualMachine.cc
|
||||||
|
(_Jv_GetJDWP_JVMTIEnv): New function.
|
||||||
|
* gnu/classpath/jdwp/natVMMethod.cc (getName): Implement.
|
||||||
|
(getSignature): Implement.
|
||||||
|
(getModifiers): Implement.
|
||||||
|
|
||||||
2007-01-25 Andrew Haley <aph@redhat.com>
|
2007-01-25 Andrew Haley <aph@redhat.com>
|
||||||
|
|
||||||
* configure, Makefile.in, include/config.h.in: Rebuilt.
|
* configure, Makefile.in, include/config.h.in: Rebuilt.
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
// natVMMethod.cc -- native support for VMMethod
|
// natVMMethod.cc -- native support for VMMethod
|
||||||
|
|
||||||
/* Copyright (C) 2006 Free Software Foundation
|
/* Copyright (C) 2006, 2007 Free Software Foundation
|
||||||
|
|
||||||
This file is part of libgcj.
|
This file is part of libgcj.
|
||||||
|
|
||||||
|
@ -11,28 +11,46 @@ details. */
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
#include <gcj/cni.h>
|
#include <gcj/cni.h>
|
||||||
#include <java-interp.h>
|
#include <java-interp.h>
|
||||||
|
#include <jvmti.h>
|
||||||
|
#include "jvmti-int.h"
|
||||||
|
|
||||||
#include <gnu/classpath/jdwp/VMMethod.h>
|
#include <gnu/classpath/jdwp/VMMethod.h>
|
||||||
#include <gnu/classpath/jdwp/exception/JdwpInternalErrorException.h>
|
#include <gnu/classpath/jdwp/exception/JdwpInternalErrorException.h>
|
||||||
#include <gnu/classpath/jdwp/util/LineTable.h>
|
#include <gnu/classpath/jdwp/util/LineTable.h>
|
||||||
#include <gnu/classpath/jdwp/util/VariableTable.h>
|
#include <gnu/classpath/jdwp/util/VariableTable.h>
|
||||||
|
|
||||||
java::lang::String*
|
jstring
|
||||||
gnu::classpath::jdwp::VMMethod::getName ()
|
gnu::classpath::jdwp::VMMethod::getName ()
|
||||||
{
|
{
|
||||||
return NULL;
|
jvmtiEnv *env = _Jv_GetJDWP_JVMTIEnv ();
|
||||||
|
jmethodID method = reinterpret_cast<jmethodID> (_methodId);
|
||||||
|
char *name;
|
||||||
|
env->GetMethodName (method, &name, NULL, NULL);
|
||||||
|
jstring string = JvNewStringUTF (name);
|
||||||
|
env->Deallocate (reinterpret_cast<unsigned char *> (name));
|
||||||
|
return string;
|
||||||
}
|
}
|
||||||
|
|
||||||
java::lang::String*
|
jstring
|
||||||
gnu::classpath::jdwp::VMMethod::getSignature ()
|
gnu::classpath::jdwp::VMMethod::getSignature ()
|
||||||
{
|
{
|
||||||
return NULL;
|
jvmtiEnv *env = _Jv_GetJDWP_JVMTIEnv ();
|
||||||
|
jmethodID method = reinterpret_cast<jmethodID> (_methodId);
|
||||||
|
char *signature;
|
||||||
|
env->GetMethodName (method, NULL, &signature, NULL);
|
||||||
|
jstring string = JvNewStringUTF (signature);
|
||||||
|
env->Deallocate (reinterpret_cast<unsigned char *> (signature));
|
||||||
|
return string;
|
||||||
}
|
}
|
||||||
|
|
||||||
jint
|
jint
|
||||||
gnu::classpath::jdwp::VMMethod::getModifiers ()
|
gnu::classpath::jdwp::VMMethod::getModifiers ()
|
||||||
{
|
{
|
||||||
return 0;
|
jvmtiEnv *env = _Jv_GetJDWP_JVMTIEnv ();
|
||||||
|
jmethodID method = reinterpret_cast<jmethodID> (_methodId);
|
||||||
|
jint flags;
|
||||||
|
env->GetMethodModifiers (method, &flags);
|
||||||
|
return flags;
|
||||||
}
|
}
|
||||||
|
|
||||||
gnu::classpath::jdwp::util::LineTable *
|
gnu::classpath::jdwp::util::LineTable *
|
||||||
|
|
|
@ -48,6 +48,12 @@ static void JNICALL jdwpVMInitCB (jvmtiEnv *, JNIEnv *, jthread);
|
||||||
// JVMTI environment
|
// JVMTI environment
|
||||||
static jvmtiEnv *_jdwp_jvmtiEnv;
|
static jvmtiEnv *_jdwp_jvmtiEnv;
|
||||||
|
|
||||||
|
jvmtiEnv *
|
||||||
|
_Jv_GetJDWP_JVMTIEnv (void)
|
||||||
|
{
|
||||||
|
return _jdwp_jvmtiEnv;
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
gnu::classpath::jdwp::VMVirtualMachine::initialize ()
|
gnu::classpath::jdwp::VMVirtualMachine::initialize ()
|
||||||
{
|
{
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
/* jvmti-int.h -- Internal JVMTI definitions
|
/* jvmti-int.h -- Internal JVMTI definitions
|
||||||
Copyright (C) 2006 Free Software Foundation, Inc.
|
Copyright (C) 2006, 2007 Free Software Foundation, Inc.
|
||||||
|
|
||||||
This file is part of GNU Classpath.
|
This file is part of GNU Classpath.
|
||||||
|
|
||||||
|
@ -82,4 +82,7 @@ namespace JVMTI
|
||||||
For speed, this function should only be called after
|
For speed, this function should only be called after
|
||||||
JVMTI_REQUESTED_EVENT is checked. */
|
JVMTI_REQUESTED_EVENT is checked. */
|
||||||
extern void _Jv_JVMTI_PostEvent (jvmtiEvent type, jthread event_thread, ...);
|
extern void _Jv_JVMTI_PostEvent (jvmtiEvent type, jthread event_thread, ...);
|
||||||
|
// Returns the jvmtiEnv used by the JDWP backend
|
||||||
|
extern jvmtiEnv *_Jv_GetJDWP_JVMTIEnv (void);
|
||||||
|
|
||||||
#endif /* __GCJ_JVMTI_INT_H__ */
|
#endif /* __GCJ_JVMTI_INT_H__ */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue