src/share/javavm/export/jmm.h
Print this page
*** 46,56 ****
enum {
JMM_VERSION_1 = 0x20010000,
JMM_VERSION_1_0 = 0x20010000,
JMM_VERSION_1_1 = 0x20010100, // JDK 6
JMM_VERSION_1_2 = 0x20010200, // JDK 7
! JMM_VERSION = 0x20010201
};
typedef struct {
unsigned int isLowMemoryDetectionSupported : 1;
unsigned int isCompilationTimeMonitoringSupported : 1;
--- 46,57 ----
enum {
JMM_VERSION_1 = 0x20010000,
JMM_VERSION_1_0 = 0x20010000,
JMM_VERSION_1_1 = 0x20010100, // JDK 6
JMM_VERSION_1_2 = 0x20010200, // JDK 7
! JMM_VERSION_1_2_1 = 0x20010201, // JDK 7 GA
! JMM_VERSION = 0x20010202
};
typedef struct {
unsigned int isLowMemoryDetectionSupported : 1;
unsigned int isCompilationTimeMonitoringSupported : 1;
*** 186,195 ****
--- 187,214 ----
jvalue* gc_ext_attribute_values; /* Array of jvalue for GC extension attributes */
jint num_gc_ext_attributes; /* number of GC extension attribute values s are filled */
/* -1 indicates gc_ext_attribute_values is not big enough */
} jmmGCStat;
+ typedef struct {
+ const char *name;
+ const char *description;
+ const char *impact;
+ int num_arguments;
+ jboolean enabled;
+ } dcmdInfo;
+
+ typedef struct {
+ const char *name;
+ const char *description;
+ const char *type;
+ const char *default_string;
+ jboolean mandatory;
+ jboolean option;
+ int position;
+ } dcmdArgInfo;
+
typedef struct jmmInterface_1_ {
void* reserved1;
void* reserved2;
jint (JNICALL *GetVersion) (JNIEnv *env);
*** 294,303 ****
--- 313,331 ----
jboolean lockedMonitors,
jboolean lockedSynchronizers);
void (JNICALL *SetGCNotificationEnabled) (JNIEnv *env,
jobject mgr,
jboolean enabled);
+ jobjectArray (JNICALL *GetDiagnosticCommands) (JNIEnv *env);
+ void (JNICALL *GetDiagnosticCommandInfo) (JNIEnv *env,
+ jobjectArray cmds,
+ dcmdInfo *infoArray);
+ void (JNICALL *GetDiagnosticCommandArgumentsInfo) (JNIEnv *env,
+ jstring commandName,
+ dcmdArgInfo *infoArray);
+ jstring (JNICALL *ExecuteDiagnosticCommand) (JNIEnv *env,
+ jstring command);
} JmmInterface;
#ifdef __cplusplus
} /* extern "C" */
#endif /* __cplusplus */