Mercurial > hg > graal-jvmci-8
changeset 6363:a73fcf1639fc
HotSpotVMConfig object is now allocated in Java
author | Doug Simon <doug.simon@oracle.com> |
---|---|
date | Wed, 12 Sep 2012 12:45:46 +0200 |
parents | 6d232ee6a62d |
children | 07da50ea3275 |
files | graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotGraalRuntime.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/CompilerToVM.java graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/CompilerToVMImpl.java src/share/vm/graal/graalCompilerToVM.cpp |
diffstat | 5 files changed, 9 insertions(+), 11 deletions(-) [+] |
line wrap: on
line diff
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotGraalRuntime.java Wed Sep 12 12:34:48 2012 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotGraalRuntime.java Wed Sep 12 12:45:46 2012 +0200 @@ -83,7 +83,8 @@ // set the final fields compilerToVm = toVM; vmToCompiler = toCompiler; - config = compilerToVm.getConfiguration(); + config = new HotSpotVMConfig(); + compilerToVm.initializeConfiguration(config); config.check(); if (Boolean.valueOf(System.getProperty("graal.printconfig"))) {
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java Wed Sep 12 12:34:48 2012 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/HotSpotVMConfig.java Wed Sep 12 12:45:46 2012 +0200 @@ -22,6 +22,7 @@ */ package com.oracle.graal.hotspot; + /** * Used to communicate configuration details, runtime offsets, etc. to graal upon compileMethod. */ @@ -29,7 +30,7 @@ private static final long serialVersionUID = -4744897993263044184L; - private HotSpotVMConfig() { + HotSpotVMConfig() { } // os information, register layout, code generation, ...
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/CompilerToVM.java Wed Sep 12 12:34:48 2012 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/CompilerToVM.java Wed Sep 12 12:45:46 2012 +0200 @@ -65,7 +65,7 @@ HotSpotCompiledMethod installMethod(HotSpotCompilationResult compResult, boolean makeDefault, HotSpotCodeInfo info); - HotSpotVMConfig getConfiguration(); + void initializeConfiguration(HotSpotVMConfig config); JavaMethod JavaType_resolveMethodImpl(HotSpotResolvedJavaType klass, String name, String signature);
--- a/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/CompilerToVMImpl.java Wed Sep 12 12:34:48 2012 +0200 +++ b/graal/com.oracle.graal.hotspot/src/com/oracle/graal/hotspot/bridge/CompilerToVMImpl.java Wed Sep 12 12:45:46 2012 +0200 @@ -80,7 +80,7 @@ public native HotSpotCompiledMethod installMethod(HotSpotCompilationResult comp, boolean makeDefault, HotSpotCodeInfo info); @Override - public native HotSpotVMConfig getConfiguration(); + public native void initializeConfiguration(HotSpotVMConfig config); @Override public native JavaMethod JavaType_resolveMethodImpl(HotSpotResolvedJavaType klass, String name, String signature);
--- a/src/share/vm/graal/graalCompilerToVM.cpp Wed Sep 12 12:34:48 2012 +0200 +++ b/src/share/vm/graal/graalCompilerToVM.cpp Wed Sep 12 12:45:46 2012 +0200 @@ -707,11 +707,8 @@ BasicType basicTypes[] = { T_BOOLEAN, T_BYTE, T_SHORT, T_CHAR, T_INT, T_FLOAT, T_LONG, T_DOUBLE, T_OBJECT }; int basicTypeCount = sizeof(basicTypes) / sizeof(BasicType); -// public HotSpotVMConfig getConfiguration(); -JNIEXPORT jobject JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_getConfiguration(JNIEnv *env, jobject) { - jclass klass = env->FindClass("com/oracle/graal/hotspot/HotSpotVMConfig"); - assert(klass != NULL, "HotSpot vm config class not found"); - jobject config = env->AllocObject(klass); +// public void initializeConfiguration(HotSpotVMConfig config); +JNIEXPORT void JNICALL Java_com_oracle_graal_hotspot_bridge_CompilerToVMImpl_initializeConfiguration(JNIEnv *env, jobject, jobject config) { #ifdef _WIN64 set_boolean(env, config, "windowsOs", true); #else @@ -808,7 +805,6 @@ } set_int(env, config, "arrayClassElementOffset", in_bytes(objArrayKlass::element_klass_offset())); - return config; } // public HotSpotCompiledMethod installMethod(HotSpotCompilationResult comp, boolean installCode); @@ -1045,7 +1041,7 @@ {CC"getPrimitiveArrayType", CC"("KIND")"TYPE, FN_PTR(getPrimitiveArrayType)}, {CC"getMaxCallTargetOffset", CC"("RUNTIME_CALL")J", FN_PTR(getMaxCallTargetOffset)}, {CC"getType", CC"("CLASS")"TYPE, FN_PTR(getType)}, - {CC"getConfiguration", CC"()"CONFIG, FN_PTR(getConfiguration)}, + {CC"initializeConfiguration", CC"("CONFIG")V", FN_PTR(initializeConfiguration)}, {CC"installMethod", CC"("HS_COMP_RESULT"Z"HS_CODE_INFO")"HS_COMP_METHOD, FN_PTR(installMethod)}, {CC"disassembleNative", CC"([BJ)"STRING, FN_PTR(disassembleNative)}, {CC"JavaMethod_toStackTraceElement", CC"("RESOLVED_METHOD"I)"STACK_TRACE_ELEMENT, FN_PTR(JavaMethod_1toStackTraceElement)},