src/share/javavm/export/jmm.h

Print this page

        

*** 1,7 **** /* ! * Copyright (c) 2003, 2012, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this --- 1,7 ---- /* ! * Copyright (c) 2003, 2013, Oracle and/or its affiliates. All rights reserved. * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * This code is free software; you can redistribute it and/or modify it * under the terms of the GNU General Public License version 2 only, as * published by the Free Software Foundation. Oracle designates this
*** 47,57 **** 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; --- 47,58 ---- 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_1_2_2 = 0x20010202, ! JMM_VERSION = 0x20010203 }; typedef struct { unsigned int isLowMemoryDetectionSupported : 1; unsigned int isCompilationTimeMonitoringSupported : 1;
*** 60,70 **** unsigned int isOtherThreadCpuTimeSupported : 1; unsigned int isBootClassPathSupported : 1; unsigned int isObjectMonitorUsageSupported : 1; unsigned int isSynchronizerUsageSupported : 1; unsigned int isThreadAllocatedMemorySupported : 1; ! unsigned int : 23; } jmmOptionalSupport; typedef enum { JMM_CLASS_LOADED_COUNT = 1, /* Total number of loaded classes */ JMM_CLASS_UNLOADED_COUNT = 2, /* Total number of unloaded classes */ --- 61,72 ---- unsigned int isOtherThreadCpuTimeSupported : 1; unsigned int isBootClassPathSupported : 1; unsigned int isObjectMonitorUsageSupported : 1; unsigned int isSynchronizerUsageSupported : 1; unsigned int isThreadAllocatedMemorySupported : 1; ! unsigned int isRemoteDiagnosticCommandsSupported : 1; ! unsigned int : 22; } jmmOptionalSupport; typedef enum { JMM_CLASS_LOADED_COUNT = 1, /* Total number of loaded classes */ JMM_CLASS_UNLOADED_COUNT = 2, /* Total number of unloaded classes */
*** 188,212 **** 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; --- 190,221 ---- 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; /* Name of the diagnostic command */ ! const char* description; /* Short description */ ! const char* impact; /* Impact on the JVM */ ! const char* permission_class; /* Class name of the required permission if any */ ! const char* permission_name; /* Permission name of the required permission if any */ ! const char* permission_action; /* Action name of the required permission if any*/ ! int num_arguments; /* Number of supported options or arguments */ ! jboolean enabled; /* True if the diagnostic command can be invoked, false otherwise*/ ! } dcmdInfo; typedef struct { ! const char* name; /* Option/Argument name*/ ! const char* description; /* Short description */ ! const char* type; /* Type: STRING, BOOLEAN, etc. */ ! const char* default_string; /* Default value in a parsable string */ ! jboolean mandatory; /* True if the option/argument is mandatory */ ! jboolean option; /* True if it is an option, false if it is an argument */ ! /* (see diagnosticFramework.hpp for option/argument definitions) */ ! jboolean multiple; /* True is the option can be specified several time */ ! int position; /* Expected position for this argument (this field is */ ! /* meaningless for options) */ } dcmdArgInfo; typedef struct jmmInterface_1_ { void* reserved1; void* reserved2;
*** 325,334 **** --- 334,346 ---- jstring commandName, dcmdArgInfo *infoArray); jstring (JNICALL *ExecuteDiagnosticCommand) (JNIEnv *env, jstring command); + void (JNICALL *SetDiagnosticFrameworkNotificationEnabled) + (JNIEnv *env, + jboolean enabled); } JmmInterface; #ifdef __cplusplus } /* extern "C" */ #endif /* __cplusplus */