jamvm-general Mailing List for JamVM (Page 4)
Brought to you by:
rlougher
You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(44) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(5) |
Feb
|
Mar
(33) |
Apr
(12) |
May
(18) |
Jun
(8) |
Jul
(6) |
Aug
(5) |
Sep
(33) |
Oct
(16) |
Nov
(35) |
Dec
(25) |
2006 |
Jan
(44) |
Feb
(1) |
Mar
(38) |
Apr
(14) |
May
(42) |
Jun
(8) |
Jul
(9) |
Aug
(5) |
Sep
(1) |
Oct
(16) |
Nov
(14) |
Dec
(16) |
2007 |
Jan
(3) |
Feb
(17) |
Mar
(19) |
Apr
(16) |
May
(7) |
Jun
(17) |
Jul
(22) |
Aug
(7) |
Sep
|
Oct
(28) |
Nov
(15) |
Dec
(4) |
2008 |
Jan
(4) |
Feb
(21) |
Mar
(16) |
Apr
(11) |
May
(18) |
Jun
(25) |
Jul
(8) |
Aug
(14) |
Sep
(5) |
Oct
(35) |
Nov
(8) |
Dec
(30) |
2009 |
Jan
(2) |
Feb
(2) |
Mar
(8) |
Apr
(9) |
May
(14) |
Jun
(9) |
Jul
(10) |
Aug
(7) |
Sep
(8) |
Oct
(4) |
Nov
(12) |
Dec
(2) |
2010 |
Jan
(12) |
Feb
(16) |
Mar
(16) |
Apr
(5) |
May
(4) |
Jun
(4) |
Jul
(3) |
Aug
(11) |
Sep
(2) |
Oct
|
Nov
(1) |
Dec
(4) |
2011 |
Jan
(1) |
Feb
|
Mar
(43) |
Apr
(1) |
May
(1) |
Jun
(13) |
Jul
(21) |
Aug
(11) |
Sep
(3) |
Oct
|
Nov
|
Dec
(1) |
2012 |
Jan
|
Feb
(5) |
Mar
(1) |
Apr
|
May
(1) |
Jun
(19) |
Jul
(4) |
Aug
|
Sep
(1) |
Oct
|
Nov
(2) |
Dec
(12) |
2013 |
Jan
|
Feb
(1) |
Mar
(10) |
Apr
(22) |
May
(1) |
Jun
(3) |
Jul
|
Aug
(2) |
Sep
(6) |
Oct
(3) |
Nov
(4) |
Dec
(3) |
2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(11) |
Jun
(4) |
Jul
(1) |
Aug
(4) |
Sep
|
Oct
(16) |
Nov
|
Dec
|
2015 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
|
2016 |
Jan
(1) |
Feb
(2) |
Mar
(1) |
Apr
(4) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(4) |
Nov
|
Dec
|
2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2018 |
Jan
(2) |
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
(1) |
From: Xerxes R. <xe...@za...> - 2013-08-14 16:11:29
|
2013-08-14 17:37, Andrew Hughes skrev: >> >> JamVM: JSR 335: Lambda Expressions; JSR 292: enable for OpenJDK 7/IcedTea 2; >> Updated to 2013-07-14 revision. >> >> 2013-08-14 Xerxes R?nby <xe...@za...> >> Robert Lougher <ro...@ja...> >> > > Is there a new release of JamVM imminent? We're nearing a 1.13.0 release > and it would be better to use a known release rather than random snapshots. > I will forward the JamVM release question to the jamvm-general mailinglist; "IcedTea is the primary upstream client for JamVM/OpenJDK" - Robert Lougher http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=1a58072f8339270f9372c273d82a00790e04375d Cheers Xerxes |
From: Christopher F. <chr...@gm...> - 2013-08-07 03:55:41
|
Hi list, I've done some experimenting with Jamvm-1.5.4 and classpath-0.98 w.r.t. ByteBuffer, MappedByteBuffer, etc. Rob, I emailed you off-list about this a while back. The short version of this email results in a question I'd like to ask the list (and Rob of course) so feel free to skip ahead to "@Q@" for the short version. My experimentation has involved a couple of key things: (1) Small patch for jamvm-1.5.4 to support Darwin / x86_64 (just for quick prototyping on my Mac) (2) Small patch for classpath-0.98 that allows it to map special files (i.e. those in /dev such as /dev/fb0) (3) Slightly larger patch for classpath-0.98 and jamvm-1.5.4 that provided a byte[] backing_buffer for both heap and non-heap / non-stack sections of virtual memory, e.g. pages returned by mmap(... some fd ... ). The idea is to realize the *ByteBuffer.array() functionality, allowing interpreted Java bytecode to write directly to memory rather than relying on JNI to get() and put(). The implementation of (3) wasn't very pretty, but the speedup is obvious (Darwin / x86_64). The result is a bounds-checked, reference-counted, and properly finalized byte[] . bb.capacity:4194304 bb.isReadOnly:false bb.hasArray:true bb.isDirect:true bb.array:[B@adff288 Testing ByteBuffer.put() with 4194304 random bytes ... 5568252000 ns Testing ByteBuffer.array() writes with 4194304 random bytes ... 622120000 ns speedup:8.950446859126856 That is all fine and dandy. However, there is an issue about supporting ByteBuffer.asIntBuffer() and friends. The issue here has to do with JamVM's representation of a primitive array in memory. Don't get me wrong, it's actually a really simple and efficient solution. The current solution is to allocate [ data:(size*element_size) + capacity:sizeof(uintptr_t) + class:sizeof(Object) ]. The uintptr_t just encodes the number of elements in the array, while the Object includes a lock (mandatory) and a pointer the primitive array Class. To realize an efficient implementation of the ByteBuffer.asIntBuffer() for a ByteBuffer with backing_buffer (i.e. array() realized), there should really be a way to allocate only the header of the int[] Object but with an additional uintptr_t. E.g. (mind the pseudo code) if ( address ) { // do not allocate data, but point to other potentially non-local page x = allocate [ capacity:sizeof(uintptr_t) + pointer:sizeof(uintptr_t) + class:sizeof(Object) ] x.capacity = capacity x.pointer = address x.class = class } else { // normal array allocation, note pointer is page-localized to object x = allocate [ data:(size * element_size) + capacity:sizeof(uintptr_t) + pointer:sizeof(uintptr_t) + sizeof(Object) ] x.capacity = capacity x.pointer = &x.data x.class = class clear(&x.data) } According to the javadoc for asIntBuffer() and friends, both original byte[] and new int[] should have equal access capabilities to the same underlying region of memory. If one used JNI to change the underlying byte[] Object into an int[] Object (kind of subversively), then the original byte[] would be mangled with jamvm's current primitive array implementation. The price for the 2-dereference method: (i) An extra uintptr_t per array. (iI) the interpreter would get a small hit because it would need to dereference twice (once for the x pointer and once for "pointer") rather than once, as it is currently. My guess is that the cpu and memory caches would probably be pretty forgiving for this overhead, but I could be spouting hot air. AFAIK, making the necessary modifications to the interpreter to do this shouldn't be a problem. I guess that the reference count for the original byte[] would need to be increased, but that's also not too difficult. @Q@ In the design for primitive array representation in JamVM, was the two-dereference idea considered? If not, why and would it be considered for any up-coming releases of JamVM? Thanks, C |
From: johann S. <sor...@in...> - 2013-06-05 18:14:23
|
Thanks for the details, here are a few more questions : Is making an implementation of java.lang.* classes an obligation ? How can I say... I would like to plug in JamVM at a lower level, under the 'java protocol'. I see there is a specific libjvm.so so it looks like all the java binding occurs in it, so maybe it could be possible to make a different binding ? Is there some kind of jamVM kernel isolated from the java model ? Johann Sorel > -----Original Message----- > From: xe...@za... > Sent: Wed, 05 Jun 2013 13:00:30 +0200 > To: sor...@in..., jam...@li... > Subject: Re: [Jamvm-general] Proof Of Concept : an alternative to OpenJDK > > 2013-06-03 23:41, johann Sorel skrev: >> Hello > > Hi Johann! > >> >> I would like some advices from some peoples working on JamVM : >> >> I have been working for several months now on a public domain general >> purpose library (think of it as a replacement to the ClassPath lib). The >> projet is going pretty well and is starting to be self sufficient. (for >> those interested : https://bitbucket.org/Eclesia/un/wiki/Home) >> >> Now I would like to make a Proof Of Concept that my project can live on >> it's own without the JVM APIs and classes. Basicly I would like to >> obtain a draft of VM using JamVM as "kernel" and my project as the main >> library. > > You can use the jamvm libjvm.so standalone in combination with your own > projects class library > >> >> - Can JamVM be used without ClassPath/OpenJDK ? > yes create your own jvm launcher using the "JNI Invocation Interface" > I recommend you to take a look at Chapter 7 (page 83) of the "The Java™ > Native Interface Programmer’s Guide and Specification" book > http://web.archive.org/web/20120905183616/http://java.sun.com/docs/books/jni/download/jni.pdf > >> - Will I need to code some JNI for low level operations ? >> or are they provided ? (Streams,Sockets,...) > You need to implement all classes you need like a ClassLoader, String, > Object and Class class. And you need to use JNI to do low level > operations. > > >> >> If you think it is possible : where should I start ? >> >> Thanks >> >> Johann Sorel > > > jamvm libjvm finds the JRE classes relative to the libjvm.so thus the > folder layout is important. > You may setup a project structure like this: > > jamvmMini$ find . > . > ./compile.sh > ./jre > ./jre/classes/java/lang/Object.java <-- you will have to provide your own > implementation of all java/lang classes > ./jre/classes/java/lang/String.java > ./jre/classes/java/lang/Class.java > ./jre/classes/java/lang/ClassLoader.java > ./jre/classes/java/lang/... > ./jre/lib/jvm/jamvm/libjvm.so <- jamvm built using instructions from: > http://draenog.blogspot.se/2011/02/openjdkjamvm-git-repository.html > ./Prog.java <- the main application to run > ./myJVM.c <- example code from "Chapter 7 (page 83) of the "The Java™ > Native Interface Programmer’s Guide and Specification" book" > ./run.sh > > jamvmMini$ cat compile.sh > #compile launcher > gcc myJVM.c -ljvm -L./jre/lib/jvm/jamvm/ > #compile java.lang classes > cd jre/classes > javac java/lang/*.java > cd ../../ > #compile application > javac Prog.java > #compile jamvm launcher > gcc myJVM.c -o jamvm-launcher -ljvm -L./jre/lib/jvm/jamvm/ > > jamvmMini$ cat run.sh > #run launcher > LD_LIBRARY_PATH=./jre/lib/jvm/jamvm/ ./jamvm-launcher > > Cheers > Xerxes ____________________________________________________________ FREE 3D MARINE AQUARIUM SCREENSAVER - Watch dolphins, sharks & orcas on your desktop! Check it out at http://www.inbox.com/marineaquarium |
From: Xerxes R. <xe...@za...> - 2013-06-05 10:58:43
|
2013-06-03 23:41, johann Sorel skrev: > Hello Hi Johann! > > I would like some advices from some peoples working on JamVM : > > I have been working for several months now on a public domain general purpose library (think of it as a replacement to the ClassPath lib). The projet is going pretty well and is starting to be self sufficient. (for those interested : https://bitbucket.org/Eclesia/un/wiki/Home) > > Now I would like to make a Proof Of Concept that my project can live on it's own without the JVM APIs and classes. Basicly I would like to obtain a draft of VM using JamVM as "kernel" and my project as the main library. You can use the jamvm libjvm.so standalone in combination with your own projects class library > > - Can JamVM be used without ClassPath/OpenJDK ? yes create your own jvm launcher using the "JNI Invocation Interface" I recommend you to take a look at Chapter 7 (page 83) of the "The Java™ Native Interface Programmer’s Guide and Specification" book http://web.archive.org/web/20120905183616/http://java.sun.com/docs/books/jni/download/jni.pdf > - Will I need to code some JNI for low level operations ? > or are they provided ? (Streams,Sockets,...) You need to implement all classes you need like a ClassLoader, String, Object and Class class. And you need to use JNI to do low level operations. > > If you think it is possible : where should I start ? > > Thanks > > Johann Sorel jamvm libjvm finds the JRE classes relative to the libjvm.so thus the folder layout is important. You may setup a project structure like this: jamvmMini$ find . . ./compile.sh ./jre ./jre/classes/java/lang/Object.java <-- you will have to provide your own implementation of all java/lang classes ./jre/classes/java/lang/String.java ./jre/classes/java/lang/Class.java ./jre/classes/java/lang/ClassLoader.java ./jre/classes/java/lang/... ./jre/lib/jvm/jamvm/libjvm.so <- jamvm built using instructions from: http://draenog.blogspot.se/2011/02/openjdkjamvm-git-repository.html ./Prog.java <- the main application to run ./myJVM.c <- example code from "Chapter 7 (page 83) of the "The Java™ Native Interface Programmer’s Guide and Specification" book" ./run.sh jamvmMini$ cat compile.sh #compile launcher gcc myJVM.c -ljvm -L./jre/lib/jvm/jamvm/ #compile java.lang classes cd jre/classes javac java/lang/*.java cd ../../ #compile application javac Prog.java #compile jamvm launcher gcc myJVM.c -o jamvm-launcher -ljvm -L./jre/lib/jvm/jamvm/ jamvmMini$ cat run.sh #run launcher LD_LIBRARY_PATH=./jre/lib/jvm/jamvm/ ./jamvm-launcher Cheers Xerxes |
From: johann S. <sor...@in...> - 2013-06-03 21:41:09
|
Hello I would like some advices from some peoples working on JamVM : I have been working for several months now on a public domain general purpose library (think of it as a replacement to the ClassPath lib). The projet is going pretty well and is starting to be self sufficient. (for those interested : https://bitbucket.org/Eclesia/un/wiki/Home) Now I would like to make a Proof Of Concept that my project can live on it's own without the JVM APIs and classes. Basicly I would like to obtain a draft of VM using JamVM as "kernel" and my project as the main library. - Can JamVM be used without ClassPath/OpenJDK ? - Will I need to code some JNI for low level operations ? or are they provided ? (Streams,Sockets,...) If you think it is possible : where should I start ? Thanks Johann Sorel ____________________________________________________________ Receive Notifications of Incoming Messages Easily monitor multiple email accounts & access them with a click. Visit http://www.inbox.com/notifier and check it out! |
From: Xerxes R. <xe...@za...> - 2013-05-07 11:47:45
|
I have updated IcedTea 1, 2 & 3 to now use the same JamVM 2013-05-06 revision: http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=7c8dceb90880616b7dd670f257961a1f5f371ec3 The IcedTea 1, 2 & 3 update is now committed here: http://icedtea.classpath.org/hg/icedtea/rev/2e8f301c5848 http://icedtea.classpath.org/hg/icedtea7/rev/933d082ec889 http://icedtea.classpath.org/hg/icedtea6/rev/c23f233213f4 I have taken care to make the NEWS reflect which JamVM features are enabled in each IcedTea release. Cheers Xerxes -- View this message in context: http://old.nabble.com/IcedTea-1%2C-2---3-are-now-in-sync-using-JamVM-2013-05-06-tp35374754p35374754.html Sent from the JamVM mailing list archive at Nabble.com. |
From: Xerxes R. <xe...@za...> - 2013-04-30 13:56:35
|
2013-04-29 14:36, Robert Lougher skrev: > Hi Xerxes, > > On 26 April 2013 13:10, Xerxes Rånby <xe...@za...> wrote: >> Unfortunally I still see some issues related to isAnnotationPresent on this >> 32bit x86 system: >> I am using your latest commit b0651cde57c7a48651c99d7f4fb44ba7b2fae9b3 >> > > With the same version of IcedTea I was able to reproduce the problem. > I've checked in another fix: > > http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=938504fb92e8fd2a91276a54b0a0c7be25731c19 > > Let me know if this works for you. > > Thanks, > Rob. > Your fix made it work on my side as well. JamVM + IcedTea 3 & OpenJDK b80 is now self-hosting; KUDOS! http://icedtea.classpath.org/hg/icedtea/rev/c9942e43a65a Cheers Xerxes |
From: Robert L. <rob...@gm...> - 2013-04-29 12:36:16
|
Hi Xerxes, On 26 April 2013 13:10, Xerxes Rånby <xe...@za...> wrote: > Unfortunally I still see some issues related to isAnnotationPresent on this > 32bit x86 system: > I am using your latest commit b0651cde57c7a48651c99d7f4fb44ba7b2fae9b3 > With the same version of IcedTea I was able to reproduce the problem. I've checked in another fix: http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=938504fb92e8fd2a91276a54b0a0c7be25731c19 Let me know if this works for you. Thanks, Rob. |
From: Andrew H. <gnu...@re...> - 2013-04-29 10:27:52
|
----- Original Message ----- > Hi Andrew, > > On 26 April 2013 17:33, Andrew Hughes <gnu...@re...> wrote: > > > > > > ----- Original Message ----- > >> Hi Xerxes, > >> > >> On 26 April 2013 13:10, Xerxes Rånby <xe...@za...> wrote: > >> > > >> > Unfortunally I still see some issues related to isAnnotationPresent on > >> > this > >> > 32bit x86 system: > >> > I am using your latest commit b0651cde57c7a48651c99d7f4fb44ba7b2fae9b3 > >> > > >> > >> Must be the difference in the version of OpenJDK 8 I'm using - I'm not > >> sure what version it is - I downloaded it about 2 weeks ago. Can you > >> provide some instructions to get the version of IcedTea you're using? > >> > > > > Hi Rob, > > > > IcedTea is currently using OpenJDK 8 b80. We'll look at shifting to a > > newer > > version sooner or later, but all the security work with 6 & 7 has to take > > priority. > > > > No problem. I expect to see more issues as things get integrated into > OpenJDK 8 and "feature complete" approaches. > > > BTW, is there a particular version of JamVM you'd recommend for using with > > 7? I'm > > hoping to do a new release of IcedTea for OpenJDK 7 in the next week or so > > and > > was planning to just bump JamVM to the current git HEAD, but if there's a > > better > > point to use, I'd be happy to do that instead. Ideally, it'd be nice to > > keep all > > three in sync (6,7 & 8). > > > > Yes. I've been trying to ensure that all three can be built from the > same code base. All the new JSRs for JDK 8 are ifdefed, and aren't > built when configured for 6 or 7. This way general bug-fixes and > improvements will be shared (although most of the recent changes have > been for 8, the reworking of annotation storage will benefit all > versions). > > Thanks, > Rob. > > P.S. As far as I'm aware, the JSR292 work in JDK 8 was backported to > OpenJDK 7 (u14?). This should work with JamVM (as JSR292 support was > done for JDK 8). Hopefully at some point IcedTea-2/JamVM should be > able to get JSR292 support... > There is no u14. The next feature release will be u40 in August now, over a year after the last one (u6) (Oracle craziness...). However, this work is already used by IcedTea 2.x HEAD and so, if I bump JamVM there, we should hopefully get a working solution for the imminent 2.4.0 release. If someone wants to test that, I'd be very grateful :) > >> Thanks, > >> Rob. > >> > >> > Unrecognised bytecode XXX found while preparing > >> > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z > >> > > >> > Below i only post the output from 10 consecutive runs: > >> > > >> > xranby@xranby-ESPRIMO-P7935:~/icedtea-8-b80$ cd > >> > /home/xranby/icedtea-8-b80/openjdk/jdk/makefiles > >> > xranby@xranby-ESPRIMO-P7935:~/icedtea-8-b80/openjdk/jdk/makefiles$ > >> > /home/xranby/icedtea-8-b80/bootstrap/jdk1.7.0/bin/java -Xms64M -Xmx1100M > >> > -XX:PermSize=32m -XX:MaxPermSize=160m -XX:ThreadStackSize=1536 > >> > -XX:-PrintVMOptions -XX:-UnlockDiagnosticVMOptions -XX:-LogVMOutput -cp > >> > /home/xranby/icedtea-8-b80/openjdk.build/jdk/btclasses > >> > build.tools.generatenimbus.Generator \ > >> >> -skinFile > >> >> /home/xranby/icedtea-8-b80/openjdk/jdk/src/share/classes/javax/swing/plaf/nimbus/skin.laf > >> >> -buildDir /home/xranby/icedtea-8-b80/openjdk.build/jdk/gensrc \ > >> >> -packagePrefix javax.swing.plaf.nimbus -lafName Nimbus > >> > ### GENERATING LAF CODE ################################ > >> > > >> > #ouput run 1: > >> > Segmenteringsfel (minnesutskrift skapad) > >> > > >> > #ouput run 2: > >> > Unrecognised bytecode 235 found while preparing > >> > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z > >> > > >> > #ouput run 3: > >> > Unrecognised bytecode 224 found while preparing > >> > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z > >> > > >> > #ouput run 4: > >> > Segmenteringsfel (minnesutskrift skapad) > >> > > >> > #ouput run 5: > >> > Unrecognised bytecode 202 found while preparing > >> > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z > >> > > >> > #ouput run 6: > >> > Segmenteringsfel (minnesutskrift skapad) > >> > > >> > #ouput run 7: > >> > Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: > >> > -122622118 > >> > at > >> > java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:126) > >> > at > >> > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:50) > >> > at ... > >> > > >> > #ouput run 8: > >> > Unrecognised bytecode 208 found while preparing > >> > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z > >> > > >> > #ouput run 9: > >> > Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: > >> > -122622119 > >> > at > >> > java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:126) > >> > at > >> > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:50) > >> > at > >> > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:42)... > >> > > >> > #ouput run 10: > >> > Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: > >> > 1912329880 > >> > at > >> > java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:126) > >> > at > >> > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:50) > >> > at > >> > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:42) > >> > at > >> > com.sun.xml.internal.bind.v2.model.impl.ClassInfoImpl.findFieldProperties(ClassInfoImpl.java:367)... > >> > -- > >> > View this message in context: > >> > http://old.nabble.com/Crash-running-OpenJDK-8-build.tools.generatenimbus.Generator%2C-a-regression-since-JamVM-%2B-OpenJDK-7-tp35322824p35336632.html > >> > Sent from the JamVM mailing list archive at Nabble.com. > >> > > >> > > >> > ------------------------------------------------------------------------------ > >> > Try New Relic Now & We'll Send You this Cool Shirt > >> > New Relic is the only SaaS-based application performance monitoring > >> > service > >> > that delivers powerful full stack analytics. Optimize and monitor your > >> > browser, app, & servers with just a few lines of code. Try New Relic > >> > and get this awesome Nerd Life shirt! > >> > http://p.sf.net/sfu/newrelic_d2d_apr > >> > _______________________________________________ > >> > Jamvm-general mailing list > >> > Jam...@li... > >> > https://lists.sourceforge.net/lists/listinfo/jamvm-general > >> > >> ------------------------------------------------------------------------------ > >> Try New Relic Now & We'll Send You this Cool Shirt > >> New Relic is the only SaaS-based application performance monitoring > >> service > >> that delivers powerful full stack analytics. Optimize and monitor your > >> browser, app, & servers with just a few lines of code. Try New Relic > >> and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr > >> _______________________________________________ > >> Jamvm-general mailing list > >> Jam...@li... > >> https://lists.sourceforge.net/lists/listinfo/jamvm-general > >> > > > > -- > > Andrew :) > > > > Free Java Software Engineer > > Red Hat, Inc. (http://www.redhat.com) > > > > PGP Key: 248BDC07 (https://keys.indymedia.org/) > > Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 > > > > ------------------------------------------------------------------------------ > Try New Relic Now & We'll Send You this Cool Shirt > New Relic is the only SaaS-based application performance monitoring service > that delivers powerful full stack analytics. Optimize and monitor your > browser, app, & servers with just a few lines of code. Try New Relic > and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr > _______________________________________________ > Jamvm-general mailing list > Jam...@li... > https://lists.sourceforge.net/lists/listinfo/jamvm-general > -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 |
From: Robert L. <rob...@gm...> - 2013-04-26 20:47:06
|
Hi Andrew, On 26 April 2013 17:33, Andrew Hughes <gnu...@re...> wrote: > > > ----- Original Message ----- >> Hi Xerxes, >> >> On 26 April 2013 13:10, Xerxes Rånby <xe...@za...> wrote: >> > >> > Unfortunally I still see some issues related to isAnnotationPresent on this >> > 32bit x86 system: >> > I am using your latest commit b0651cde57c7a48651c99d7f4fb44ba7b2fae9b3 >> > >> >> Must be the difference in the version of OpenJDK 8 I'm using - I'm not >> sure what version it is - I downloaded it about 2 weeks ago. Can you >> provide some instructions to get the version of IcedTea you're using? >> > > Hi Rob, > > IcedTea is currently using OpenJDK 8 b80. We'll look at shifting to a newer > version sooner or later, but all the security work with 6 & 7 has to take priority. > No problem. I expect to see more issues as things get integrated into OpenJDK 8 and "feature complete" approaches. > BTW, is there a particular version of JamVM you'd recommend for using with 7? I'm > hoping to do a new release of IcedTea for OpenJDK 7 in the next week or so and > was planning to just bump JamVM to the current git HEAD, but if there's a better > point to use, I'd be happy to do that instead. Ideally, it'd be nice to keep all > three in sync (6,7 & 8). > Yes. I've been trying to ensure that all three can be built from the same code base. All the new JSRs for JDK 8 are ifdefed, and aren't built when configured for 6 or 7. This way general bug-fixes and improvements will be shared (although most of the recent changes have been for 8, the reworking of annotation storage will benefit all versions). Thanks, Rob. P.S. As far as I'm aware, the JSR292 work in JDK 8 was backported to OpenJDK 7 (u14?). This should work with JamVM (as JSR292 support was done for JDK 8). Hopefully at some point IcedTea-2/JamVM should be able to get JSR292 support... >> Thanks, >> Rob. >> >> > Unrecognised bytecode XXX found while preparing >> > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z >> > >> > Below i only post the output from 10 consecutive runs: >> > >> > xranby@xranby-ESPRIMO-P7935:~/icedtea-8-b80$ cd >> > /home/xranby/icedtea-8-b80/openjdk/jdk/makefiles >> > xranby@xranby-ESPRIMO-P7935:~/icedtea-8-b80/openjdk/jdk/makefiles$ >> > /home/xranby/icedtea-8-b80/bootstrap/jdk1.7.0/bin/java -Xms64M -Xmx1100M >> > -XX:PermSize=32m -XX:MaxPermSize=160m -XX:ThreadStackSize=1536 >> > -XX:-PrintVMOptions -XX:-UnlockDiagnosticVMOptions -XX:-LogVMOutput -cp >> > /home/xranby/icedtea-8-b80/openjdk.build/jdk/btclasses >> > build.tools.generatenimbus.Generator \ >> >> -skinFile >> >> /home/xranby/icedtea-8-b80/openjdk/jdk/src/share/classes/javax/swing/plaf/nimbus/skin.laf >> >> -buildDir /home/xranby/icedtea-8-b80/openjdk.build/jdk/gensrc \ >> >> -packagePrefix javax.swing.plaf.nimbus -lafName Nimbus >> > ### GENERATING LAF CODE ################################ >> > >> > #ouput run 1: >> > Segmenteringsfel (minnesutskrift skapad) >> > >> > #ouput run 2: >> > Unrecognised bytecode 235 found while preparing >> > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z >> > >> > #ouput run 3: >> > Unrecognised bytecode 224 found while preparing >> > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z >> > >> > #ouput run 4: >> > Segmenteringsfel (minnesutskrift skapad) >> > >> > #ouput run 5: >> > Unrecognised bytecode 202 found while preparing >> > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z >> > >> > #ouput run 6: >> > Segmenteringsfel (minnesutskrift skapad) >> > >> > #ouput run 7: >> > Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: >> > -122622118 >> > at >> > java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:126) >> > at >> > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:50) >> > at ... >> > >> > #ouput run 8: >> > Unrecognised bytecode 208 found while preparing >> > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z >> > >> > #ouput run 9: >> > Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: >> > -122622119 >> > at >> > java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:126) >> > at >> > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:50) >> > at >> > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:42)... >> > >> > #ouput run 10: >> > Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: >> > 1912329880 >> > at >> > java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:126) >> > at >> > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:50) >> > at >> > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:42) >> > at >> > com.sun.xml.internal.bind.v2.model.impl.ClassInfoImpl.findFieldProperties(ClassInfoImpl.java:367)... >> > -- >> > View this message in context: >> > http://old.nabble.com/Crash-running-OpenJDK-8-build.tools.generatenimbus.Generator%2C-a-regression-since-JamVM-%2B-OpenJDK-7-tp35322824p35336632.html >> > Sent from the JamVM mailing list archive at Nabble.com. >> > >> > >> > ------------------------------------------------------------------------------ >> > Try New Relic Now & We'll Send You this Cool Shirt >> > New Relic is the only SaaS-based application performance monitoring service >> > that delivers powerful full stack analytics. Optimize and monitor your >> > browser, app, & servers with just a few lines of code. Try New Relic >> > and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr >> > _______________________________________________ >> > Jamvm-general mailing list >> > Jam...@li... >> > https://lists.sourceforge.net/lists/listinfo/jamvm-general >> >> ------------------------------------------------------------------------------ >> Try New Relic Now & We'll Send You this Cool Shirt >> New Relic is the only SaaS-based application performance monitoring service >> that delivers powerful full stack analytics. Optimize and monitor your >> browser, app, & servers with just a few lines of code. Try New Relic >> and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr >> _______________________________________________ >> Jamvm-general mailing list >> Jam...@li... >> https://lists.sourceforge.net/lists/listinfo/jamvm-general >> > > -- > Andrew :) > > Free Java Software Engineer > Red Hat, Inc. (http://www.redhat.com) > > PGP Key: 248BDC07 (https://keys.indymedia.org/) > Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 > |
From: Andrew H. <gnu...@re...> - 2013-04-26 16:33:52
|
----- Original Message ----- > Hi Xerxes, > > On 26 April 2013 13:10, Xerxes Rånby <xe...@za...> wrote: > > > > Unfortunally I still see some issues related to isAnnotationPresent on this > > 32bit x86 system: > > I am using your latest commit b0651cde57c7a48651c99d7f4fb44ba7b2fae9b3 > > > > Must be the difference in the version of OpenJDK 8 I'm using - I'm not > sure what version it is - I downloaded it about 2 weeks ago. Can you > provide some instructions to get the version of IcedTea you're using? > Hi Rob, IcedTea is currently using OpenJDK 8 b80. We'll look at shifting to a newer version sooner or later, but all the security work with 6 & 7 has to take priority. BTW, is there a particular version of JamVM you'd recommend for using with 7? I'm hoping to do a new release of IcedTea for OpenJDK 7 in the next week or so and was planning to just bump JamVM to the current git HEAD, but if there's a better point to use, I'd be happy to do that instead. Ideally, it'd be nice to keep all three in sync (6,7 & 8). > Thanks, > Rob. > > > Unrecognised bytecode XXX found while preparing > > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z > > > > Below i only post the output from 10 consecutive runs: > > > > xranby@xranby-ESPRIMO-P7935:~/icedtea-8-b80$ cd > > /home/xranby/icedtea-8-b80/openjdk/jdk/makefiles > > xranby@xranby-ESPRIMO-P7935:~/icedtea-8-b80/openjdk/jdk/makefiles$ > > /home/xranby/icedtea-8-b80/bootstrap/jdk1.7.0/bin/java -Xms64M -Xmx1100M > > -XX:PermSize=32m -XX:MaxPermSize=160m -XX:ThreadStackSize=1536 > > -XX:-PrintVMOptions -XX:-UnlockDiagnosticVMOptions -XX:-LogVMOutput -cp > > /home/xranby/icedtea-8-b80/openjdk.build/jdk/btclasses > > build.tools.generatenimbus.Generator \ > >> -skinFile > >> /home/xranby/icedtea-8-b80/openjdk/jdk/src/share/classes/javax/swing/plaf/nimbus/skin.laf > >> -buildDir /home/xranby/icedtea-8-b80/openjdk.build/jdk/gensrc \ > >> -packagePrefix javax.swing.plaf.nimbus -lafName Nimbus > > ### GENERATING LAF CODE ################################ > > > > #ouput run 1: > > Segmenteringsfel (minnesutskrift skapad) > > > > #ouput run 2: > > Unrecognised bytecode 235 found while preparing > > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z > > > > #ouput run 3: > > Unrecognised bytecode 224 found while preparing > > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z > > > > #ouput run 4: > > Segmenteringsfel (minnesutskrift skapad) > > > > #ouput run 5: > > Unrecognised bytecode 202 found while preparing > > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z > > > > #ouput run 6: > > Segmenteringsfel (minnesutskrift skapad) > > > > #ouput run 7: > > Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: > > -122622118 > > at > > java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:126) > > at > > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:50) > > at ... > > > > #ouput run 8: > > Unrecognised bytecode 208 found while preparing > > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z > > > > #ouput run 9: > > Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: > > -122622119 > > at > > java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:126) > > at > > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:50) > > at > > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:42)... > > > > #ouput run 10: > > Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: > > 1912329880 > > at > > java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:126) > > at > > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:50) > > at > > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:42) > > at > > com.sun.xml.internal.bind.v2.model.impl.ClassInfoImpl.findFieldProperties(ClassInfoImpl.java:367)... > > -- > > View this message in context: > > http://old.nabble.com/Crash-running-OpenJDK-8-build.tools.generatenimbus.Generator%2C-a-regression-since-JamVM-%2B-OpenJDK-7-tp35322824p35336632.html > > Sent from the JamVM mailing list archive at Nabble.com. > > > > > > ------------------------------------------------------------------------------ > > Try New Relic Now & We'll Send You this Cool Shirt > > New Relic is the only SaaS-based application performance monitoring service > > that delivers powerful full stack analytics. Optimize and monitor your > > browser, app, & servers with just a few lines of code. Try New Relic > > and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr > > _______________________________________________ > > Jamvm-general mailing list > > Jam...@li... > > https://lists.sourceforge.net/lists/listinfo/jamvm-general > > ------------------------------------------------------------------------------ > Try New Relic Now & We'll Send You this Cool Shirt > New Relic is the only SaaS-based application performance monitoring service > that delivers powerful full stack analytics. Optimize and monitor your > browser, app, & servers with just a few lines of code. Try New Relic > and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr > _______________________________________________ > Jamvm-general mailing list > Jam...@li... > https://lists.sourceforge.net/lists/listinfo/jamvm-general > -- Andrew :) Free Java Software Engineer Red Hat, Inc. (http://www.redhat.com) PGP Key: 248BDC07 (https://keys.indymedia.org/) Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07 |
From: Xerxes R. <xe...@za...> - 2013-04-26 14:27:10
|
2013-04-26 16:07, Robert Lougher skrev: > Hi Xerxes, > > On 26 April 2013 13:10, Xerxes Rånby <xe...@za...> wrote: >> >> Unfortunally I still see some issues related to isAnnotationPresent on this >> 32bit x86 system: >> I am using your latest commit b0651cde57c7a48651c99d7f4fb44ba7b2fae9b3 >> > > Must be the difference in the version of OpenJDK 8 I'm using - I'm not > sure what version it is - I downloaded it about 2 weeks ago. Can you > provide some instructions to get the version of IcedTea you're using? > > Thanks, > Rob. Setup instructions: #install icedtea build dependencies if needed sudo apt-get build-dep openjdk-7 #first checkout the current icedtea 3 hg hg clone http://icedtea.classpath.org/hg/icedtea cd icedtea #patch icedtea with the attached patch inside this mail patch -p1 < ../icedtea-3-jamvm-2013-04-26.patch #patching file ChangeLog #patching file Makefile.am #patching file NEWS #now run autogen ./autogen.sh #create a build directory mkdir ../icedtea-build cd ../icedtea-build #configure the build # on some machines you need to pass --with-jdk-home=/usr/lib/jvm/java-7-openjdk-i386 ../icedtea/configure --enable-jamvm #run make make #heads up #On my machine I run into an annoying build issue before hitting the jamvm bug described above #during linking of pack200 http://icedtea.classpath.org/bugzilla/show_bug.cgi?id=1413 #the workaround on my machine is to rerun the failed gcc command with -lz at the end cd openjdk-boot/jdk/makefiles /usr/bin/gcc-4.6 -lz -Xlinker --hash-style=both -Xlinker -z -Xlinker defs -Xlinker -O1 -Xlinker --allow-shlib-undefined -Xlinker -soname=libunpack.so -Xlinker -z -Xlinker origin -Xlinker -rpath -Xlinker \$ORIGIN -lc -Xlinker -version-script=/home/xranby/icedtea-8-b80/openjdk-boot/jdk/makefiles/mapfiles/libunpack/mapfile-vers-unpack200 -o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/unpackexe/unpack200 /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/unpackexe/bands.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/unpackexe/bytes.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/unpackexe/coding.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/unpackexe/main.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/unpackexe/unpack.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/unpackexe/utils.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/unpackexe/zip.o -lstdc++ -lz cd ../../../ #and then restart make make #the build will then continue to the point where it fails to generate the nimbus code using jamvm. Cheers Xerxes |
From: Robert L. <rob...@gm...> - 2013-04-26 14:07:45
|
Hi Xerxes, On 26 April 2013 13:10, Xerxes Rånby <xe...@za...> wrote: > > Unfortunally I still see some issues related to isAnnotationPresent on this > 32bit x86 system: > I am using your latest commit b0651cde57c7a48651c99d7f4fb44ba7b2fae9b3 > Must be the difference in the version of OpenJDK 8 I'm using - I'm not sure what version it is - I downloaded it about 2 weeks ago. Can you provide some instructions to get the version of IcedTea you're using? Thanks, Rob. > Unrecognised bytecode XXX found while preparing > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z > > Below i only post the output from 10 consecutive runs: > > xranby@xranby-ESPRIMO-P7935:~/icedtea-8-b80$ cd > /home/xranby/icedtea-8-b80/openjdk/jdk/makefiles > xranby@xranby-ESPRIMO-P7935:~/icedtea-8-b80/openjdk/jdk/makefiles$ > /home/xranby/icedtea-8-b80/bootstrap/jdk1.7.0/bin/java -Xms64M -Xmx1100M > -XX:PermSize=32m -XX:MaxPermSize=160m -XX:ThreadStackSize=1536 > -XX:-PrintVMOptions -XX:-UnlockDiagnosticVMOptions -XX:-LogVMOutput -cp > /home/xranby/icedtea-8-b80/openjdk.build/jdk/btclasses > build.tools.generatenimbus.Generator \ >> -skinFile >> /home/xranby/icedtea-8-b80/openjdk/jdk/src/share/classes/javax/swing/plaf/nimbus/skin.laf >> -buildDir /home/xranby/icedtea-8-b80/openjdk.build/jdk/gensrc \ >> -packagePrefix javax.swing.plaf.nimbus -lafName Nimbus > ### GENERATING LAF CODE ################################ > > #ouput run 1: > Segmenteringsfel (minnesutskrift skapad) > > #ouput run 2: > Unrecognised bytecode 235 found while preparing > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z > > #ouput run 3: > Unrecognised bytecode 224 found while preparing > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z > > #ouput run 4: > Segmenteringsfel (minnesutskrift skapad) > > #ouput run 5: > Unrecognised bytecode 202 found while preparing > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z > > #ouput run 6: > Segmenteringsfel (minnesutskrift skapad) > > #ouput run 7: > Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: > -122622118 > at > java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:126) > at > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:50) > at ... > > #ouput run 8: > Unrecognised bytecode 208 found while preparing > java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z > > #ouput run 9: > Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: > -122622119 > at > java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:126) > at > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:50) > at > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:42)... > > #ouput run 10: > Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: > 1912329880 > at > java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:126) > at > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:50) > at > com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:42) > at > com.sun.xml.internal.bind.v2.model.impl.ClassInfoImpl.findFieldProperties(ClassInfoImpl.java:367)... > -- > View this message in context: http://old.nabble.com/Crash-running-OpenJDK-8-build.tools.generatenimbus.Generator%2C-a-regression-since-JamVM-%2B-OpenJDK-7-tp35322824p35336632.html > Sent from the JamVM mailing list archive at Nabble.com. > > > ------------------------------------------------------------------------------ > Try New Relic Now & We'll Send You this Cool Shirt > New Relic is the only SaaS-based application performance monitoring service > that delivers powerful full stack analytics. Optimize and monitor your > browser, app, & servers with just a few lines of code. Try New Relic > and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr > _______________________________________________ > Jamvm-general mailing list > Jam...@li... > https://lists.sourceforge.net/lists/listinfo/jamvm-general |
From: Xerxes R. <xe...@za...> - 2013-04-26 12:10:18
|
Robert Lougher wrote: > > Hi Xerxes, > > On 22 April 2013 12:38, Xerxes Rånby <xerxes@...> wrote: >> >> The jamvm+openjdk 8 bootstrap compiler crash while running the Nimbus LAF >> build.tools.generatenimbus.Generator. >> /home/xranby/icedtea-8-b80/bootstrap/jdk1.7.0/bin/java -version >> openjdk version "1.8.0-fcs" >> OpenJDK Runtime Environment (build 1.8.0-fcs-xranby_2013_04_22_12_10-b00) >> JamVM (build 1.6.0-devel, inline-threaded interpreter with stack-caching) >> based on jamvm source git commit: >> http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=da518b74fed8d3fe986543d222a45c54efdad5ef >> >> I can run the same generator correctly without observing any of the below >> mentioned three crash variants using JamVM + OpenJDK 7 based on JamVM >> source >> git commit: >> http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=0972452d441544f7dd29c55d64f1ce3a5db90d82 >> >> All logs below was produced on a 32bit x86 Ubuntu 12.04 system. >> >> Testcase: >> # inside a openjdk 8 source tree run: >> cd /home/xranby/icedtea-8-b80/openjdk/jdk/makefiles >> /home/xranby/icedtea-8-b80/bootstrap/jdk1.7.0/bin/java -Xms64M -Xmx1100M >> -XX:PermSize=32m -XX:MaxPermSize=160m -XX:ThreadStackSize=1536 >> -XX:-PrintVMOptions -XX:-UnlockDiagnosticVMOptions -XX:-LogVMOutput -cp >> /home/xranby/icedtea-8-b80/openjdk.build/jdk/btclasses >> build.tools.generatenimbus.Generator -skinFile >> /home/xranby/icedtea-8-b80/openjdk/jdk/src/share/classes/javax/swing/plaf/nimbus/skin.laf >> -buildDir /home/xranby/icedtea-8-b80/openjdk.build/jdk/gensrc >> -packagePrefix javax.swing.plaf.nimbus -lafName Nimbus >> > > With the testcase I was able to reproduce the problem. Unfortunately > I don't see exactly the same behaviour but I'm using OpenJDK 8 rather > than IcedTea and AMD64. So it may be a different issue but hopefully > not... > > The issue I'm seeing is related to JSR335, specifically an > invokespecial on a default interface method (isAnnotationPresent),. > This should now be fixed: > > http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=b0651cde57c7a48651c99d7f4fb44ba7b2fae9b3 > > Thanks, > Rob. > Unfortunally I still see some issues related to isAnnotationPresent on this 32bit x86 system: I am using your latest commit b0651cde57c7a48651c99d7f4fb44ba7b2fae9b3 Unrecognised bytecode XXX found while preparing java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z Below i only post the output from 10 consecutive runs: xranby@xranby-ESPRIMO-P7935:~/icedtea-8-b80$ cd /home/xranby/icedtea-8-b80/openjdk/jdk/makefiles xranby@xranby-ESPRIMO-P7935:~/icedtea-8-b80/openjdk/jdk/makefiles$ /home/xranby/icedtea-8-b80/bootstrap/jdk1.7.0/bin/java -Xms64M -Xmx1100M -XX:PermSize=32m -XX:MaxPermSize=160m -XX:ThreadStackSize=1536 -XX:-PrintVMOptions -XX:-UnlockDiagnosticVMOptions -XX:-LogVMOutput -cp /home/xranby/icedtea-8-b80/openjdk.build/jdk/btclasses build.tools.generatenimbus.Generator \ > -skinFile > /home/xranby/icedtea-8-b80/openjdk/jdk/src/share/classes/javax/swing/plaf/nimbus/skin.laf > -buildDir /home/xranby/icedtea-8-b80/openjdk.build/jdk/gensrc \ > -packagePrefix javax.swing.plaf.nimbus -lafName Nimbus ### GENERATING LAF CODE ################################ #ouput run 1: Segmenteringsfel (minnesutskrift skapad) #ouput run 2: Unrecognised bytecode 235 found while preparing java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z #ouput run 3: Unrecognised bytecode 224 found while preparing java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z #ouput run 4: Segmenteringsfel (minnesutskrift skapad) #ouput run 5: Unrecognised bytecode 202 found while preparing java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z #ouput run 6: Segmenteringsfel (minnesutskrift skapad) #ouput run 7: Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -122622118 at java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:126) at com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:50) at ... #ouput run 8: Unrecognised bytecode 208 found while preparing java/lang/reflect/AnnotatedElement.isAnnotationPresent(Ljava/lang/Class;)Z #ouput run 9: Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -122622119 at java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:126) at com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:50) at com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:42)... #ouput run 10: Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 1912329880 at java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:126) at com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:50) at com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:42) at com.sun.xml.internal.bind.v2.model.impl.ClassInfoImpl.findFieldProperties(ClassInfoImpl.java:367)... -- View this message in context: http://old.nabble.com/Crash-running-OpenJDK-8-build.tools.generatenimbus.Generator%2C-a-regression-since-JamVM-%2B-OpenJDK-7-tp35322824p35336632.html Sent from the JamVM mailing list archive at Nabble.com. |
From: Robert L. <rob...@gm...> - 2013-04-26 02:06:14
|
Hi Xerxes, On 22 April 2013 12:38, Xerxes Rånby <xe...@za...> wrote: > > The jamvm+openjdk 8 bootstrap compiler crash while running the Nimbus LAF > build.tools.generatenimbus.Generator. > /home/xranby/icedtea-8-b80/bootstrap/jdk1.7.0/bin/java -version > openjdk version "1.8.0-fcs" > OpenJDK Runtime Environment (build 1.8.0-fcs-xranby_2013_04_22_12_10-b00) > JamVM (build 1.6.0-devel, inline-threaded interpreter with stack-caching) > based on jamvm source git commit: > http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=da518b74fed8d3fe986543d222a45c54efdad5ef > > I can run the same generator correctly without observing any of the below > mentioned three crash variants using JamVM + OpenJDK 7 based on JamVM source > git commit: > http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=0972452d441544f7dd29c55d64f1ce3a5db90d82 > > All logs below was produced on a 32bit x86 Ubuntu 12.04 system. > > Testcase: > # inside a openjdk 8 source tree run: > cd /home/xranby/icedtea-8-b80/openjdk/jdk/makefiles > /home/xranby/icedtea-8-b80/bootstrap/jdk1.7.0/bin/java -Xms64M -Xmx1100M > -XX:PermSize=32m -XX:MaxPermSize=160m -XX:ThreadStackSize=1536 > -XX:-PrintVMOptions -XX:-UnlockDiagnosticVMOptions -XX:-LogVMOutput -cp > /home/xranby/icedtea-8-b80/openjdk.build/jdk/btclasses > build.tools.generatenimbus.Generator -skinFile > /home/xranby/icedtea-8-b80/openjdk/jdk/src/share/classes/javax/swing/plaf/nimbus/skin.laf > -buildDir /home/xranby/icedtea-8-b80/openjdk.build/jdk/gensrc > -packagePrefix javax.swing.plaf.nimbus -lafName Nimbus > With the testcase I was able to reproduce the problem. Unfortunately I don't see exactly the same behaviour but I'm using OpenJDK 8 rather than IcedTea and AMD64. So it may be a different issue but hopefully not... The issue I'm seeing is related to JSR335, specifically an invokespecial on a default interface method (isAnnotationPresent),. This should now be fixed: http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=b0651cde57c7a48651c99d7f4fb44ba7b2fae9b3 Thanks, Rob. |
From: Xerxes R. <xe...@za...> - 2013-04-22 11:38:41
|
The jamvm+openjdk 8 bootstrap compiler crash while running the Nimbus LAF build.tools.generatenimbus.Generator. /home/xranby/icedtea-8-b80/bootstrap/jdk1.7.0/bin/java -version openjdk version "1.8.0-fcs" OpenJDK Runtime Environment (build 1.8.0-fcs-xranby_2013_04_22_12_10-b00) JamVM (build 1.6.0-devel, inline-threaded interpreter with stack-caching) based on jamvm source git commit: http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=da518b74fed8d3fe986543d222a45c54efdad5ef I can run the same generator correctly without observing any of the below mentioned three crash variants using JamVM + OpenJDK 7 based on JamVM source git commit: http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=0972452d441544f7dd29c55d64f1ce3a5db90d82 All logs below was produced on a 32bit x86 Ubuntu 12.04 system. Testcase: # inside a openjdk 8 source tree run: cd /home/xranby/icedtea-8-b80/openjdk/jdk/makefiles /home/xranby/icedtea-8-b80/bootstrap/jdk1.7.0/bin/java -Xms64M -Xmx1100M -XX:PermSize=32m -XX:MaxPermSize=160m -XX:ThreadStackSize=1536 -XX:-PrintVMOptions -XX:-UnlockDiagnosticVMOptions -XX:-LogVMOutput -cp /home/xranby/icedtea-8-b80/openjdk.build/jdk/btclasses build.tools.generatenimbus.Generator -skinFile /home/xranby/icedtea-8-b80/openjdk/jdk/src/share/classes/javax/swing/plaf/nimbus/skin.laf -buildDir /home/xranby/icedtea-8-b80/openjdk.build/jdk/gensrc -packagePrefix javax.swing.plaf.nimbus -lafName Nimbus Starting program: /home/xranby/icedtea-8-b80/openjdk.build-boot/images/j2sdk-image/bin/java -Xms64M -Xmx1100M -XX:PermSize=32m -XX:MaxPermSize=160m -XX:ThreadStackSize=1536 -XX:-PrintVMOptions -XX:-UnlockDiagnosticVMOptions -XX:-LogVMOutput -cp /home/xranby/icedtea-8-b80/openjdk.build/jdk/btclasses build.tools.generatenimbus.Generator -skinFile /home/xranby/icedtea-8-b80/openjdk/jdk/src/share/classes/javax/swing/plaf/nimbus/skin.laf -buildDir /home/xranby/icedtea-8-b80/openjdk.build/jdk/gensrc -packagePrefix javax.swing.plaf.nimbus -lafName Nimbus [Thread debugging using libthread_db enabled] [New Thread 0xb7fd8b40 (LWP 31143)] [New Thread 0x6e491b40 (LWP 31144)] [New Thread 0x6d8ffb40 (LWP 31145)] [New Thread 0x6d0feb40 (LWP 31146)] [New Thread 0x6c6ffb40 (LWP 31147)] ### GENERATING LAF CODE ################################ full :false skinFile :/home/xranby/icedtea-8-b80/openjdk/jdk/src/share/classes/javax/swing/plaf/nimbus/skin.laf buildDir :/home/xranby/icedtea-8-b80/openjdk.build/jdk/gensrc resourcesDir :/home/xranby/icedtea-8-b80/openjdk/jdk/makefiles packagePrefix :javax.swing.plaf.nimbus lafName :Nimbus "crash" varian 1: Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: -121783248 at java.lang.reflect.AnnotatedElement.isAnnotationPresent(AnnotatedElement.java:126) at com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:50) at com.sun.xml.internal.bind.v2.model.annotation.RuntimeInlineAnnotationReader.hasFieldAnnotation(RuntimeInlineAnnotationReader.java:42) at com.sun.xml.internal.bind.v2.model.impl.ClassInfoImpl.findFieldProperties(ClassInfoImpl.java:367) at com.sun.xml.internal.bind.v2.model.impl.ClassInfoImpl.getProperties(ClassInfoImpl.java:296) at com.sun.xml.internal.bind.v2.model.impl.RuntimeClassInfoImpl.getProperties(RuntimeClassInfoImpl.java:171) at com.sun.xml.internal.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:233) at com.sun.xml.internal.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:89) at com.sun.xml.internal.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:70) at com.sun.xml.internal.bind.v2.model.impl.ModelBuilder.getClassInfo(ModelBuilder.java:199) at com.sun.xml.internal.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:84) at com.sun.xml.internal.bind.v2.model.impl.RuntimeModelBuilder.getClassInfo(RuntimeModelBuilder.java:70) at com.sun.xml.internal.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:305) at com.sun.xml.internal.bind.v2.model.impl.RegistryInfoImpl.<init>(RegistryInfoImpl.java:89) at com.sun.xml.internal.bind.v2.model.impl.ModelBuilder.addRegistry(ModelBuilder.java:347) at com.sun.xml.internal.bind.v2.model.impl.ModelBuilder.getTypeInfo(ModelBuilder.java:317) at com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl.getTypeInfoSet(JAXBContextImpl.java:445) at com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:283) at com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl.<init>(JAXBContextImpl.java:126) at com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl$JAXBContextBuilder.build(JAXBContextImpl.java:1148) at com.sun.xml.internal.bind.v2.ContextFactory.createContext(ContextFactory.java:130) at com.sun.xml.internal.bind.v2.ContextFactory.createContext(ContextFactory.java:221) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:487) at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:171) at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:131) at javax.xml.bind.ContextFinder.find(ContextFinder.java:346) at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:431) at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:394) at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:298) at build.tools.generatenimbus.Generator.main(Generator.java:108) [New Thread 0x6b9ffb40 (LWP 31122)] crash variant 2: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xb7fd8b40 (LWP 31131)] prepare (mb=0xb76959d8, handlers=0x391280) at direct.c:600 600 info[pc + deflt] |= TARGET; (gdb) list 595 are at cache depth zero */ 596 #ifdef USE_CACHE 597 cache_depth[pc + deflt] = 0; 598 #endif 599 #ifdef INLINING 600 info[pc + deflt] |= TARGET; 601 #endif 602 603 for(i = 2; i < (npairs*2+2); i += 2) { 604 int dest = pc + ntohl(aligned_pc[i+1]); (gdb) p pc $1 = <value optimized out> (gdb) p deflt $2 = 402653184 (gdb) p info $3 = "\000" (gdb) bt #0 prepare (mb=0xb76959d8, handlers=0x391280) at direct.c:600 #1 0x00364d19 in executeJava () at interp.c:2403 #2 0x0035337d in invoke (ob=0x0, mb=0x6bb08df0, arg_array=0x72a90670, param_types=0x72a90508) at reflect.c:581 #3 0x00353696 in methodInvoke (ob=0x0, mb=0x6bb08df0, args_array=0x72a90670, ret_type=0x72a6b3d8, param_types=0x72a90508, no_access_check=1, depth=0) at reflect.c:694 #4 0x0037a3e4 in invokeMethod (reflect_ob=0x72a90618, ob=0x0, args_array=0x72a90670) at reflect.c:323 #5 0x003755fb in JVM_InvokeMethod (env=0x3909c0, method=0x72a90618, obj=0x0, args0=0x72a90670) at jvm.c:2665 #6 0x003eb772 in Java_sun_reflect_NativeMethodAccessorImpl_invoke0 (env=0x3909c0, unused=0x72a90690, m=0x72a90618, obj=0x0, args=0x72a90670) at /home/xranby/icedtea-8-b80/openjdk-boot/jdk/src/share/native/sun/reflect/NativeAccessors.c:33 #7 0x00370211 in static_JI_L (class=0x72a90690, mb=0x6bb0b3f8, ostack=0x727bd270) at jni-stubs.c:212 #8 0x0034ae9f in resolveNativeWrapper (class=0x72a90690, mb=0x6bb0b3f8, ostack=0x727bd270) at dll.c:231 #9 0x00364cc8 in executeJava () at interp.c:2392 #10 0x0034bb80 in executeMethodVaList (ob=0x0, class=0x72a659c8, mb=0x6d9ca018, jargs=0xb7fd82f0 "\001") at execute.c:129 #11 0x0034d4f6 in Jam_CallStaticVoidMethod (env=0x3909c0, clazz=0x72a659c8, methodID=0x6d9ca018) at jni.c:1232 #12 0x00134bb9 in JavaMain (_args=0xbfffadf8) at /home/xranby/icedtea-8-b80/openjdk-boot/jdk/src/share/bin/java.c:461 #13 0x0030cd4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0 #14 0x0022fd3e in clone () from /lib/i386-linux-gnu/libc.so.6 crash variant 3: Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 0xb7fd8b40 (LWP 31137)] executeJava () at interp.c:671 671 DEF_OPC_012_2( (gdb) bt #0 executeJava () at interp.c:671 #1 0x0035337d in invoke (ob=0x0, mb=0x6bb08ee0, arg_array=0x72a905f0, param_types=0x72a90488) at reflect.c:581 #2 0x00353696 in methodInvoke (ob=0x0, mb=0x6bb08ee0, args_array=0x72a905f0, ret_type=0x72a6b358, param_types=0x72a90488, no_access_check=1, depth=0) at reflect.c:694 #3 0x0037a3e4 in invokeMethod (reflect_ob=0x72a90598, ob=0x0, args_array=0x72a905f0) at reflect.c:323 #4 0x003755fb in JVM_InvokeMethod (env=0x3909c0, method=0x72a90598, obj=0x0, args0=0x72a905f0) at jvm.c:2665 #5 0x003eb772 in Java_sun_reflect_NativeMethodAccessorImpl_invoke0 (env=0x3909c0, unused=0x72a90610, m=0x72a90598, obj=0x0, args=0x72a905f0) at /home/xranby/icedtea-8-b80/openjdk-boot/jdk/src/share/native/sun/reflect/NativeAccessors.c:33 #6 0x00370211 in static_JI_L (class=0x72a90610, mb=0x6bb0b4e8, ostack=0x727bd270) at jni-stubs.c:212 #7 0x0034ae9f in resolveNativeWrapper (class=0x72a90610, mb=0x6bb0b4e8, ostack=0x727bd270) at dll.c:231 #8 0x00364cc8 in executeJava () at interp.c:2392 #9 0x0034bb80 in executeMethodVaList (ob=0x0, class=0x72a65958, mb=0x6d9ca0c0, jargs=0xb7fd82f0 "\001") at execute.c:129 #10 0x0034d4f6 in Jam_CallStaticVoidMethod (env=0x3909c0, clazz=0x72a65958, methodID=0x6d9ca0c0) at jni.c:1232 #11 0x00134bb9 in JavaMain (_args=0xbfffadf8) at /home/xranby/icedtea-8-b80/openjdk-boot/jdk/src/share/bin/java.c:461 #12 0x0030cd4c in start_thread () from /lib/i386-linux-gnu/libpthread.so.0 #13 0x0022fd3e in clone () from /lib/i386-linux-gnu/libc.so.6 (gdb) To clarify if i use the system installed jamvm + OpenJDK 7 i am able to run the generator inside the OpenJDK 8 codebase OK, thus i believe the this to be an regression inside JamVM itself: xranby@xranby-ESPRIMO-P7935:~/icedtea-8-b80/openjdk/jdk/makefiles$ /usr/lib/jvm/java-7-openjdk-i386/bin/java -jamvm -Xms64M -Xmx1100M -XX:PermSize=32m -XX:MaxPermSize=160m -XX:ThreadStackSize=1536 -XX:-PrintVMOptions -XX:-UnlockDiagnosticVMOptions -XX:-LogVMOutput -cp /home/xranby/icedtea-8-b80/openjdk.build/jdk/btclasses build.tools.generatenimbus.Generator -skinFile /home/xranby/icedtea-8-b80/openjdk/jdk/src/share/classes/javax/swing/plaf/nimbus/skin.laf -buildDir /home/xranby/icedtea-8-b80/openjdk.build/jdk/gensrc -packagePrefix javax.swing.plaf.nimbus -lafName Nimbus ### GENERATING LAF CODE ################################ full :false skinFile :/home/xranby/icedtea-8-b80/openjdk/jdk/src/share/classes/javax/swing/plaf/nimbus/skin.laf buildDir :/home/xranby/icedtea-8-b80/openjdk.build/jdk/gensrc resourcesDir :/home/xranby/icedtea-8-b80/openjdk/jdk/makefiles packagePrefix :javax.swing.plaf.nimbus lafName :Nimbus Generating source file: ArrowButtonPainter.java Generating source file: ButtonPainter.java ... Generating source file: TreePainter.java Generating source file: TreeCellPainter.java xranby@xranby-ESPRIMO-P7935:~/icedtea-8-b80/openjdk/jdk/makefiles$ -- View this message in context: http://old.nabble.com/Crash-running-OpenJDK-8-build.tools.generatenimbus.Generator%2C-a-regression-since-JamVM-%2B-OpenJDK-7-tp35322824p35322824.html Sent from the JamVM mailing list archive at Nabble.com. |
From: Xerxes R. <xe...@za...> - 2013-04-22 11:23:12
|
Xerxes Rånby wrote: > > OpenJDK 8 have recently merged in work to handle JSR 901: Method Parameter > Reflection > > JSR 901 is still a draft: I found the 2013-04-02 draft spec here on the > OpenJDK code review server: http://cr.openjdk.java.net/~abuckley/8misc.pdf > http://hg.openjdk.java.net/jdk8/awt/hotspot/rev/1916ca1dec2f > http://bugs.sun.com/view_bug.do?bug_id=8004728 > > This is the error i get when linking libjava.so against JamVM libjvm.so in > IcedTea 3 with the attached icedtea patch applied. > http://old.nabble.com/file/p35296179/icedtea-3-jamvm-2013-04-15.patch > icedtea-3-jamvm-2013-04-15.patch > > echo "Linking libjava.so" > Linking libjava.so > /usr/bin/gcc-4.6 -Xlinker --hash-style=both -Xlinker -z -Xlinker defs > -Xlinker -O1 -shared > -L/home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386 > -L/home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386/server > -Xlinker -z -Xlinker origin -Xlinker -rpath -Xlinker \$ORIGIN -Xlinker > -version-script=/home/xranby/icedtea-8-b80/openjdk-boot/jdk/makefiles/mapfiles/libjava/mapfile-vers > -Xlinker -soname=libjava.so -o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386/libjava.so > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/AccessController.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Array.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/AtomicLong.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Bits.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Class.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ClassLoader.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Compiler.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Console_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ConstantPool.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Double.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Executable.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/FileDescriptor_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/FileInputStream.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/FileInputStream_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/FileOutputStream_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/FileSystemPreferences.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Finalizer.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Float.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/GC.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/HostLocaleProviderAdapter_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/MessageUtils.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/NativeAccessors.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/NativeSignalHandler.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Object.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ObjectInputStream.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ObjectOutputStream.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ObjectStreamClass.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Package.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ProcessEnvironment_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Proxy.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/RandomAccessFile.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/RandomAccessFile_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Reflection.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ResourceBundle.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Runtime.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/SecurityManager.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Shutdown.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Signal.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/StrictMath.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/String.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/System.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Thread.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Throwable.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/TimeZone.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/TimeZone_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/UNIXProcess_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/UnixFileSystem_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/VM.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/VMSupport.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Version.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/canonicalize_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/check_version.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/io_util.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/io_util_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/java_props_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/jdk_util.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/jdk_util_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/jio.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/jni_util.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/jni_util_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/logging.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/verify_stub.o > -ljvm -lverify -ldl > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libfdlibm.a > /bin/cp > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libj2pkcs11/libj2pkcs11.diz > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386/libj2pkcs11.diz > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Executable.o: > In function `Java_java_lang_reflect_Executable_getParameters0': > /home/xranby/icedtea-8-b80/openjdk-boot/jdk/src/share/native/java/lang/reflect/Executable.c:37: > undefined reference to `JVM_GetMethodParameters' > collect2: ld returned 1 exit status > make[3]: *** > [/home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386/libjava.so] > Error 1 > make[3]: Leaving directory > `/home/xranby/icedtea-8-b80/openjdk-boot/jdk/makefiles' > > Cheers > Xerxes > Thank you Robert you latest JSR 901 commits have fixed this issue, libjava.so links correctly. JamVM + IcedTea can now build the OpenJDK 8 j2sdk bootstrap image! JSR 901: VM support for method parameter reflection: http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=f2d78ec55bab74e419a2c925b90848356c13962f http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=948f3480520871df237dffe46923a67d167a82e7 http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=2bb23fd5949ab27fb6b1f202d5a34eca8aa50852 Cheers Xerxes -- View this message in context: http://old.nabble.com/JSR-901%3A-%28Method-Parameter-Reflection%29-OpenJDK-8-undefined-reference-to-%60JVM_GetMethodParameters%27-tp35296179p35322738.html Sent from the JamVM mailing list archive at Nabble.com. |
From: Xerxes R. <xe...@za...> - 2013-04-22 11:22:51
|
Xerxes Rånby wrote: > > OpenJDK 8 have recently merged in work to handle JSR 901: Method Parameter > Reflection > > JSR 901 is still a draft: I found the 2013-04-02 draft spec here on the > OpenJDK code review server: http://cr.openjdk.java.net/~abuckley/8misc.pdf > http://hg.openjdk.java.net/jdk8/awt/hotspot/rev/1916ca1dec2f > http://bugs.sun.com/view_bug.do?bug_id=8004728 > > This is the error i get when linking libjava.so against JamVM libjvm.so in > IcedTea 3 with the attached icedtea patch applied. > http://old.nabble.com/file/p35296179/icedtea-3-jamvm-2013-04-15.patch > icedtea-3-jamvm-2013-04-15.patch > > echo "Linking libjava.so" > Linking libjava.so > /usr/bin/gcc-4.6 -Xlinker --hash-style=both -Xlinker -z -Xlinker defs > -Xlinker -O1 -shared > -L/home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386 > -L/home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386/server > -Xlinker -z -Xlinker origin -Xlinker -rpath -Xlinker \$ORIGIN -Xlinker > -version-script=/home/xranby/icedtea-8-b80/openjdk-boot/jdk/makefiles/mapfiles/libjava/mapfile-vers > -Xlinker -soname=libjava.so -o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386/libjava.so > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/AccessController.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Array.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/AtomicLong.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Bits.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Class.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ClassLoader.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Compiler.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Console_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ConstantPool.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Double.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Executable.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/FileDescriptor_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/FileInputStream.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/FileInputStream_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/FileOutputStream_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/FileSystemPreferences.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Finalizer.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Float.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/GC.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/HostLocaleProviderAdapter_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/MessageUtils.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/NativeAccessors.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/NativeSignalHandler.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Object.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ObjectInputStream.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ObjectOutputStream.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ObjectStreamClass.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Package.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ProcessEnvironment_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Proxy.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/RandomAccessFile.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/RandomAccessFile_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Reflection.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ResourceBundle.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Runtime.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/SecurityManager.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Shutdown.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Signal.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/StrictMath.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/String.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/System.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Thread.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Throwable.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/TimeZone.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/TimeZone_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/UNIXProcess_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/UnixFileSystem_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/VM.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/VMSupport.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Version.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/canonicalize_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/check_version.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/io_util.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/io_util_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/java_props_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/jdk_util.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/jdk_util_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/jio.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/jni_util.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/jni_util_md.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/logging.o > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/verify_stub.o > -ljvm -lverify -ldl > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libfdlibm.a > /bin/cp > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libj2pkcs11/libj2pkcs11.diz > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386/libj2pkcs11.diz > /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Executable.o: > In function `Java_java_lang_reflect_Executable_getParameters0': > /home/xranby/icedtea-8-b80/openjdk-boot/jdk/src/share/native/java/lang/reflect/Executable.c:37: > undefined reference to `JVM_GetMethodParameters' > collect2: ld returned 1 exit status > make[3]: *** > [/home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386/libjava.so] > Error 1 > make[3]: Leaving directory > `/home/xranby/icedtea-8-b80/openjdk-boot/jdk/makefiles' > > Cheers > Xerxes > Thank you Robert you latest JSR 901 commits have fixed this issue, libjava.so links correctly. JamVM + IcedTea can now build the OpenJDK 8 j2sdk bootstrap image! JSR 901: VM support for method parameter reflection: http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=f2d78ec55bab74e419a2c925b90848356c13962f http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=948f3480520871df237dffe46923a67d167a82e7 http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=2bb23fd5949ab27fb6b1f202d5a34eca8aa50852 Cheers Xerxes -- View this message in context: http://old.nabble.com/JSR-901%3A-%28Method-Parameter-Reflection%29-OpenJDK-8-undefined-reference-to-%60JVM_GetMethodParameters%27-tp35296179p35322736.html Sent from the JamVM mailing list archive at Nabble.com. |
From: Xerxes R. <xe...@za...> - 2013-04-15 12:00:52
|
OpenJDK 8 have recently merged in work to handle JSR 901: Method Parameter Reflection JSR 901 is still a draft: I found the 2013-04-02 draft spec here on the OpenJDK code review server: http://cr.openjdk.java.net/~abuckley/8misc.pdf http://hg.openjdk.java.net/jdk8/awt/hotspot/rev/1916ca1dec2f http://bugs.sun.com/view_bug.do?bug_id=8004728 This is the error i get when linking libjava.so against JamVM libjvm.so in IcedTea 3 with the attached icedtea patch applied. http://old.nabble.com/file/p35296179/icedtea-3-jamvm-2013-04-15.patch icedtea-3-jamvm-2013-04-15.patch echo "Linking libjava.so" Linking libjava.so /usr/bin/gcc-4.6 -Xlinker --hash-style=both -Xlinker -z -Xlinker defs -Xlinker -O1 -shared -L/home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386 -L/home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386/server -Xlinker -z -Xlinker origin -Xlinker -rpath -Xlinker \$ORIGIN -Xlinker -version-script=/home/xranby/icedtea-8-b80/openjdk-boot/jdk/makefiles/mapfiles/libjava/mapfile-vers -Xlinker -soname=libjava.so -o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386/libjava.so /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/AccessController.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Array.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/AtomicLong.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Bits.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Class.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ClassLoader.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Compiler.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Console_md.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ConstantPool.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Double.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Executable.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/FileDescriptor_md.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/FileInputStream.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/FileInputStream_md.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/FileOutputStream_md.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/FileSystemPreferences.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Finalizer.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Float.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/GC.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/HostLocaleProviderAdapter_md.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/MessageUtils.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/NativeAccessors.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/NativeSignalHandler.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Object.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ObjectInputStream.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ObjectOutputStream.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ObjectStreamClass.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Package.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ProcessEnvironment_md.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Proxy.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/RandomAccessFile.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/RandomAccessFile_md.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Reflection.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/ResourceBundle.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Runtime.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/SecurityManager.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Shutdown.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Signal.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/StrictMath.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/String.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/System.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Thread.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Throwable.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/TimeZone.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/TimeZone_md.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/UNIXProcess_md.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/UnixFileSystem_md.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/VM.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/VMSupport.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Version.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/canonicalize_md.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/check_version.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/io_util.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/io_util_md.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/java_props_md.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/jdk_util.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/jdk_util_md.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/jio.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/jni_util.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/jni_util_md.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/logging.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/verify_stub.o -ljvm -lverify -ldl /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libfdlibm.a /bin/cp /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libj2pkcs11/libj2pkcs11.diz /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386/libj2pkcs11.diz /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libjava/Executable.o: In function `Java_java_lang_reflect_Executable_getParameters0': /home/xranby/icedtea-8-b80/openjdk-boot/jdk/src/share/native/java/lang/reflect/Executable.c:37: undefined reference to `JVM_GetMethodParameters' collect2: ld returned 1 exit status make[3]: *** [/home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386/libjava.so] Error 1 make[3]: Leaving directory `/home/xranby/icedtea-8-b80/openjdk-boot/jdk/makefiles' Cheers Xerxes -- View this message in context: http://old.nabble.com/JSR-901%3A-%28Method-Parameter-Reflection%29-OpenJDK-8-undefined-reference-to-%60JVM_GetMethodParameters%27-tp35296179p35296179.html Sent from the JamVM mailing list archive at Nabble.com. |
From: Xerxes R. <xe...@za...> - 2013-04-15 11:51:30
|
Xerxes Rånby wrote: > > > Robert Lougher wrote: >> >> Hi Xerxes, >> >> I've now pushed JSR 308 support in JamVM: >> >> http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=10b7c81c597809b2aaf28c8243453a21c33d4af3 >> >> This relies on improvements in storage of annotations here: >> >> http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=0330f06b5839f4d8c316b46d92de9396dd7e95ad >> >> Unfortunately this isn't going to help much in testing JSR 292 with >> IcedTea 3 (OpenJDK 8)! With the lastest versions of OpenJDK 8, the >> JSR 292 jtreg tests are currently crashing. I've not had time to look >> at all the crashes in detail, but the first appears to be related to >> uses of interface default methods - another new feature of JDK 8. >> It's likely that the JDK has been updated to use them - I'm hopeful >> that nothing has changed in the JSR 292 internals. >> >> I started looking at interface default methods last week, before >> stopping work to do JSR 308. From the looks of it, it can be handled >> by some modifications to the existing code in JamVM for so-called >> Miranda methods. Hopefully, it'll only take a couple of days. >> >> The new JSR 292 implementation in JDK 8 was backported to 7 updates (I >> believe 7u14), so JamVMs JSR 292 implementation should work with it, >> although I haven't had time to try it myself (yet). >> >> Thanks, >> Rob. >> > echo "Linking libverify.so" > ... > /home/xranby/icedtea-8-b80/openjdk-boot/jdk/src/share/native/common/check_code.c:988: > undefined reference to `JVM_IsVMGeneratedMethodIx' > > Thank you Robert This issue is fixed, libverify.so is now linked correctly. http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=2040912557d789b1867b612811d0ddcf21e9def5 - JVM_IsVMGeneratedMethodIx stub Cheers Xerxes -- View this message in context: http://old.nabble.com/JSR-308%3A-symbol-JVM_GetClassTypeAnnotations-not-defined-for-JamVM-%2B-OpenJDK-8-tp35228844p35296155.html Sent from the JamVM mailing list archive at Nabble.com. |
From: Xerxes R. <xe...@za...> - 2013-04-15 11:47:32
|
Xerxes Rånby wrote: > > > Xerxes Rånby wrote: >> >> >> Xerxes Rånby wrote: >>> >>> The attached patch fix Error initialising VM (initialiseAccess) >>> when using JamVM in combination with OpenJDK 6 or 7 >>> that do not provide JSR 292 Lambda access >>> >> >> I tealised i made a mistake with the first patch.. >> posting a fixed patch below that still use the openjdk >> classlibAccessCheck. >> > > Third attempt... > I only want to put the JSR292 ifdef's around magic_lambda while keeping > magic_accessor. > How to place the ifdefs in access.c to make it still look good is > questionable. > At least I believe its functionally correct now for OpenJDK 6 and 7 users. > Xerxes > Thank you Robert I can verify that this issue is now fixed: http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=b37d7947af4a30da275ec8edb6a730850a51a5d9 - JSR 292: make access.c conditional on JSR292 macro -- View this message in context: http://old.nabble.com/Error-initialising-VM-%28initialiseAccess%29---with-java-runtime-library%3Dopenjdk7-tp35289028p35296144.html Sent from the JamVM mailing list archive at Nabble.com. |
From: Xerxes R. <xe...@za...> - 2013-04-13 00:58:18
|
Xerxes Rånby wrote: > > > Xerxes Rånby wrote: >> >> The attached patch fix Error initialising VM (initialiseAccess) >> when using JamVM in combination with OpenJDK 6 or 7 >> that do not provide JSR 292 Lambda access >> > > I tealised i made a mistake with the first patch.. > posting a fixed patch below that still use the openjdk > classlibAccessCheck. > Third attempt... I only want to put the JSR292 ifdef's around magic_lambda while keeping magic_accessor. How to place the ifdefs in access.c to make it still look good is questionable. At least I believe its functionally correct now for OpenJDK 6 and 7 users. Xerxes diff --git a/src/classlib/openjdk/access.c b/src/classlib/openjdk/access.c index 1326efe..f49784e 100644 --- a/src/classlib/openjdk/access.c +++ b/src/classlib/openjdk/access.c @@ -21,24 +21,36 @@ #include "jam.h" #include "symbol.h" +#ifdef JSR292 static Class *magic_lambda; +#endif static Class *magic_accessor; int classlibInitialiseAccess() { magic_accessor = findSystemClass0(SYMBOL(sun_reflect_MagicAccessorImpl)); +#ifdef JSR292 magic_lambda = findSystemClass0(SYMBOL(java_lang_invoke_MagicLambdaImpl)); if(magic_accessor == NULL || magic_lambda == NULL) +#else + if(magic_accessor == NULL) +#endif return FALSE; +#ifdef JSR292 registerStaticClassRef(&magic_lambda); +#endif registerStaticClassRef(&magic_accessor); return TRUE; } int classlibAccessCheck(Class *class, Class *referrer) { +#ifdef JSR292 return isSubClassOf(magic_accessor, referrer) || isSubClassOf(magic_lambda, referrer); +#else + return isSubClassOf(magic_accessor, referrer); +#endif } -- View this message in context: http://old.nabble.com/Error-initialising-VM-%28initialiseAccess%29---with-java-runtime-library%3Dopenjdk7-tp35289028p35289079.html Sent from the JamVM mailing list archive at Nabble.com. |
From: Xerxes R. <xe...@za...> - 2013-04-13 00:32:11
|
Xerxes Rånby wrote: > > The attached patch fix Error initialising VM (initialiseAccess) > when using JamVM in combination with OpenJDK 6 or 7 > that do not provide JSR 292 Lambda access > I tealised i made a mistake with the first patch.. posting a fixed patch below that still use the openjdk classlibAccessCheck. Cheers Xerxes diff --git a/src/classlib/openjdk/classlib.h b/src/classlib/openjdk/classlib.h index ca671c4..10e930b 100644 --- a/src/classlib/openjdk/classlib.h +++ b/src/classlib/openjdk/classlib.h @@ -114,7 +114,13 @@ extern char *classlibDefaultJavaHome(); /* Access */ +#ifdef JSR292 extern int classlibInitialiseAccess(); +#else +#define classlibInitialiseAccess() \ + /* NOTHING TO DO */ TRUE + +#endif extern int classlibAccessCheck(Class *class1, Class *class2); /* Natives */ -- View this message in context: http://old.nabble.com/Error-initialising-VM-%28initialiseAccess%29---with-java-runtime-library%3Dopenjdk7-tp35289028p35289043.html Sent from the JamVM mailing list archive at Nabble.com. |
From: Xerxes R. <xe...@za...> - 2013-04-13 00:21:59
|
The attached patch fix Error initialising VM (initialiseAccess) when using JamVM in combination with OpenJDK 6 or 7 that do not provide JSR 292 Lambda access diff --git a/src/classlib/openjdk/classlib.h b/src/classlib/openjdk/classlib.h index ca671c4..ed3cfd3 100644 --- a/src/classlib/openjdk/classlib.h +++ b/src/classlib/openjdk/classlib.h @@ -114,8 +114,15 @@ extern char *classlibDefaultJavaHome(); /* Access */ +#ifdef JSR292 extern int classlibInitialiseAccess(); extern int classlibAccessCheck(Class *class1, Class *class2); +#else +#define classlibInitialiseAccess() \ + /* NOTHING TO DO */ TRUE + +#define classlibAccessCheck(class1, class2) FALSE +#endif /* Natives */ -- View this message in context: http://old.nabble.com/Error-initialising-VM-%28initialiseAccess%29---with-java-runtime-library%3Dopenjdk7-tp35289028p35289028.html Sent from the JamVM mailing list archive at Nabble.com. |
From: Xerxes R. <xe...@za...> - 2013-04-09 12:31:42
|
Robert Lougher wrote: > > Hi Xerxes, > > I've now pushed JSR 308 support in JamVM: > > http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=10b7c81c597809b2aaf28c8243453a21c33d4af3 > > This relies on improvements in storage of annotations here: > > http://git.berlios.de/cgi-bin/cgit.cgi/jamvm/commit/?id=0330f06b5839f4d8c316b46d92de9396dd7e95ad > > Unfortunately this isn't going to help much in testing JSR 292 with > IcedTea 3 (OpenJDK 8)! With the lastest versions of OpenJDK 8, the > JSR 292 jtreg tests are currently crashing. I've not had time to look > at all the crashes in detail, but the first appears to be related to > uses of interface default methods - another new feature of JDK 8. > It's likely that the JDK has been updated to use them - I'm hopeful > that nothing has changed in the JSR 292 internals. > > I started looking at interface default methods last week, before > stopping work to do JSR 308. From the looks of it, it can be handled > by some modifications to the existing code in JamVM for so-called > Miranda methods. Hopefully, it'll only take a couple of days. > > The new JSR 292 implementation in JDK 8 was backported to 7 updates (I > believe 7u14), so JamVMs JSR 292 implementation should work with it, > although I haven't had time to try it myself (yet). > > Thanks, > Rob. > I have worked on a new icedtea 3 patch: http://old.nabble.com/file/p35272149/icedtea-3-openjdk-8-b80-jamvm.patch icedtea-3-openjdk-8-b80-jamvm.patch This time OpenJDK 8 gets built using the JamVM libjvm.so and yes i agree something with "default methods" in OpenJDK 8 break the build, at least i see a related missing JVM_IsVMGeneratedMethodIx method during linking: Linking libhprof.so /usr/bin/gcc-4.6 -Xlinker --hash-style=both -Xlinker -z -Xlinker defs -Xlinker -O1 -shared -L/home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386 -L/home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386/server -Xlinker -z -Xlinker origin -Xlinker -rpath -Xlinker \$ORIGIN -Xlinker -version-script=/home/xranby/icedtea-8-b80/openjdk-boot/jdk/makefiles/mapfiles/libhprof/mapfile-vers -Xlinker -soname=libhprof.so -o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386/libhprof.so /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/debug_malloc.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_blocks.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_check.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_class.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_cpu.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_error.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_event.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_frame.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_init.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_io.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_ioname.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_listener.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_loader.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_md.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_monitor.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_object.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_reference.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_site.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_stack.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_string.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_table.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_tag.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_tls.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_trace.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_tracker.o /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libhprof_jvmti/hprof_util.o -ldl /home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/objs/libverify/check_code.o: In function `verify_method': /home/xranby/icedtea-8-b80/openjdk-boot/jdk/src/share/native/common/check_code.c:988: undefined reference to `JVM_IsVMGeneratedMethodIx' collect2: ld returned 1 exit status make[3]: *** [/home/xranby/icedtea-8-b80/openjdk.build-boot/jdk/lib/i386/libverify.so] Error 1 make[3]: *** Waiting for unfinished jobs.... make[3]: Leaving directory `/home/xranby/icedtea-8-b80/openjdk-boot/jdk/makefiles' Cheers Xerxes -- View this message in context: http://old.nabble.com/JSR-308%3A-symbol-JVM_GetClassTypeAnnotations-not-defined-for-JamVM-%2B-OpenJDK-8-tp35228844p35272149.html Sent from the JamVM mailing list archive at Nabble.com. |