From: Arvin S. <ar...@us...> - 2002-02-28 01:25:04
|
>> Also, is it possible to add a flag to jbuild to tell it to run the JVM without a JIT, so that I can >> see line numbers in the stack trace? Try setting the environment variable JAVA_COMPILER=NONE Regards, Arvin ----------------------------------------------------------------------------- Arvin D. Shepherd (ar...@wa...) IBM T.J. Watson Research 914-784-7574 Tie Line 863-7574 |
From: Stephen F. <sj...@us...> - 2002-02-28 01:37:33
|
Hi John, This method was originally private; we changed it to be public which was probably a mistake. I'm going to try to change it back to be private, and issue a new version of the libraries. I hope to do this tomorrow. SJF ------------------------------------------------------------------------ Stephen Fink IBM T.J. Watson Research Center sj...@us... (914)784-7776 John Leuner <je...@pi...> Sent by: To: jik...@ww... jik...@ww...uthbury. cc: usf.ibm.com Subject: [Jikesrvm-researchers] VM_Compiler assertion failure 02/27/2002 05:12 PM Please respond to jikesrvm-researchers I'm busy doing work porting the GNU Classpath java libraries to the JRVM. I am systematically adding GNU classes and changing whatever needs to be changed to make it work. I added java.lang.String and java.lang.StringBuffer (since String depends on StringBuffer) and got an exception while creating the boot image: onetwo java.lang.Integer.parseInt (Ljava/lang/String;)I isloaded true onetwo java.lang.Integer.parseInt (Ljava/lang/String;I)I isloaded true onetwo java.lang.Integer.parseInt (Ljava/lang/String;I)I isloaded true onetwo java.lang.String.length ()I isloaded true onetwo java.lang.String.charAt (I)C isloaded true onetwo java.lang.String.charAt (I)C isloaded true onetwo java.lang.Character.digit (CI)I isloaded true onetwo java.lang.Integer.toBinaryString (I)Ljava/lang/String; isloaded true onetwo java.lang.String.<init> (II[C)V isloaded false Exception in thread "main" java.lang.RuntimeException: vm internal error at: at VM._assertionFailure(VM.java:281) at VM.assert(VM.java(Compiled Code)) at VM.assert(VM.java(Compiled Code)) at VM_Method.getOffset(VM_Method.java(Compiled Code)) at VM_Compiler.genCode(VM_Compiler.java(Compiled Code)) at VM_Compiler.compile(VM_Compiler.java(Compiled Code)) at VM_Method.compile(VM_Method.java(Compiled Code)) at VM_Method.compile(VM_Method.java(Compiled Code)) at VM_Class.instantiate(VM_Class.java(Compiled Code)) at VM_Class.instantiate(VM_Class.java(Compiled Code)) at BootImageWriter2.createBootImageObjects(BootImageWriter2.java:732) at BootImageWriter2.main(BootImageWriter2.java:384) make: *** [/mnt/dev/jrvm2.02/build/RVM.image] Error 1 I added some debugging code to VM_Method (which is the output you see above): public final int getOffset() { VM.sysWrite("\none"); if (VM.VerifyAssertions) VM.assert(declaringClass.isResolved()); VM.sysWrite("two " + toString() + " isloaded " + isLoaded()); if (VM.VerifyAssertions) VM.assert(isLoaded()); return offset; } The Classpath String class doesn't have a (II[C) constructor, it only has a ([CII) constructor. I looked at the Java API (1.3) and it doesn't have this constructor either. So I'm guessing that the IBM class libraries contain some method that uses this constructor. Can someone have a look at the class library code and tell me what this constructor does? Or if possible, point out which classes use this constructor? Is there some other mechanism I could use to pick up these missing methods, besides looking for this assertion failure? Also, is it possible to add a flag to jbuild to tell it to run the JVM without a JIT, so that I can see line numbers in the stack trace? Thanks John Leuner _______________________________________________ Jikesrvm-researchers mailing list Jik...@ww... http://www-124.ibm.com/developerworks/oss/mailman/listinfo/jikesrvm-researchers |
From: Stephen F. <sj...@us...> - 2002-02-28 16:44:44
|
The new library version, which makes this method private, is now available. SJF ------------------------------------------------------------------------ Stephen Fink IBM T.J. Watson Research Center sj...@us... (914)784-7776 John Leuner <je...@pi...> Sent by: To: jik...@ww... jik...@ww...uthbury. cc: usf.ibm.com Subject: [Jikesrvm-researchers] VM_Compiler assertion failure 02/27/2002 05:12 PM Please respond to jikesrvm-researchers I'm busy doing work porting the GNU Classpath java libraries to the JRVM. I am systematically adding GNU classes and changing whatever needs to be changed to make it work. I added java.lang.String and java.lang.StringBuffer (since String depends on StringBuffer) and got an exception while creating the boot image: onetwo java.lang.Integer.parseInt (Ljava/lang/String;)I isloaded true onetwo java.lang.Integer.parseInt (Ljava/lang/String;I)I isloaded true onetwo java.lang.Integer.parseInt (Ljava/lang/String;I)I isloaded true onetwo java.lang.String.length ()I isloaded true onetwo java.lang.String.charAt (I)C isloaded true onetwo java.lang.String.charAt (I)C isloaded true onetwo java.lang.Character.digit (CI)I isloaded true onetwo java.lang.Integer.toBinaryString (I)Ljava/lang/String; isloaded true onetwo java.lang.String.<init> (II[C)V isloaded false Exception in thread "main" java.lang.RuntimeException: vm internal error at: at VM._assertionFailure(VM.java:281) at VM.assert(VM.java(Compiled Code)) at VM.assert(VM.java(Compiled Code)) at VM_Method.getOffset(VM_Method.java(Compiled Code)) at VM_Compiler.genCode(VM_Compiler.java(Compiled Code)) at VM_Compiler.compile(VM_Compiler.java(Compiled Code)) at VM_Method.compile(VM_Method.java(Compiled Code)) at VM_Method.compile(VM_Method.java(Compiled Code)) at VM_Class.instantiate(VM_Class.java(Compiled Code)) at VM_Class.instantiate(VM_Class.java(Compiled Code)) at BootImageWriter2.createBootImageObjects(BootImageWriter2.java:732) at BootImageWriter2.main(BootImageWriter2.java:384) make: *** [/mnt/dev/jrvm2.02/build/RVM.image] Error 1 I added some debugging code to VM_Method (which is the output you see above): public final int getOffset() { VM.sysWrite("\none"); if (VM.VerifyAssertions) VM.assert(declaringClass.isResolved()); VM.sysWrite("two " + toString() + " isloaded " + isLoaded()); if (VM.VerifyAssertions) VM.assert(isLoaded()); return offset; } The Classpath String class doesn't have a (II[C) constructor, it only has a ([CII) constructor. I looked at the Java API (1.3) and it doesn't have this constructor either. So I'm guessing that the IBM class libraries contain some method that uses this constructor. Can someone have a look at the class library code and tell me what this constructor does? Or if possible, point out which classes use this constructor? Is there some other mechanism I could use to pick up these missing methods, besides looking for this assertion failure? Also, is it possible to add a flag to jbuild to tell it to run the JVM without a JIT, so that I can see line numbers in the stack trace? Thanks John Leuner _______________________________________________ Jikesrvm-researchers mailing list Jik...@ww... http://www-124.ibm.com/developerworks/oss/mailman/listinfo/jikesrvm-researchers |
From: John L. <je...@pi...> - 2002-02-28 16:54:29
|
> The new library version, which makes this method private, is now available. Has the version changed? The link on the website has the same version number. John Leuner |