gem5ops: Implement Java JNI for gem5Ops
authorPrakash Ramrakhyani <prakash.ramrakhyani@arm.com>
Tue, 13 Sep 2011 17:06:13 +0000 (12:06 -0500)
committerPrakash Ramrakhyani <prakash.ramrakhyani@arm.com>
Tue, 13 Sep 2011 17:06:13 +0000 (12:06 -0500)
commite4830ad2eb85b9fef8f6e01b6bcbe34983f1d912
tree6d5f7c1a14144a0825221a4414eb2edb9193212e
parent28a2236ec18e3d5a82d6f7caffbf8285aec48b38
gem5ops: Implement Java JNI for gem5Ops

These ops allow gem5 ops to be called from within java programs like the following:
import jni.gem5Op;

public  class HelloWorld {

    public static void main(String[] args) {
        gem5Op gem5 = new gem5Op();
        System.out.println("Rpns0:" + gem5.rpns());
        System.out.println("Rpns1:" + gem5.rpns());
    }

    static {
        System.loadLibrary("gem5OpJni");
    }
}

When building you need to make sure classpath include gem5OpJni.jar:
javac -classpath $CLASSPATH:/path/to/gem5OpJni.jar HelloWorld.java

and when running you need to make sure both the java and library path are set:
java -classpath $CLASSPATH:/path/to/gem5OpJni.jar -Djava.library.path=/path/to/libgem5OpJni.so HelloWorld
util/m5/Makefile.arm
util/m5/jni/gem5Op.java [new file with mode: 0644]
util/m5/jni_gem5Op.c [new file with mode: 0644]