@@ -151,10 +151,10 @@ jmethodID JNIJVMCI::_HotSpotResolvedPrimitiveType_fromMetaspace_method;
151151#define STATIC_INT_FIELD (className, name ) FIELD(className, name, " I" , true )
152152#define STATIC_BOOLEAN_FIELD (className, name ) FIELD(className, name, " Z" , true )
153153#ifdef PRODUCT
154- #define METHOD (jniCallType, jniGetMethod, hsCallType, returnType, className, methodName, signatureSymbolName, args )
154+ #define METHOD (jniCallType, jniGetMethod, hsCallType, returnType, className, methodName, signatureSymbolName )
155155#define CONSTRUCTOR (className, signature )
156156#else
157- #define METHOD (jniCallType, jniGetMethod, hsCallType, returnType, className, methodName, signatureSymbolName, args ) \
157+ #define METHOD (jniCallType, jniGetMethod, hsCallType, returnType, className, methodName, signatureSymbolName ) \
158158 check_resolve_method (#hsCallType, k, vmSymbols::methodName##_name (), vmSymbols::signatureSymbolName (), CHECK);
159159#define CONSTRUCTOR (className, signature ) { \
160160 TempNewSymbol sig = SymbolTable::new_symbol (signature); \
@@ -254,7 +254,7 @@ void HotSpotJVMCI::compute_offsets(TRAPS) {
254254
255255#define STATIC_INT_FIELD (className, name ) STATIC_PRIMITIVE_FIELD(className, name, jint)
256256#define STATIC_BOOLEAN_FIELD (className, name ) STATIC_PRIMITIVE_FIELD(className, name, jboolean)
257- #define METHOD (jniCallType, jniGetMethod, hsCallType, returnType, className, methodName, signatureSymbolName, args )
257+ #define METHOD (jniCallType, jniGetMethod, hsCallType, returnType, className, methodName, signatureSymbolName )
258258#define CONSTRUCTOR (className, signature )
259259
260260/* *
@@ -393,7 +393,7 @@ void JNIJVMCI::initialize_field_id(JNIEnv* env, jfieldID &fieldid, jclass clazz,
393393#define GET_JNI_CONSTRUCTOR (clazz, signature ) \
394394 GET_JNI_METHOD (GetMethodID, JNIJVMCI::clazz::_constructor, clazz::_class, " <init>" , signature) \
395395
396- #define METHOD (jniCallType, jniGetMethod, hsCallType, returnType, className, methodName, signatureSymbolName, args ) \
396+ #define METHOD (jniCallType, jniGetMethod, hsCallType, returnType, className, methodName, signatureSymbolName ) \
397397 GET_JNI_METHOD (jniGetMethod, \
398398 className::_##methodName##_method, \
399399 className::clazz (), \
@@ -406,6 +406,7 @@ void JNIJVMCI::initialize_field_id(JNIEnv* env, jfieldID &fieldid, jclass clazz,
406406extern " C" {
407407 void JNICALL JVM_RegisterJVMCINatives (JNIEnv *env, jclass compilerToVMClass);
408408 jobject JNICALL JVM_GetJVMCIRuntime (JNIEnv *env, jclass c);
409+ jlong JNICALL JVM_ReadSystemPropertiesInfo (JNIEnv *env, jclass c, jintArray offsets_handle);
409410}
410411
411412// Dumps symbols for public <init>() and <init>(String) methods of
@@ -565,10 +566,12 @@ static void register_natives_for_class(JNIEnv* env, jclass clazz, const char* na
565566void JNIJVMCI::register_natives (JNIEnv* env) {
566567 if (env != JavaThread::current ()->jni_environment ()) {
567568 JNINativeMethod CompilerToVM_nmethods[] = {{ CC" registerNatives" , CC" ()V" , FN_PTR (JVM_RegisterJVMCINatives) }};
568- JNINativeMethod JVMCI_nmethods[] = {{ CC" initializeRuntime" , CC" ()Ljdk/vm/ci/runtime/JVMCIRuntime;" , FN_PTR (JVM_GetJVMCIRuntime) }};
569+ JNINativeMethod JVMCI_nmethods[] = {{ CC" initializeRuntime" , CC" ()Ljdk/vm/ci/runtime/JVMCIRuntime;" , FN_PTR (JVM_GetJVMCIRuntime) }};
570+ JNINativeMethod Services_nmethods[] = {{ CC" readSystemPropertiesInfo" , CC" ([I)J" , FN_PTR (JVM_ReadSystemPropertiesInfo) }};
569571
570572 register_natives_for_class (env, nullptr , " jdk/vm/ci/hotspot/CompilerToVM" , CompilerToVM_nmethods, 1 );
571573 register_natives_for_class (env, JVMCI::clazz (), " jdk/vm/ci/runtime/JVMCI" , JVMCI_nmethods, 1 );
574+ register_natives_for_class (env, Services::clazz (), " jdk/vm/ci/services/Services" , Services_nmethods, 1 );
572575 }
573576}
574577
@@ -583,7 +586,7 @@ void JNIJVMCI::register_natives(JNIEnv* env) {
583586#define FIELD2 (className, name ) \
584587 jfieldID JNIJVMCI::className::_##name##_field_id = 0 ; \
585588 int HotSpotJVMCI::className::_##name##_offset = 0 ;
586- #define METHOD (jniCallType, jniGetMethod, hsCallType, returnType, className, methodName, signatureSymbolName, args )
589+ #define METHOD (jniCallType, jniGetMethod, hsCallType, returnType, className, methodName, signatureSymbolName )
587590#define CONSTRUCTOR (className, signature )
588591
589592// Generates the definitions of static fields used by the accessors. For example:
@@ -689,7 +692,7 @@ JVMCI_CLASSES_DO(EMPTY2, EMPTY0, FIELD2, FIELD2, FIELD2, FIELD2, FIELD2, FIELD3,
689692
690693#define STATIC_INT_FIELD (className, name ) STATIC_PRIMITIVE_FIELD(className, name, jint, Int, EMPTY_CAST)
691694#define STATIC_BOOLEAN_FIELD (className, name ) STATIC_PRIMITIVE_FIELD(className, name, jboolean, Boolean, EMPTY_CAST)
692- #define METHOD (jniCallType, jniGetMethod, hsCallType, returnType, className, methodName, signatureSymbolName, args ) \
695+ #define METHOD (jniCallType, jniGetMethod, hsCallType, returnType, className, methodName, signatureSymbolName ) \
693696 jmethodID JNIJVMCI::className::_##methodName##_method;
694697
695698#define CONSTRUCTOR (className, signature ) \
0 commit comments