]> oss.titaniummirror.com Git - msp430-gcc.git/blobdiff - libjava/include/jvmpi.h
Imported gcc-4.4.3
[msp430-gcc.git] / libjava / include / jvmpi.h
diff --git a/libjava/include/jvmpi.h b/libjava/include/jvmpi.h
deleted file mode 100644 (file)
index 1af9617..0000000
+++ /dev/null
@@ -1,227 +0,0 @@
-/* Copyright (C) 2000  Free Software Foundation
-
-   This file is part of libgcj.
-
-This software is copyrighted work licensed under the terms of the
-Libgcj License.  Please consult the file "LIBGCJ_LICENSE" for
-details.  */
-
-/* Note: this file must be compilable by the C compiler (for now,
-   assuming GNU C is ok).  This means you must never use `//'
-   comments, and all C++-specific code must be conditional on
-   __cplusplus.  */
-
-#ifndef __GCJ_JVMPI_H__
-#define __GCJ_JVMPI_H__
-
-#include <jni.h>
-
-/* JVMPI version numbers.  FIXME: this is a semi-random number.  The
-   documentation doesn't say what it should be.  */
-#define JVMPI_VERSION_1 0x00020001
-
-/* JVMPI return codes.  FIXME: These are semi-random numbers.  The
-   documentation doesn't say what they should be.  */
-#define JVMPI_SUCCESS       0
-#define JVMPI_FAIL          1
-#define JVMPI_NOT_AVAILABLE 2
-
-/* An opaque pointer representing an object ID.  */
-struct _jobjectID;
-typedef struct _jobjectID * jobjectID;       
-
-typedef struct
-{
-  /* Source line number.  */
-  jint lineno;
-  /* Method being executed.  */
-  jmethodID method_id;
-} JVMPI_CallFrame;
-
-typedef struct 
-{
-  JNIEnv *env_id;
-  /* Number of frames in the call trace.  */
-  jint num_frames;
-  /* An array of frames representing the trace.  Callees first.  */
-  JVMPI_CallFrame *frames;
-} JVMPI_CallTrace;
-
-typedef struct
-{
-  /* Name of the field.  */
-  char *field_name;
-  /* Signature of the field.  */
-  char *field_signature;
-} JVMPI_Field;
-
-/* The documentation doesn't actually specify what the
-   JVMPI_DUMP_LEVEL macros should be defined to.  Here's a reasonable
-   guess.  */
-#define JVMPI_DUMP_LEVEL_0 0
-#define JVMPI_DUMP_LEVEL_1 1
-#define JVMPI_DUMP_LEVEL_2 2
-#define JVMPI_DUMP_LEVEL_3 3
-
-typedef struct
-{
-  /* One of JVMPI_DUMP_LEVEL_0, JVMPI_DUMP_LEVEL_1 or
-     JVMPI_DUMP_LEVEL_2.  */
-  jint heap_dump_level;
-} JVMPI_HeapDumpArg;
-
-typedef struct
-{
-  /* Offset from the beginning of the method.  */
-  jint offset;
-  /* Line number from the beginning of the source file.  */
-  jint lineno;
-} JVMPI_Lineno;
-
-typedef struct
-{
-  /* Name of the method.  */
-  char *method_name;
-  /* Signature of the method.  */
-  char *method_signature;
-  /* Start line number from the beginning of the source file.  */
-  jint start_lineno;
-  /* End line number from the beginning of the source file.  */
-  jint end_lineno;
-  /* The method ID.  */
-  jmethodID method_id;
-} JVMPI_Method;
-
-/* An opaque pointer representing a raw monitor.  */
-struct _JVMPI_RawMonitor;
-typedef struct _JVMPI_RawMonitor *JVMPI_RawMonitor;
-
-/* JVMPI event codes.  FIXME: These are semi-random numbers.  The
-   documentation doesn't say what they should be.  */
-#define JVMPI_EVENT_ARENA_DELETE                   0
-#define JVMPI_EVENT_ARENA_NEW                      1
-#define JVMPI_EVENT_CLASS_LOAD                     2
-#define JVMPI_EVENT_CLASS_LOAD_HOOK                3
-#define JVMPI_EVENT_CLASS_UNLOAD                   4
-#define JVMPI_EVENT_COMPILED_METHOD_LOAD           5
-#define JVMPI_EVENT_COMPILED_METHOD_UNLOAD         6
-#define JVMPI_EVENT_DATA_DUMP_REQUEST              7
-#define JVMPI_EVENT_DATA_RESET_REQUEST             8
-#define JVMPI_EVENT_GC_FINISH                      9
-#define JVMPI_EVENT_GC_START                      10
-#define JVMPI_EVENT_HEAP_DUMP                     11
-#define JVMPI_EVENT_JNI_GLOBALREF_ALLOC           12
-#define JVMPI_EVENT_JNI_GLOBALREF_FREE            13
-#define JVMPI_EVENT_JNI_WEAK_GLOBALREF_ALLOC      14
-#define JVMPI_EVENT_JNI_WEAK_GLOBALREF_FREE       15
-#define JVMPI_EVENT_JVM_INIT_DONE                 16
-#define JVMPI_EVENT_JVM_SHUT_DOWN                 17
-#define JVMPI_EVENT_METHOD_ENTRY                  18
-#define JVMPI_EVENT_METHOD_ENTRY2                 19
-#define JVMPI_EVENT_METHOD_EXIT                   20
-#define JVMPI_EVENT_MONITOR_CONTENDED_ENTER       21
-#define JVMPI_EVENT_MONITOR_CONTENDED_ENTERED     22
-#define JVMPI_EVENT_MONITOR_CONTENDED_EXIT        23
-#define JVMPI_EVENT_MONITOR_DUMP                  24
-#define JVMPI_EVENT_MONITOR_WAIT                  25
-#define JVMPI_EVENT_MONITOR_WAITED                26
-#define JVMPI_EVENT_OBJECT_ALLOC                  27
-#define JVMPI_EVENT_OBJECT_DUMP                   28
-#define JVMPI_EVENT_OBJECT_FREE                   29
-#define JVMPI_EVENT_OBJECT_MOVE                   30
-#define JVMPI_EVENT_RAW_MONITOR_CONTENDED_ENTER   31
-#define JVMPI_EVENT_RAW_MONITOR_CONTENDED_ENTERED 32
-#define JVMPI_EVENT_RAW_MONITOR_CONTENDED_EXIT    33
-#define JVMPI_EVENT_THREAD_END                    34
-#define JVMPI_EVENT_THREAD_START                  35
-#define JVMPI_EVENT_INSTRUCTION_START             36
-
-
-typedef struct
-{
-  /* Event type.  */
-  jint event_type;
-
-  /* Evn where this event occurred.  */
-  JNIEnv *env_id;
-
-  union 
-  {
-    struct
-    {
-      char *class_name;
-      char *source_name;
-      jint num_interfaces;
-      jint num_methods;
-      JVMPI_Method *methods;
-      jint num_static_fields;
-      JVMPI_Field *statics;
-      jint num_instance_fields;
-      JVMPI_Field *instances;
-      jobjectID class_id;
-    } class_load;
-
-    struct
-    {
-      jobjectID class_id;
-    } class_unload;
-
-    struct
-    {
-      jint arena_id;
-      jobjectID class_id;
-      jint is_array;
-      jint size;
-      jobjectID obj_id;
-    } obj_alloc;
-
-    struct
-    {
-      char *thread_name;
-      char *group_name;
-      char *parent_name;
-      jobjectID thread_id;
-      JNIEnv *thread_env_id;
-    } thread_start;
-
-  } u;
-
-} JVMPI_Event;
-
-typedef struct
-{
-  /* JVMPI version number.  */
-  jint version;
-  
-  /* Implemented by the user...  */
-  void (*NotifyEvent) (JVMPI_Event *event);
-  
-  /* Implemented by the runtime...  */
-  jint (*EnableEvent) (jint event_type, void *arg);
-  jint (*DisableEvent) (jint event_type, void *arg);
-  jint (*RequestEvent) (jint event_type, void *arg);
-  void (*GetCallTrace) (JVMPI_CallTrace *trace, jint depth);
-  void (*ProfilerExit) (jint);
-  JVMPI_RawMonitor (*RawMonitorCreate) (char *lock_name);
-  void (*RawMonitorEnter) (JVMPI_RawMonitor lock_id);
-  void (*RawMonitorExit) (JVMPI_RawMonitor lock_id);
-  void (*RawMonitorWait) (JVMPI_RawMonitor lock_id, jlong ms);
-  void (*RawMonitorNotifyAll) (JVMPI_RawMonitor lock_id);
-  void (*RawMonitorDestroy) (JVMPI_RawMonitor lock_id);
-  jlong (*GetCurrentThreadCpuTime) (void);
-  void (*SuspendThread) (JNIEnv *env);
-  void (*ResumeThread) (JNIEnv *env);
-  jint (*GetThreadStatus) (JNIEnv *env);
-  jboolean (*ThreadHasRun) (JNIEnv *env);
-  jint (*CreateSystemThread) (char *name, jint priority, void (*f) (void *));
-  void (*SetThreadLocalStorage) (JNIEnv *env_id, void *ptr);
-  void *(*GetThreadLocalStorage) (JNIEnv *env_id);
-  void (*DisableGC) (void);
-  void (*EnableGC) (void);
-  void (*RunGC) (void);
-  jobjectID (*GetThreadObject) (JNIEnv *env);
-  jobjectID (*GetMethodClass) (jmethodID mid);
-  
-} JVMPI_Interface;
-
-#endif /* __GCJ_JVMPI_H__ */