OSDN Git Service

* jvmti.cc (_Jv_JVMTI_DisposeEnvironment): New function.
[pf3gnuchains/gcc-fork.git] / libjava / jvmti.cc
1 // jvmti.cc - JVMTI implementation
2
3 /* Copyright (C) 2006 Free Software Foundation
4
5    This file is part of libgcj.
6
7 This software is copyrighted work licensed under the terms of the
8 Libgcj License.  Please consult the file "LIBGCJ_LICENSE" for
9 details.  */
10
11 #include <config.h>
12
13 #include <jvm.h>
14 #include <jvmti.h>
15
16 #define RESERVED NULL
17 #define UNIMPLEMENTED NULL
18
19 static jvmtiError
20 _Jv_JVMTI_DisposeEnvironment (jvmtiEnv *env)
21 {
22   // All we need to do is free memory allocated by _Jv_GetJVMTIEnv
23   _Jv_Free (env);
24   return JVMTI_ERROR_NONE;
25 }
26
27 struct _Jv_jvmtiEnv _Jv_JVMTI_Interface =
28 {
29   RESERVED,                     // reserved1
30   UNIMPLEMENTED,                // SetEventNotification
31   RESERVED,                     // reserved3
32   UNIMPLEMENTED,                // GetAllThreads
33   UNIMPLEMENTED,                // SuspendThread
34   UNIMPLEMENTED,                // ResumeThread
35   UNIMPLEMENTED,                // StopThread
36   UNIMPLEMENTED,                // InterruptThread
37   UNIMPLEMENTED,                // GetThreadInfo
38   UNIMPLEMENTED,                // GetOwnedMonitorInfo
39   UNIMPLEMENTED,                // GetCurrentContendedMonitor
40   UNIMPLEMENTED,                // RunAgentThread
41   UNIMPLEMENTED,                // GetTopThreadGroups
42   UNIMPLEMENTED,                // GetThreadGroupInfo
43   UNIMPLEMENTED,                // GetThreadGroupChildren
44   UNIMPLEMENTED,                // GetFrameCount
45   UNIMPLEMENTED,                // GetThreadState
46   RESERVED,                     // reserved18
47   UNIMPLEMENTED,                // GetFrameLocation
48   UNIMPLEMENTED,                // NotifyPopFrame
49   UNIMPLEMENTED,                // GetLocalObject
50   UNIMPLEMENTED,                // GetLocalInt
51   UNIMPLEMENTED,                // GetLocalLong
52   UNIMPLEMENTED,                // GetLocalFloat
53   UNIMPLEMENTED,                // GetLocalDouble
54   UNIMPLEMENTED,                // SetLocalObject
55   UNIMPLEMENTED,                // SetLocalInt
56   UNIMPLEMENTED,                // SetLocalLong
57   UNIMPLEMENTED,                // SetLocalFloat
58   UNIMPLEMENTED,                // SetLocalDouble
59   UNIMPLEMENTED,                // CreateRawMonitor
60   UNIMPLEMENTED,                // DestroyRawMonitor
61   UNIMPLEMENTED,                // RawMonitorEnter
62   UNIMPLEMENTED,                // RawMonitorExit
63   UNIMPLEMENTED,                // RawMonitorWait
64   UNIMPLEMENTED,                // RawMonitorNotify
65   UNIMPLEMENTED,                // RawMonitorNotifyAll
66   UNIMPLEMENTED,                // SetBreakpoint
67   UNIMPLEMENTED,                // CleareBreakpoint
68   RESERVED,                     // reserved40
69   UNIMPLEMENTED,                // SetFieldAccessWatch
70   UNIMPLEMENTED,                // ClearFieldAccessWatch
71   UNIMPLEMENTED,                // SetFieldModificationWatch
72   UNIMPLEMENTED,                // ClearFieldModificationWatch
73   RESERVED,                     // reserved45
74   UNIMPLEMENTED,                // Allocate
75   UNIMPLEMENTED,                // Deallocate
76   UNIMPLEMENTED,                // GetClassSignature
77   UNIMPLEMENTED,                // GetClassStatus
78   UNIMPLEMENTED,                // GetSourceFileName
79   UNIMPLEMENTED,                // GetClassModifiers
80   UNIMPLEMENTED,                // GetClassMethods
81   UNIMPLEMENTED,                // GetClassFields
82   UNIMPLEMENTED,                // GetImplementedInterfaces
83   UNIMPLEMENTED,                // IsInterface
84   UNIMPLEMENTED,                // IsArrayClass
85   UNIMPLEMENTED,                // GetClassLoader
86   UNIMPLEMENTED,                // GetObjectHashCode
87   UNIMPLEMENTED,                // GetObjectMonitorUsage
88   UNIMPLEMENTED,                // GetFieldName
89   UNIMPLEMENTED,                // GetFieldDeclaringClass
90   UNIMPLEMENTED,                // GetFieldModifiers
91   UNIMPLEMENTED,                // IsFieldSynthetic
92   UNIMPLEMENTED,                // GetMethodName
93   UNIMPLEMENTED,                // GetMethodDeclaringClass
94   UNIMPLEMENTED,                // GetMethodModiifers
95   RESERVED,                     // reserved67
96   UNIMPLEMENTED,                // GetMaxLocals
97   UNIMPLEMENTED,                // GetArgumentsSize
98   UNIMPLEMENTED,                // GetLineNumberTable
99   UNIMPLEMENTED,                // GetMethodLocation
100   UNIMPLEMENTED,                // GetLocalVariableTable
101   RESERVED,                     // reserved73
102   RESERVED,                     // reserved74
103   UNIMPLEMENTED,                // GetBytecodes
104   UNIMPLEMENTED,                // IsMethodNative
105   UNIMPLEMENTED,                // IsMethodSynthetic
106   UNIMPLEMENTED,                // GetLoadedClasses
107   UNIMPLEMENTED,                // GetClassLoaderClasses
108   UNIMPLEMENTED,                // PopFrame
109   RESERVED,                     // reserved81
110   RESERVED,                     // reserved82
111   RESERVED,                     // reserved83
112   RESERVED,                     // reserved84
113   RESERVED,                     // reserved85
114   RESERVED,                     // reserved86
115   UNIMPLEMENTED,                // RedefineClasses
116   UNIMPLEMENTED,                // GetVersionNumber
117   UNIMPLEMENTED,                // GetCapabilities
118   UNIMPLEMENTED,                // GetSourceDebugExtension
119   UNIMPLEMENTED,                // IsMethodObsolete
120   UNIMPLEMENTED,                // SuspendThreadList
121   UNIMPLEMENTED,                // ResumeThreadList
122   RESERVED,                     // reserved94
123   RESERVED,                     // reserved95
124   RESERVED,                     // reserved96
125   RESERVED,                     // reserved97
126   RESERVED,                     // reserved98
127   RESERVED,                     // reserved99
128   UNIMPLEMENTED,                // GetAllStackTraces
129   UNIMPLEMENTED,                // GetThreadListStackTraces
130   UNIMPLEMENTED,                // GetThreadLocalStorage
131   UNIMPLEMENTED,                // SetThreadLocalStorage
132   UNIMPLEMENTED,                // GetStackTrace
133   RESERVED,                     // reserved105
134   UNIMPLEMENTED,                // GetTag
135   UNIMPLEMENTED,                // SetTag
136   UNIMPLEMENTED,                // ForceGarbageCollection
137   UNIMPLEMENTED,                // IterateOverObjectsReachable
138   UNIMPLEMENTED,                // IterateOverReachableObjects
139   UNIMPLEMENTED,                // IterateOverHeap
140   UNIMPLEMENTED,                // IterateOverInstanceOfClass
141   RESERVED,                     // reserved113
142   UNIMPLEMENTED,                // GetObjectsWithTags
143   RESERVED,                     // reserved115
144   RESERVED,                     // reserved116
145   RESERVED,                     // reserved117
146   RESERVED,                     // reserved118
147   RESERVED,                     // reserved119
148   UNIMPLEMENTED,                // SetJNIFunctionTable
149   UNIMPLEMENTED,                // GetJNIFunctionTable
150   UNIMPLEMENTED,                // SetEventCallbacks
151   UNIMPLEMENTED,                // GenerateEvents
152   UNIMPLEMENTED,                // GetExtensionFunctions
153   UNIMPLEMENTED,                // GetExtensionEvents
154   UNIMPLEMENTED,                // SetExtensionEventCallback
155   _Jv_JVMTI_DisposeEnvironment, // DisposeEnvironment
156   UNIMPLEMENTED,                // GetErrorName
157   UNIMPLEMENTED,                // GetJLocationFormat
158   UNIMPLEMENTED,                // GetSystemProperties
159   UNIMPLEMENTED,                // GetSystemProperty
160   UNIMPLEMENTED,                // SetSystemProperty
161   UNIMPLEMENTED,                // GetPhase
162   UNIMPLEMENTED,                // GetCurrentThreadCpuTimerInfo
163   UNIMPLEMENTED,                // GetCurrentThreadCpuTime
164   UNIMPLEMENTED,                // GetThreadCpuTimerInfo
165   UNIMPLEMENTED,                // GetThreadCpuTime
166   UNIMPLEMENTED,                // GetTimerInfo
167   UNIMPLEMENTED,                // GetTime
168   UNIMPLEMENTED,                // GetPotentialCapabilities
169   RESERVED,                     // reserved141
170   UNIMPLEMENTED,                // AddCapabilities
171   UNIMPLEMENTED,                // RelinquishCapabilities
172   UNIMPLEMENTED,                // GetAvailableProcessors
173   RESERVED,                     // reserved145
174   RESERVED,                     // reserved146
175   UNIMPLEMENTED,                // GetEnvironmentLocalStorage
176   UNIMPLEMENTED,                // SetEnvironmentLocalStorage
177   UNIMPLEMENTED,                // AddToBootstrapClassLoaderSearch
178   UNIMPLEMENTED,                // SetVerboseFlag
179   RESERVED,                     // reserved151
180   RESERVED,                     // reserved152
181   RESERVED,                     // reserved153
182   UNIMPLEMENTED                 // GetObjectSize
183 };
184
185 _Jv_JVMTIEnv *
186 _Jv_GetJVMTIEnv (void)
187 {
188   _Jv_JVMTIEnv *env
189     = (_Jv_JVMTIEnv *) _Jv_MallocUnchecked (sizeof (_Jv_JVMTIEnv));
190   env->p = &_Jv_JVMTI_Interface;
191   return env;
192 }