8344727: [JVMCI] Export the CompileBroker compilation activity mode for Truffle compiler control
Reviewed-by: dnsimon
This commit is contained in:
parent
8858de393a
commit
6bea1b6cf1
@ -3223,6 +3223,10 @@ C2V_VMENTRY(void, getOopMapAt, (JNIEnv* env, jobject, ARGUMENT_PAIR(method),
|
|||||||
JVMCIENV->copy_longs_from((jlong*)oop_map_buf, oop_map, 0, nwords);
|
JVMCIENV->copy_longs_from((jlong*)oop_map_buf, oop_map, 0, nwords);
|
||||||
C2V_END
|
C2V_END
|
||||||
|
|
||||||
|
C2V_VMENTRY_0(jint, getCompilationActivityMode, (JNIEnv* env, jobject))
|
||||||
|
return CompileBroker::get_compilation_activity_mode();
|
||||||
|
}
|
||||||
|
|
||||||
#define CC (char*) /*cast a literal from (const char*)*/
|
#define CC (char*) /*cast a literal from (const char*)*/
|
||||||
#define FN_PTR(f) CAST_FROM_FN_PTR(void*, &(c2v_ ## f))
|
#define FN_PTR(f) CAST_FROM_FN_PTR(void*, &(c2v_ ## f))
|
||||||
|
|
||||||
@ -3385,6 +3389,7 @@ JNINativeMethod CompilerToVM::methods[] = {
|
|||||||
{CC "notifyCompilerInliningEvent", CC "(I" HS_METHOD2 HS_METHOD2 "ZLjava/lang/String;I)V", FN_PTR(notifyCompilerInliningEvent)},
|
{CC "notifyCompilerInliningEvent", CC "(I" HS_METHOD2 HS_METHOD2 "ZLjava/lang/String;I)V", FN_PTR(notifyCompilerInliningEvent)},
|
||||||
{CC "getOopMapAt", CC "(" HS_METHOD2 "I[J)V", FN_PTR(getOopMapAt)},
|
{CC "getOopMapAt", CC "(" HS_METHOD2 "I[J)V", FN_PTR(getOopMapAt)},
|
||||||
{CC "updateCompilerThreadCanCallJava", CC "(Z)Z", FN_PTR(updateCompilerThreadCanCallJava)},
|
{CC "updateCompilerThreadCanCallJava", CC "(Z)Z", FN_PTR(updateCompilerThreadCanCallJava)},
|
||||||
|
{CC "getCompilationActivityMode", CC "()I", FN_PTR(getCompilationActivityMode)},
|
||||||
};
|
};
|
||||||
|
|
||||||
int CompilerToVM::methods_count() {
|
int CompilerToVM::methods_count() {
|
||||||
|
@ -1522,4 +1522,10 @@ final class CompilerToVM {
|
|||||||
* @returns false if no change was made, otherwise true
|
* @returns false if no change was made, otherwise true
|
||||||
*/
|
*/
|
||||||
native boolean updateCompilerThreadCanCallJava(boolean newState);
|
native boolean updateCompilerThreadCanCallJava(boolean newState);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns the current {@code CompileBroker} compilation activity mode which is one of:
|
||||||
|
* {@code stop_compilation = 0}, {@code run_compilation = 1} or {@code shutdown_compilation = 2}
|
||||||
|
*/
|
||||||
|
native int getCompilationActivityMode();
|
||||||
}
|
}
|
||||||
|
@ -1488,4 +1488,12 @@ public final class HotSpotJVMCIRuntime implements JVMCIRuntime {
|
|||||||
exitHotSpot(status);
|
exitHotSpot(status);
|
||||||
throw JVMCIError.shouldNotReachHere();
|
throw JVMCIError.shouldNotReachHere();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Returns HotSpot's {@code CompileBroker} compilation activity mode which is one of:
|
||||||
|
* {@code stop_compilation = 0}, {@code run_compilation = 1} or {@code shutdown_compilation = 2}
|
||||||
|
*/
|
||||||
|
public int getCompilationActivityMode() {
|
||||||
|
return compilerToVm.getCompilationActivityMode();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user