From gbenson at redhat.com Thu Jul 17 07:16:08 2008 From: gbenson at redhat.com (Gary Benson) Date: Thu, 17 Jul 2008 15:16:08 +0100 Subject: Proposal: zero-assembler port of OpenJDK Message-ID: <20080717141608.GF3861@redhat.com> Hi all, I'm Gary Benson, an engineer at Red Hat. Over the past year or so I've been working on a port of OpenJDK that uses no assembler and therefore can trivially be built on any system. The port, known as zero, is presently an interpreter-only port, and is known to work on PowerPC (32- and 64-bit), x86-64, IA-64, and zSeries. An LLVM-based JIT, known as Shark, is currently under development. Currently only Linux is supported, but adding support for other operating systems is one area in which I'd particularly welcome contributions. The goal of this project would be to be able to build a TCK-compliant OpenJDK of reasonable performance on any platform with no additional porting work. Cheers, Gary -- http://gbenson.net/ From revol at free.fr Thu Jul 17 07:25:33 2008 From: revol at free.fr (=?windows-1252?q?Fran=E7ois?= Revol) Date: Thu, 17 Jul 2008 16:25:33 +0200 CEST Subject: Proposal: zero-assembler port of OpenJDK In-Reply-To: <20080717141608.GF3861@redhat.com> Message-ID: <1801922092-BeMail@laptop> > Hi all, > > I'm Gary Benson, an engineer at Red Hat. Over the past year or so > I've been working on a port of OpenJDK that uses no assembler and > therefore can trivially be built on any system. > > The port, known as zero, is presently an interpreter-only port, and > is known to work on PowerPC (32- and 64-bit), x86-64, IA-64, and > zSeries. An LLVM-based JIT, known as Shark, is currently under > development. Currently only Linux is supported, but adding support > for other operating systems is one area in which I'd particularly > welcome contributions. > > The goal of this project would be to be able to build a TCK-compliant > OpenJDK of reasonable performance on any platform with no additional > porting work. Wow, sounds great. Maybe one day I'll be able to start a java applet under Haiku on a Falcon in 2 or 3 days :)) Must finish porting Haiku to m68k first though. Fran?ois. From gbenson at redhat.com Thu Jul 17 07:31:08 2008 From: gbenson at redhat.com (Gary Benson) Date: Thu, 17 Jul 2008 15:31:08 +0100 Subject: Proposal: zero-assembler port of OpenJDK In-Reply-To: <1801922092-BeMail@laptop> References: <20080717141608.GF3861@redhat.com> <1801922092-BeMail@laptop> Message-ID: <20080717143108.GG3861@redhat.com> Fran?ois Revol wrote: > > I'm Gary Benson, an engineer at Red Hat. Over the past year or > > so I've been working on a port of OpenJDK that uses no assembler > > and therefore can trivially be built on any system. > > > > The port, known as zero, is presently an interpreter-only port, > > and is known to work on PowerPC (32- and 64-bit), x86-64, IA-64, > > and zSeries. An LLVM-based JIT, known as Shark, is currently > > under development. Currently only Linux is supported, but > > adding support for other operating systems is one area in which > > I'd particularly welcome contributions. > > > > The goal of this project would be to be able to build a TCK- > > compliant OpenJDK of reasonable performance on any platform > > with no additional porting work. > > Wow, sounds great. > > Maybe one day I'll be able to start a java applet under Haiku on > a Falcon in 2 or 3 days :)) > Must finish porting Haiku to m68k first though. Port zero to Haiku, it's way easier than a full port :) Cheers, Gary -- http://gbenson.net/ From revol at free.fr Thu Jul 17 07:40:52 2008 From: revol at free.fr (=?windows-1252?q?Fran=E7ois?= Revol) Date: Thu, 17 Jul 2008 16:40:52 +0200 CEST Subject: Proposal: zero-assembler port of OpenJDK In-Reply-To: <20080717143108.GG3861@redhat.com> Message-ID: <2720994674-BeMail@laptop> > Fran?ois Revol wrote: > > > I'm Gary Benson, an engineer at Red Hat. Over the past year or > > > so I've been working on a port of OpenJDK that uses no assembler > > > and therefore can trivially be built on any system. > > > > > > The port, known as zero, is presently an interpreter-only port, > > > and is known to work on PowerPC (32- and 64-bit), x86-64, IA-64, > > > and zSeries. An LLVM-based JIT, known as Shark, is currently > > > under development. Currently only Linux is supported, but > > > adding support for other operating systems is one area in which > > > I'd particularly welcome contributions. > > > > > > The goal of this project would be to be able to build a TCK- > > > compliant OpenJDK of reasonable performance on any platform > > > with no additional porting work. > > > > Wow, sounds great. > > > > Maybe one day I'll be able to start a java applet under Haiku on > > a Falcon in 2 or 3 days :)) > > Must finish porting Haiku to m68k first though. > > Port zero to Haiku, it's way easier than a full port :) Well I don't know what's happenning, but there was an almost full port already, so they know where they are doing. But probably it's simpler to bootstrap. Fran?ois. From gbenson at redhat.com Thu Jul 17 07:53:49 2008 From: gbenson at redhat.com (Gary Benson) Date: Thu, 17 Jul 2008 15:53:49 +0100 Subject: Proposal: zero-assembler port of OpenJDK In-Reply-To: <2720994674-BeMail@laptop> References: <20080717143108.GG3861@redhat.com> <2720994674-BeMail@laptop> Message-ID: <20080717145349.GH3861@redhat.com> Fran?ois Revol wrote: > > Fran?ois Revol wrote: > > > > I'm Gary Benson, an engineer at Red Hat. Over the past year or > > > > so I've been working on a port of OpenJDK that uses no assembler > > > > and therefore can trivially be built on any system. > > > > > > > > The port, known as zero, is presently an interpreter-only port, > > > > and is known to work on PowerPC (32- and 64-bit), x86-64, IA-64, > > > > and zSeries. An LLVM-based JIT, known as Shark, is currently > > > > under development. Currently only Linux is supported, but > > > > adding support for other operating systems is one area in which > > > > I'd particularly welcome contributions. > > > > > > > > The goal of this project would be to be able to build a TCK- > > > > compliant OpenJDK of reasonable performance on any platform > > > > with no additional porting work. > > > > > > Wow, sounds great. > > > > > > Maybe one day I'll be able to start a java applet under Haiku on > > > a Falcon in 2 or 3 days :)) > > > Must finish porting Haiku to m68k first though. > > > > Port zero to Haiku, it's way easier than a full port :) > > Well I don't know what's happenning, but there was an almost full > port already, so they know where they are doing. Ah, fair enough :) Cheers, Gary -- http://gbenson.net/ From Dalibor.Topic at Sun.COM Thu Jul 17 07:58:53 2008 From: Dalibor.Topic at Sun.COM (Dalibor Topic) Date: Thu, 17 Jul 2008 16:58:53 +0200 Subject: Proposal: zero-assembler port of OpenJDK In-Reply-To: <20080717141608.GF3861@redhat.com> References: <20080717141608.GF3861@redhat.com> Message-ID: <487F5E2D.80304@Sun.COM> Gary Benson wrote: > Hi all, > > I'm Gary Benson, an engineer at Red Hat. Over the past year or so > I've been working on a port of OpenJDK that uses no assembler and > therefore can trivially be built on any system. > > The port, known as zero, is presently an interpreter-only port, and > is known to work on PowerPC (32- and 64-bit), x86-64, IA-64, and > zSeries. An LLVM-based JIT, known as Shark, is currently under > development. Currently only Linux is supported, but adding support > for other operating systems is one area in which I'd particularly > welcome contributions. > > The goal of this project would be to be able to build a TCK-compliant > OpenJDK of reasonable performance on any platform with no additional > porting work. Thank you for the fine proposal, Gary, I'm a big fan of your work, and would like to encourage list members to discuss it - once the discussion peters out agreeably, I'd be happy to do the formal project proposal, and initiate a vote among members. cheers, dalibor topic -- ******************************************************************* Dalibor Topic Tel: (+49 40) 23 646 738 Java F/OSS Ambassador AIM: robiladonaim Sun Microsystems GmbH Mobile: (+49 177) 2664 192 Nagelsweg 55 http://openjdk.java.net D-20097 Hamburg mailto:Dalibor.Topic at sun.com Sitz der Gesellschaft: Sonnenallee 1, D-85551 Kirchheim-Heimstetten Amtsgericht M?nchen: HRB 161028 Gesch?ftsf?hrer: Thomas Schr?der, Wolfgang Engels, Dr. Roland B?mer Vorsitzender des Aufsichtsrates: Martin H?ring From springer at reservoir.com Thu Jul 17 08:25:37 2008 From: springer at reservoir.com (Jonathan Springer) Date: Thu, 17 Jul 2008 10:25:37 -0500 Subject: Proposal: zero-assembler port of OpenJDK In-Reply-To: <20080717141608.GF3861@redhat.com> References: <20080717141608.GF3861@redhat.com> Message-ID: <487F6471.4020908@reservoir.com> Gary Benson wrote: > Hi all, > > I'm Gary Benson, an engineer at Red Hat. Over the past year or so > I've been working on a port of OpenJDK that uses no assembler and > therefore can trivially be built on any system. > > The port, known as zero, is presently an interpreter-only port, and > is known to work on PowerPC (32- and 64-bit), x86-64, IA-64, and > zSeries. An LLVM-based JIT, known as Shark, is currently under > development. Currently only Linux is supported, but adding support > for other operating systems is one area in which I'd particularly > welcome contributions. > > The goal of this project would be to be able to build a TCK-compliant > OpenJDK of reasonable performance on any platform with no additional > porting work. Hi Gary, I think this is very useful work, and would make a great project. So this project is intended to include the Shark work? What kind of machine customization is required there, is it all internal to LLVM? -Jonathan -- Jonathan Springer | Reservoir Labs, Inc. | http://www.reservoir.com/ From gbenson at redhat.com Thu Jul 17 08:29:03 2008 From: gbenson at redhat.com (Gary Benson) Date: Thu, 17 Jul 2008 16:29:03 +0100 Subject: Proposal: zero-assembler port of OpenJDK In-Reply-To: <487F5E2D.80304@Sun.COM> References: <20080717141608.GF3861@redhat.com> <487F5E2D.80304@Sun.COM> Message-ID: <20080717152903.GI3861@redhat.com> Dalibor Topic wrote: > Gary Benson wrote: > > I'm Gary Benson, an engineer at Red Hat. Over the past year or > > so I've been working on a port of OpenJDK that uses no assembler > > and therefore can trivially be built on any system. > > > > The port, known as zero, is presently an interpreter-only port, > > and is known to work on PowerPC (32- and 64-bit), x86-64, IA-64, > > and zSeries. An LLVM-based JIT, known as Shark, is currently > > under development. Currently only Linux is supported, but > > adding support for other operating systems is one area in which > > I'd particularly welcome contributions. > > > > The goal of this project would be to be able to build a TCK- > > compliant OpenJDK of reasonable performance on any platform > > with no additional porting work. > > Thank you for the fine proposal, Gary, I'm a big fan of your work, > and would like to encourage list members to discuss it - once the > discussion peters out agreeably, I'd be happy to do the formal > project proposal, and initiate a vote among members. Thank you. Cheers, Gary -- http://gbenson.net/ From gbenson at redhat.com Thu Jul 17 08:55:07 2008 From: gbenson at redhat.com (Gary Benson) Date: Thu, 17 Jul 2008 16:55:07 +0100 Subject: Proposal: zero-assembler port of OpenJDK In-Reply-To: <487F6471.4020908@reservoir.com> References: <20080717141608.GF3861@redhat.com> <487F6471.4020908@reservoir.com> Message-ID: <20080717155507.GJ3861@redhat.com> Jonathan Springer wrote: > Gary Benson wrote: > > I'm Gary Benson, an engineer at Red Hat. Over the past year or > > so I've been working on a port of OpenJDK that uses no assembler > > and therefore can trivially be built on any system. > > > > The port, known as zero, is presently an interpreter-only port, > > and is known to work on PowerPC (32- and 64-bit), x86-64, IA-64, > > and zSeries. An LLVM-based JIT, known as Shark, is currently > > under development. Currently only Linux is supported, but > > adding support for other operating systems is one area in which > > I'd particularly welcome contributions. > > > > The goal of this project would be to be able to build a TCK- > > compliant OpenJDK of reasonable performance on any platform > > with no additional porting work. > > I think this is very useful work, and would make a great project. > > So this project is intended to include the Shark work? What kind > of machine customization is required there, is it all internal to > LLVM? The Shark work would definitely be included, yes, though of course it's possible to build without in on platforms without LLVM JIT support. And yes, the machine customization is all internal to LLVM, for Shark at least. Some platforms there are JITs already: IA-32, x86-64, 32- and 64-bit PowerPC, Alpha and ARM. Other platforms have LLVM interpreter support (IA-64, MIPS, SPARC) but no JIT; I presume writing a JIT for those would be easier than other platforms where you'd have to start from scratch. Cheers, Gary -- http://gbenson.net/ From gbenson at redhat.com Thu Jul 24 01:32:03 2008 From: gbenson at redhat.com (Gary Benson) Date: Thu, 24 Jul 2008 09:32:03 +0100 Subject: Proposal: zero-assembler port of OpenJDK In-Reply-To: <20080717141608.GF3861@redhat.com> References: <20080717141608.GF3861@redhat.com> Message-ID: <20080724083203.GA3879@redhat.com> Gary Benson wrote: > The port, known as zero ... is known to work on PowerPC (32- and > 64-bit), x86-64, IA-64, and zSeries. Thanks to Matthias Klose, Andrew Haley and Xerxes R?nby I can today add ARM to this list. Cheers, Gary -- http://gbenson.net/ From glewis at eyesbeyond.com Thu Jul 31 19:15:25 2008 From: glewis at eyesbeyond.com (Greg Lewis) Date: Thu, 31 Jul 2008 19:15:25 -0700 Subject: BSD port of OpenJDK Message-ID: <20080801021525.GA89848@misty.eyesbeyond.com> G'day all, I believe Dalibor will shortly follow this up with an official proposal, but I just wanted to give a broader overview of whats been happening with merging the BSD patches into OpenJDK. We've now completed all of the legal requirements to be able to merge the bulk of the BSD patches in, although it will initially start as a separate project of course. There are a few smaller patches that will have to be reimplemented, but nothing core to our support. Briefly, here is some information about the BSD port: . There has been a BSD port since 1.0, although the current set of changes can really only be traced to the SCSL based 1.2 port. . We currently have support for FreeBSD, OpenBSD, NetBSD and MacOS X and for the i386 and amd64 architectures. There are preliminary patches for FreeBSD/sparc64 and I'm hoping the zero assembler patches will help us add support for other architectures :). . The bulk of these changes have already been through compatibility testing, so we expect the code to be solid already. . We've always tried to do our porting in a way that would add BSD support without impacting support for other operating systems, so I don't believe we'll have any impact on the Linux or Solaris support. Anyway, I'm very excited we're finally at a point to be able to do this and I hope this will be a valuable addition to the OpenJDK project. I'd also feel remiss if I didn't at least mention the contributions of Kurt Miller, Landon Fuller, Jung-uk Kim, Alexey Zelkin, Christos Zoulas and many others who have worked on the BSD port over the years and the support we've received from the FreeBSD Foundation. -- Greg Lewis Email : glewis at eyesbeyond.com Eyes Beyond Web : http://www.eyesbeyond.com Information Technology FreeBSD : glewis at FreeBSD.org