[12 total ]
The GNU Compiler Collection includes front ends for C, C++, Objective-C, Fortran, Java, and Ada, as well as libraries for these languages (libstdc++, libgcj,...).
LLVM is a robust system, particularly well suited for developing new mid-level language-independent analyses and optimizations of all sorts, including those that require extensive interprocedural analysis. LLVM is also a great target for front-end
... [More]
development for conventional or research programming languages, including those which require compile-time, link-time, or run-time optimization for effective implementation, proper tail calls or garbage collection. We have an incomplete list of projects which have used LLVM for various purposes, showing that you can get up-and-running quickly with LLVM, giving time to do interesting things, even if you only have a semester in a University course. We also have a list of ideas for projects in LLVM. [Less]
GDC is a D language front end for the GNU Compiler Collection. It supports a number of targets and nearly all features of Digital Mars D.
This project is for homebrew console development tools based on the gnu compiler collection with additional tools and libraries to aid programming each supported console. The windows variants are be MinGW based.
The GNU Pascal Compiler (GPC) is, as the name says, the Pascal compiler of the GNU family. This means:
GPC is a 32/64 bit compiler,
does not have limits like the 64 kB or 640 kB limit known from certain operating systems – even on those systems
... [More]
–,
runs on all operating systems supported by GNU C nd more (note: the runtime system only supports ASCII based systems; that includes almost all of today's systems, but a few IBM machines still use EBCDIC; on those, the compiler might run, but the runtime support might need major changes),
can act as a native or as a cross compiler between all supported systems,
produces highly optimized code for all these systems,
is Free Software, is compatible to other GNU languages and tools such as GNU C and the GNU debugger. [Less]
This project aims at porting GCC to support the NEC SX vector CPU (SX6 - SX9). Targets of the project are: Document the SX assembler instructions, scalar CPU registers and existing calling conventions by using information from existing and openly
... [More]
available reference guides. This step is a prerequisite for such an open source effort. Write Machine description, expander definitions and insn patterns for SX CPU. Get GCC to produce assembler code for the SX, focus on scalar instructions.
This project doesn't aim to produce a competitive vectorizing compiler for the SX, the knowhow for that is far too special and the effort too high. Instead it aims at a compiler producing correct scalar code, as basis for further open-source projects for the SX architecture.
Wiki entry points:Status SVN repository access Building and Testing Documentation to read to get started with the development SX Architecture introduction FAQ Related projectsSX-Linux, an effort to investigate, design and implement Linux to the NEC SX architecture (accessible for registered users). Last updated: Erich Focht, September 2008 [Less]
Cibyl is a programming environment and binary translator that allows compiled C programs to execute on J2ME-capable phones. Cibyl uses GCC to compile the C programs to MIPS binaries, and these are then recompiled into Java bytecode. Cibyl programs
... [More]
are regular compiled Java programs, and Cibyl therefore performs relatively well.
With Cibyl, C programs can be ported to J2ME without switching language. It also allows C and Java code to be integrated in an easy and efficient way. The environment uses the GNU toolchain (GCC and binutils) and should work in all environments which provide them. Full-scale C applications, such as the Sarien AGI interpreter shown below has been ported to J2ME devices using Cibyl. [Less]
A native Win32 port of the BSD PSPSDK (ps2dev.org), with freely distributable import libraries and header files (DevPaks) for building cross compiled homebrew Sony PSP (PlayStation Portable) applications.
Cmm is a command-line programme that adds support for multimethods to C++. It does this by working as a translator for a C++ language extension, reading in Cmm source code and outputing C++ source code.
Cmm also implements some other optional C++
... [More]
extensions - an alternative declaration syntax, embedded functions, python-style indentation and reflection support. [Less]
It's sometimes hard to figure out how to configure
the combination of gcc and glibc to build a cross-toolchain.
This project tries to make it easy.
GCC-Algol is a project to implement Algol 60 language front end for GCC compiler suite, and to document the process of creating a GCC front end along the line.
IcyOwl is a open source, cross platform IDE. It features a lot of basic editing plus project compiling. Code completion is a feature being implemented. Other than that, it is extensible to support more languages (class tree, code completion, compilation) with the support of plug-ins.