aboutsummaryrefslogtreecommitdiff
path: root/libjava/jvmti.cc
AgeCommit message (Collapse)AuthorFilesLines
2011-01-03Update Copyright years for files modified in 2010.Jakub Jelinek1-1/+1
From-SVN: r168438
2010-03-21PR target/42811 (prerequisite)Dave Korn1-0/+1
PR target/42811 (prerequisite) * jvmti.cc (_Jv_GetJVMTIEnv): Avoid use of uninitialised memory. From-SVN: r157605
2007-04-23no-gc.h (_Jv_IsThreadSuspended): Declare.Keith Seitz1-1/+62
* include/no-gc.h (_Jv_IsThreadSuspended): Declare. * include/boehm-gc.h (_Jv_IsThreadSuspended): Likewise. * boehm.cc (_Jv_IsThreadSuspended): New function. * nogc.cc (_Jv_IsThreadSuspended): Likewise. * jvmti.cc (_Jv_JVMTI_GetThreadState): New function. (_Jv_JVMTI_Interface): Define GetThreadState. From-SVN: r124082
2007-04-23java-interp.h (_Jv_InterpFrame): Add pointer to the interpreter PC.Kyle Galloway1-1/+1
2007-04-23 Kyle Galloway <kgallowa@redhat.com> * include/java-interp.h (_Jv_InterpFrame): Add pointer to the interpreter PC. (<init>): Add a pointer to the interpreter PC as a parameter with default value NULL. (get_pc): New method. * interpret-run.cc: If debugging, pass a pointer to the PC when creating the stack frame. * jvmti.cc (_Jv_JVMTI_GetStackTrace): Call _Jv_InterpFrame::get_pc to get the PC. From-SVN: r124076
2007-03-12jvmti.cc (_Jv_JVMTI_GetArgumentsSize): Make wide type arrays count as a ↵Kyle Galloway1-1/+1
sigle slot. 2007-03-12 Kyle Galloway <kgallowa@redhat.com> * jvmti.cc (_Jv_JVMTI_GetArgumentsSize): Make wide type arrays count as a sigle slot. From-SVN: r122864
2007-03-12jvmti.cc (_Jv_JVMTI_GetArgumentsSize): Make wide type arrays count as a ↵Kyle Galloway1-1/+7
sigle slot. 2007-03-12 Kyle Galloway <kgallowa@redhat.com> * jvmti.cc (_Jv_JVMTI_GetArgumentsSize): Make wide type arrays count as a sigle slot. From-SVN: r122863
2007-03-06jvmti.cc (_Jv_JVMTI_GetLocalVariableTable): Fix _Jv_Malloc parameters.Kyle Galloway1-10/+10
2007-03-06 Kyle Galloway <kgallowa@redhat.com> * jvmti.cc(_Jv_JVMTI_GetLocalVariableTable): Fix _Jv_Malloc parameters. * testsuite/libjava.jvmti/interp/natgetlocalvartable.cc (do_getlocalvartable_tests): Add Deallocate calls to free strings. From-SVN: r122630
2007-02-21jvmti.cc (_Jv_JVMTI_GetArgumentsSize): New function.Kyle Galloway1-1/+40
2007-02-21 Kyle Galloway <kgallowa@redhat.com> * jvmti.cc (_Jv_JVMTI_GetArgumentsSize): New function. * testsuite/libjava.jvmti/interp/getargssize.java: New test. * testsuite/libjava.jvmti/interp/getargssize.h: Ditto. * testsuite/libjava.jvmti/interp/getargssize.jar: Ditto. * testsuite/libjava.jvmti/interp/getargssize.out: Ditto. * testsuite/libjava.jvmti/interp/natgetargssize.cc: Ditto. From-SVN: r122201
2007-02-16interpret.cc: Add extra DEBUG_LOCALS_INSN calls for multi-slot variables to ↵Kyle Galloway1-10/+257
maintain type info. 2007-02-16 Kyle Galloway <kgallowa@redhat.com> * interpret.cc: Add extra DEBUG_LOCALS_INSN calls for multi-slot variables to maintain type info. * interpret-run.cc: Add local variable info to frame in the debug interpreter. * jvmti.cc (getLocalFrame): New method. (_Jv_JVMTI_GetLocalObject): New method. (_Jv_JVMTI_GetLocallInt): New method. (_Jv_JVMTI_GetLocalFloat): New method. (_Jv_JVMTI_GetLocalLong): New method. (_Jv_JVMTI_GetLocalDouble): New method. (_Jv_JVMTI_SetLocalObject): New method. (_Jv_JVMTI_SetLocalInt): New method. (_Jv_JVMTI_SetLocalFloat): New method. (_Jv_JVMTI_SetLocalLong): New method. (_Jv_JVMTI_SetLocalDouble): New method. From-SVN: r122048
2007-02-15defineclass.cc (_Jv_ClassReader::read_one_code_attribute): Added ↵Kyle Galloway1-3/+84
LocalVariableTable attribute handling. 2007-02-15 Kyle Galloway <kgallowa@redhat.com> * defineclass.cc (_Jv_ClassReader::read_one_code_attribute): Added LocalVariableTable attribute handling. (_Jv_ClassReader::pool_Utf8_to_char_arr): New method. * jvmti.cc (_Jv_JVMTI_GetLocalVariableTable): New method. * include/java-interp.h: Added local_var_table and local_var_table_len fields to _Jv_InterpMethod. (_Jv_InterpMethod::get_local_var_table): New method. * testsuite/libjava.jvmti/interp/getlocalvartable.java: New test. * testsuite/libjava.jvmti/interp/getlocalvartable.jar: New test. * testsuite/libjava.jvmti/interp/getlocalvartable.out: Output for new test. * testsuite/libjava.jvmti/interp/getlocalvartable.h: New test. * testsuite/libjava.jvmti/interp/natgetlocalvartable.cc: New test. From-SVN: r121999
2007-02-13jvmti.cc (_Jv_JVMTI_GetStackTrace): Remove cast from jthread to Thread *; it ↵Keith Seitz1-11/+7
is no longer needed. * jvmti.cc (_Jv_JVMTI_GetStackTrace): Remove cast from jthread to Thread *; it is no longer needed. (_Jv_JVMTI_GetFrameCount): Likewise. Fix small formatting typo. From-SVN: r121878
2007-02-08java-interp.h (_Jv_Frame::depth): New function.Keith Seitz1-8/+1
* include/java-interp.h (_Jv_Frame::depth): New function. * jvmti.cc (_Jv_JVMTI_GetFrameCount): Use _Jv_Frame::depth. From-SVN: r121709
2007-02-07jvmti.cc (CHECK_FOR_NATIVE_METHOD): New macro.Kyle Galloway1-1/+38
2007-02-07 Kyle Galloway <kgallowa@redhat.com> * jvmti.cc (CHECK_FOR_NATIVE_METHOD): New macro. (_Jv_JVMTI_GetMaxLocals): New method. * include/java-interp.h (_Jv_InterpMethod::get_max_locals): New method. From-SVN: r121700
2007-02-05jvmti.cc (_envListLock): Change type to ReentrantReadWriteLock.Keith Seitz1-33/+44
* jvmti.cc (_envListLock): Change type to ReentrantReadWriteLock. (_Jv_JVMTI_DisposeEnvironment): Switch to read/write lock. (check_enabled_event): Likewise. (_Jv_GetJVMTIEnv): Likewise. (_Jv_JVMTI_Init): Likewise. (_Jv_JVMTI_PostEvent): Likewise. From-SVN: r121616
2007-01-31jvmti-int.h (JVMTI): Declare member "enabled".Keith Seitz1-0/+8
* include/jvmti-int.h (JVMTI): Declare member "enabled". * jvmti.cc (JVMTI): Add member "enabled". (_Jv_GetJVMTIEnv): Mark JVMTI enabled. * interpret.cc (_Jv_InterpMethod::ncode): Use JVMTI::enabled instead of gnu::classpath::jdwp::Jdwp::isDebugging. (_Jv_CompileMethod): If JVMTI is enabled, use run_debug instead of run to compile the method. * interpret-run.cc [DEBUG] (NEXT_INSN): Add JVMTI single step notification. From-SVN: r121442
2007-01-29java-interp.h: Added _Jv_Frame class and its two subclasses _Jv_InterpFrame ↵Kyle Galloway1-2/+106
and _Jv_NativeFrame. 2007-01-29 Kyle Galloway <kgallowa@redhat.com> * include/java-interp.h: Added _Jv_Frame class and its two subclasses _Jv_InterpFrame and _Jv_NativeFrame. Also moved _Jv_FrameType from java-stack.h. * include/java-stack.h: Removed _Jv_FrameType. * java/lang/Thread.java: Added frame member to hold new composite frame stack. * java/lang/Thread.h: Regenerated. * java/lang/Thread.class: Rebuilt. * jni.cc (_Jv_JNIMethod::call): Push a frame onto the stack when calling a JNI method. * jvmti.cc (_Jv_JVMTI_GetStackTrace): New Method. (_Jv_JVMTI_GetFrameCount): New method. * stacktrace.cc (UnwindTraceFn): Modified to use new _Jv_Frame classes. * testsuite/libjava.jvmti/interp/getstacktrace.jar: New test. * testsuite/libjava.jvmti/interp/natgetstacktrace.cc: New test. * testsuite/libjava.jvmti/interp/getstacktrace.h: New test. * testsuite/libjava.jvmti/interp/getstacktrace.jar: New test. * testsuite/libjava.jvmti/interp/getstacktrace.out: Output file for test. From-SVN: r121314
2007-01-29jvmti_md.h (_CLASSPATH_VM_JVMTI_TYPES_DEFINED): Define.Keith Seitz1-18/+11
* include/jvmti_md.h (_CLASSPATH_VM_JVMTI_TYPES_DEFINED): Define. [__GCJ_JNI_IMPL__]: Define our own JVMTI types when building gcj. All jvmti object types now are defined to be their corresponding java classes. * jvmti.cc (_Jv_JVMTI_SuspendThread): Remove casting from jthread to Thread*. (_Jv_JVMTI_ResumeThread): Likewise. (_Jv_JVMTI_InterruptThread): Likewise. (_Jv_JVMTI_SetEventNotificationMode): Likewise. * gnu/classpath/jdwp/natVMVirtualMachine.cc (jdwpClassPrepareCB): Likewise. (jdwpThreadEndCB): Likewise. (jdwpThreadStartCB): Likewise. (jdwpVMInitCB): Likewise. From-SVN: r121296
2007-01-25jvmti.cc (_Jv_JVMTI_GetMethodName): New function.Keith Seitz1-1/+43
* jvmti.cc (_Jv_JVMTI_GetMethodName): New function. (_Jv_JVMTI_Interface): Define GetMethodName. * testsuite/libjava.jvmti/getmethodname.java: New file. * testsuite/libjava.jvmti/natgetmethodname.cc: New file. * testsuite/libjava.jvmti/getmethodname.out: New file. From-SVN: r121179
2007-01-23Class.h (_Jv_GetClassStatus): Declare.Keith Seitz1-1/+31
* java/lang/Class.h (_Jv_GetClassStatus): Declare. * java/lang/natClass.cc (_Jv_GetClassStatus): New function. * jvmti.cc (_Jv_JVMTI_GetClassStatus): New function. (_Jv_JVMTI_Interface): Define GetClassStatus. From-SVN: r121074
2007-01-17jvmti.cc (_Jv_JVMTI_GetAllThreads): Now static.Marco Trudel1-7/+5
2007-01-17 Marco Trudel <mtrudel@gmx.ch> * jvmti.cc (_Jv_JVMTI_GetAllThreads): Now static. Use JNICALL. Fixed indentation. Removed unused variable. From-SVN: r120854
2007-01-16jvmti.cc (_Jv_JVMTI_GetAllThreads): New function.Kyle Galloway1-1/+48
2007-01-16 Kyle Galloway <kgallowa@redhat.com> * jvmti.cc (_Jv_JVMTI_GetAllThreads): New function. * testsuite/libjava.jvmti/getallthreads.java: New test. * testsuite/libjava.jvmti/natgetallthreads.cc: Ditto. * testsuite/libjava.jvmti/getallthreads.out: Ditto. * testsuite/libjava.jvmti/getallthreads.h: Ditto. * testsuite/libjava.jvmti/getallthreads.jar: Ditto. From-SVN: r120827
2006-11-02jvmti.cc (_Jv_JVMTI_GetLineNumberTable): New function.Keith Seitz1-1/+49
* jvmti.cc (_Jv_JVMTI_GetLineNumberTable): New function. (_Jv_JVMTI_Interface): Define GetLineNumberTable. From-SVN: r118419
2006-11-01Location.java: New file.Keith Seitz1-2/+72
* gnu/gcj/jvmti/Location.java: New file. * gnu/gcj/jvmti/BreakpointManager.java: New file. * jvmti.cc (_Jv_JVMTI_SetBreakpoint): New function. (_Jv_JVMTI_ClearBreakpoint): New function. (_Jv_JVMTI_Interface): Define SetBreakpoint and ClearBreakpoint. * sources.am: Regenerated. * Makefile.in: Regenerated. From-SVN: r118391
2006-10-28java-stack.h (ncodeMap): Declare.Keith Seitz1-1/+19
* include/java-stack.h (ncodeMap): Declare. (_Jv_StackTrace): Make _Jv_GetMethodDeclaringClass friend. * java/lang/Class.h (_Jv_GetMethodDeclaringClass): Declare. * java/lang/natClass.cc (_Jv_GetMethodDeclaringClass): New function. * stacktrace.cc (ncodeMap): Redefine from file global to global for class _Jv_StackTrace. (_Jv_StackTrace::UpdateNCodeMap): Add interpreted classes, too, so that _Jv_GetMethodDeclaringClass can find them all. (_Jv_StackTrace::ClassForFrame): Exclude interpreted classes. * jvmti.cc (_Jv_JVMTI_GetMethodDeclaringClass): New function. (_Jv_JVMTI_Interface): Define GetMethodDeclaringClass function. From-SVN: r118100
2006-10-12jvmti-int.h (JVMTI): Declare all members "extern".Keith Seitz1-0/+39
* include/jvmti-int.h (JVMTI): Declare all members "extern". * jvmti.cc (JVMTI): Define. From-SVN: r117670
2006-09-22jvmti.cc (_Jv_JVMTI_GetErrorName): Now static.Marco Trudel1-1/+1
2006-09-22 Marco Trudel <mtrudel@gmx.ch> * jvmti.cc (_Jv_JVMTI_GetErrorName): Now static. Marked JNICALL. From-SVN: r117153
2006-09-22jvmti.cc (_Jv_JVMTI_DisposeEnvironment): Check for enabled events.Keith Seitz1-2/+684
* jvmti.cc (_Jv_JVMTI_DisposeEnvironment): Check for enabled events. (check_enabled_event): New function. (check_enabled_events): New function. (post_event): New function. (_Jv_JVMTI_SetEventNotificationMode): New function. (_Jv_JVMTI_SetEventCallbacks): New function. (_Jv_JVMTI_Interface): Define SetEventNotificationMode and SetEventCallbacks members. * include/jvmti-int.h: New file. * include/jvmti_md.h (EVENT_SLOTS) [__GCJ_JNI_IMP__]: Define. (_CLASSPATH_JVMTIENV_CONTENTS) [__GCJ_JNI_IMPL__]: Define. * testsuite/libjava.jvmti/events.java: New file. * testsuite/libjava.jvmti/events.out: New file. * testsuite/libjava.jvmti/natevents.cc: New file. From-SVN: r117133
2006-09-21jvmti.cc (_Jv_JVMTI_CreateRawMonitor): Use _Jv_MallocUnchked and return ↵Keith Seitz1-5/+19
JVMTI_ERROR_OUT_OF_MEMORY if necessary. * jvmti.cc (_Jv_JVMTI_CreateRawMonitor): Use _Jv_MallocUnchked and return JVMTI_ERROR_OUT_OF_MEMORY if necessary. (_Jv_JVMTI_GetClassMethods): Likewise. (_Jv_JVMTI_GetClassLoaderClasses): Likewise. (_Jv_JVMTI_GetJNIFunctionTable): Likewise. From-SVN: r117098
2006-09-20jvmti.cc (_Jv_JVMTI_GetErrorName): New function.Keith Seitz1-1/+214
* jvmti.cc (_Jv_JVMTI_GetErrorName): New function. (_Jv_JVMTI_Interface): Define GetErrorName member. * testsuite/libjava.jvmti/geterrorname.java: New file. * testsuite/libjava.jvmti/geterrorname.out: New file. * testsuite/libjava.jvmti/natgeterrorname.cc: New file. From-SVN: r117086
2006-09-19jvmti.cc (THREAD_DEFAULT_TO_CURRENT): Clarify parameter list.Keith Seitz1-12/+14
* jvmti.cc (THREAD_DEFAULT_TO_CURRENT): Clarify parameter list. (THREAD_CHECK_VALID): Likewise. (THREAD_CHECK_ALIVE): Likewise. (_Jv_JVMTI_SuspendThread): Call THREAD_CHECK_VALID on a Thread not jthread. (_Jv_JVMTI_ResumeThread): Likewise. (_Jv_JVMTI_InterruptThread): Likewise. (_Jv_JVMTI_DisposeEnvironment): Probably unwise to dereference an object that was just freed. From-SVN: r117064
2006-09-01jvmti.cc (THREAD_DEFAULT_TO_CURRENT): Encapsulate in do..while loop.Keith Seitz1-12/+36
* jvmti.cc (THREAD_DEFAULT_TO_CURRENT): Encapsulate in do..while loop. (THREAD_CHECK_VALID): Likewise. (THREAD_CHECK_IS_ALIVE): Likewise. (NULL_CHECK): Likewise. (ILLEGAL_ARGUMENT): Likewise. From-SVN: r116636
2006-09-01jvm.h (_Jv_JVMTI_Init): Declare.Keith Seitz1-3/+71
* include/jvm.h (_Jv_JVMTI_Init): Declare. * jvmti.cc (_Jv_JVMTI_Init): New function. * prims.cc (_Jv_CreateJavaVM): Initialize JVMTI. * jvmti.cc (ILLEGAL_ARGUMENT): New macro. (_Jv_JVMTI_Allocate): Use ILLEGAL_ARUMENT. * jvmti.cc (_jvmtiEnvironments): New linked list of JVMTI environments. (FOREACH_ENVIRONMENT): New macro. (_envListLock): New object to act as synchronization lock for _jvmtiEnvironments. (_Jv_JVMTI_DisposeEnvironment): Check for NULL environment. Remove the environment from the list of known environments. (_Jv_GetJVMTIEnv): Add the new environment to the list of known environments. From-SVN: r116635
2006-08-31jvmti.cc (_Jv_JVMTI_RawMonitorWait): Add millis parameter.Keith Seitz1-2/+3
* jvmti.cc (_Jv_JVMTI_RawMonitorWait): Add millis parameter. Pass millis to _Jv_CondWait. From-SVN: r116611
2006-08-05jvmti.cc: Include gcj/method.h.Mark Wielaard1-0/+2
2006-08-04 Mark Wielaard <mark@klomp.org> * jvmti.cc: Include gcj/method.h. From-SVN: r115943
2006-08-05jvmti.cc: Added MAYBE_UNUSED to 'env' parameters.Tom Tromey1-24/+34
* jvmti.cc: Added MAYBE_UNUSED to 'env' parameters. (_Jv_JVMTI_GetObjectSize): Cast _Jv_GetArrayElementFromElementType result to _Jv_uintptr_t. From-SVN: r115942
2006-08-03jvmti.cc (REQUIRE_PHASE): New macro.Tom Tromey1-35/+536
* jvmti.cc (REQUIRE_PHASE): New macro. (_Jv_JVMTI_InterruptThread): New function. (_Jv_JVMTI_CreateRawMonitor): Likewise. (_Jv_JVMTI_DestroyRawMonitor): Likewise. (_Jv_JVMTI_RawMonitorEnter): Likewise. (_Jv_JVMTI_RawMonitorExit): Likewise. (_Jv_JVMTI_RawMonitorWait): Likewise. (_Jv_JVMTI_RawMonitorNotify): Likewise. (_Jv_JVMTI_RawMonitorNotifyAll): Likewise. (_Jv_JVMTI_Allocate): Likewise. (_Jv_JVMTI_Deallocate): Likewise. (_Jv_JVMTI_GetClassModifiers): Likewise. (_Jv_JVMTI_GetClassMethods): Likewise. (_Jv_JVMTI_IsInterface): Likewise. (_Jv_JVMTI_IsArrayClass): Likewise. (_Jv_JVMTI_GetClassLoader): Likewise. (_Jv_JVMTI_GetObjectHashCode): Likewise. (_Jv_JVMTI_GetFieldModifiers): Likewise. (_Jv_JVMTI_IsFieldSynthetic): Likewise. (_Jv_JVMTI_GetMethodModifiers): Likewise. (_Jv_JVMTI_IsMethodNative): Likewise. (_Jv_JVMTI_IsMethodSynthetic): Likewise. (_Jv_JVMTI_GetClassLoaderClasses): Likewise. (_Jv_JVMTI_ForceGarbageCollection): Likewise. (_Jv_JVMTI_GetSystemProperty): Likewise. (_Jv_JVMTI_SetSystemProperty): Likewise. (_Jv_JVMTI_GetTime): Likewise. (_Jv_JVMTI_GetAvailableProcessors): Likewise. (_Jv_JVMTI_AddToBootstrapClassLoaderSearch): Likewise. (_Jv_JVMTI_SetVerboseFlag): Likewise. (_Jv_JVMTI_GetObjectSize): Likewise. (_Jv_JVMTI_SetJNIFunctionTable): Likewise. (_Jv_JVMTI_GetJNIFunctionTable): Likewise. (_Jv_JVMTI_Interface): Updated. (NULL_CHECK): New macro. From-SVN: r115907
2006-07-23jvmti.cc (_Jv_JVMTI_SuspendThread): Add missing JNICALL attribute.Mohan Embar1-3/+3
2006-07-23 Mohan Embar <gnustuff@thisiscool.com> * jvmti.cc (_Jv_JVMTI_SuspendThread): Add missing JNICALL attribute. (_Jv_JVMTI_ResumeThread): Likewise. (_Jv_JVMTI_DisposeEnvironment): Likewise. From-SVN: r115692
2006-07-21boehm.cc (_Jv_SuspendThread): Don't ifdef the function declaration, just the ↵Keith Seitz1-2/+50
contents. * boehm.cc (_Jv_SuspendThread): Don't ifdef the function declaration, just the contents. (_Jv_ResumeThread): Likewise. * posix-threads.cc: Revert 2006-06-19 _Jv_ThreadDebugSuspend, _Jv_ThreadDebugResume, _Jv_ThreadDebugSuspendCount patch. Moving to JVMTI instead. * include/posix-threads.h: Likewise. * win32-threads.cc: Likewise. * include/win32-threads.h: Likewise. * jvmti.cc (_Jv_JVMTI_SuspentThread): New function. (_Jv_JVMTI_ResumeThread): New function. (_Jv_JVMTI_Interface): Define SuspendThread and ResumeThread. From-SVN: r115655
2006-07-20jvmti.cc (_Jv_JVMTI_DisposeEnvironment): New function.Keith Seitz1-1/+9
* jvmti.cc (_Jv_JVMTI_DisposeEnvironment): New function. (_Jv_JVMTI_Interface): Define DisposeEnvironment method. From-SVN: r115631
2006-07-20jvm.h (_Jv_GetJVMTIEnv): Declare.Keith Seitz1-0/+184
* include/jvm.h (_Jv_GetJVMTIEnv): Declare. * jni.cc (_Jv_JNI_GetEnv): Handle JVMTI requests. * jvmti.cc: New file. * Makefile.am (libgcj_la_SOURCES): Add jvmti.cc. * Makefile.in: Regenerate. From-SVN: r115629