util: update Java JNI interface to m5ops

Synchronize with
ab19693da "pseudo inst,util: Add optional key to initparam pseudo instruction"
This commit is contained in:
Prakash Ramrakhyani 2016-02-29 19:13:15 -06:00
parent f703160e5a
commit fed0ea55c4
2 changed files with 12 additions and 4 deletions

View file

@ -53,7 +53,8 @@ public class gem5Op {
public native void wakeCPU(long cpuid); public native void wakeCPU(long cpuid);
public native void exit(long ns_delay); public native void exit(long ns_delay);
public native long initparam(); public native void fail(long ns_delay, long code);
public native long initparam(long key_str1, long key_str2);
public native void checkpoint(long ns_delay, long ns_period); public native void checkpoint(long ns_delay, long ns_period);
public native void reset_stats(long ns_delay, long ns_period); public native void reset_stats(long ns_delay, long ns_period);
public native void dump_stats(long ns_delay, long ns_period); public native void dump_stats(long ns_delay, long ns_period);

View file

@ -101,10 +101,17 @@ Java_jni_gem5Op_exit(JNIEnv *env, jobject obj, jlong j_ns_delay)
m5_exit(j_ns_delay); m5_exit(j_ns_delay);
} }
JNIEXPORT jlong JNICALL JNIEXPORT void JNICALL
Java_jni_gem5Op_initparam(JNIEnv *env, jobject obj) Java_jni_gem5Op_fail(JNIEnv *env, jobject obj, jlong j_ns_delay, jlong j_code)
{ {
uint64_t param = m5_initparam(); m5_fail(j_ns_delay, j_code);
}
JNIEXPORT jlong JNICALL
Java_jni_gem5Op_initparam(JNIEnv *env, jobject obj, jlong j_key_str1,
jlong j_key_str2)
{
uint64_t param = m5_initparam(j_key_str1, j_key_str2);
if (param & 0x8000000000000000ULL) if (param & 0x8000000000000000ULL)
printf("Truncated return value from m_initparam() to 63 bits\n"); printf("Truncated return value from m_initparam() to 63 bits\n");
return (param & 0x7FFFFFFFFFFFFFFFULL); return (param & 0x7FFFFFFFFFFFFFFFULL);