GCC extensions

This is a list of (experimental) extensions to GCC which, for one reason or the other, did not (yet) make it into the official source tree. Please direct feedback and bugreports to their respective maintainers, not our mailing lists.

DLX port

A GCC Machine Description for the DLX machine described in Computer Architecture: A Quantitative Approach by Hennessy and Patterson.

PDP-10 port

This is an experimental port of GCC to the DEC PDP-10 architecture.

Bounds checking patches for GCC releases and GCC snapshots

These patches add a -fbounds-checking flag that adds bounds checking tests to pointer and array accesses. Richard Jones developed the patches against gcc 2.7 in 1995. Herman ten Brugge is the current maintainer and has updated the patches for GCC 2.95.2 and later. William Bader has patches as well.

You may freely mix object modules compiled with and without bounds checking. The bounds checker also includes replacements for mem* and str* routines and can detect invalid calls against checked memory objects, even from modules compiled without bounds checking.

Here is a compilation and execution of an example program.

ProPolice Stack-Smashing Protector

ProPolice automatically inserts stack-smashing protection code into an application at compile time to detect buffer overflow and corruption of pointers.


GCC Museum

In this section you will find extensions which do not (directly) apply to current GCC sources but are of historical interest or may be helpful to consult for future development.

Development tools for the TMS340x0

A GCC port to a bit-addressable architecture.

Libg++

Libg++, the GNU C++ library, has been superseded by libstdc++.

PentiumGCC

The PentiumGCC (short PGCC) was an extension of GCC specifically aimed at the newer Intel chips and their clones.