llvm

TwitterFacebook
Get flash to fully experience Pearltrees

ZeroSharkFaq - IcedTea

At present, OpenJDK only supports three processors: x86, x86-64 and SPARC. Linux distributions, however, typically support many more, and porting OpenJDK to a new platform is a non-trivial task. As an example, after the initial release of OpenJDK, Red Hat sponsored the creation of a PowerPC port. Getting this port to the state where it just worked -- where it could run basic applications very slowly -- required over 10,000 lines of very low-level, system-specific code, of which approximately 1,000 lines were assembler. http://icedtea.classpath.org/wiki/ZeroSharkFaq
An optimization branch of CPython, intended to be fully compatible and significantly faster. See the ProjectPlan for details on what we're building. The FAQ provides quick answers to common questions we've been getting. Benchmark numbers for our 2009Q3 release can be found on the Release2009Q3 page. See GettingStarted for checkout and build instructions. http://code.google.com/p/unladen-swallow/

unladen-swallow - Project Hosting on Google Code

"VMKit" JVM and .Net runtimes for LLVM

http://vmkit.llvm.org/ The VMKit project is a framework for building virtual machines. It uses LLVM for compiling and optimizing high-level languages to machine code, and MMTk to manage memory. J3 is an implementation of a JVM with VMKit. You can get and build the source of J3 today. The development of VMKit was started out of a need to factorize virtual machine development. The JVM and CLI virtual machine have many similarities, but are too high-level to be the basis of a "universal" virtual machine.
The LLVM Project is a collection of modular and reusable compiler and toolchain technologies. Despite its name, LLVM has little to do with traditional virtual machines, though it does provide helpful libraries that can be used to build them . LLVM began as a research project at the University of Illinois , with the goal of providing a modern, SSA-based compilation strategy capable of supporting both static and dynamic compilation of arbitrary programming languages. Since then, LLVM has grown to be an umbrella project consisting of a number of different subprojects, many of which are being used in production by a wide variety of commercial and open source projects as well as being widely used in academic research . Code in the LLVM project is licensed under the "UIUC" BSD-Style license .

The LLVM Compiler Infrastructure Project

http://llvm.org/
http://jamvm.sourceforge.net/ Latest version is JamVM 1.5.4 , released on 1st January 2010. See the release notes for the changes since 1.5.3. JamVM is a new Java Virtual Machine which conforms to the JVM specification version 2 (blue book). In comparison to most other VM's (free and commercial) it is extremely small, with a stripped executable on PowerPC of only ~220K, and Intel 200K. However, unlike other small VMs (e.g. KVM) it is designed to support the full specification, and includes support for object finalisation, Soft/Weak/Phantom References, class-unloading, the Java Native Interface (JNI) and the Reflection API.

JamVM -- A compact Java Virtual Machine