Status of the GCC MMIX port

See also the installation instructions and status of other tools and parts.
The GCC port for MMIX works, and is included in the official GCC sources, to be included in the next major release, most probably numbered 3.1.

A presentation of the ABI and stack frame layout was held at the MMIXfest 2001-10-06 in Munich. Note the alternative, non-default ABI, presented there.

The GCC port is functional. It seems to emit correct code and runs (most of) the GCC test-suite correctly. Exceptions to this are due to bugs in the GCC core (different ones coming and going on a daily basis) and some tests expecting questionable results. Here is a summary of the results with the tar-ball and dejagnu board description file mentioned in the installation instructions. When run with make check-gcc 'RUNTESTFLAGS=--target_board=mmixware-sim'
i.e. executing executable tests in the mmix simulator it produces:

		=== gcc Summary ===

# of expected passes            16256
# of unexpected failures        39
# of expected failures          57
# of unresolved testcases       44
# of unsupported tests          72
.../xgcc version 3.1 20011201 (experimental)

                === g++ Summary ===

# of expected passes            6673
# of unexpected failures        26
# of unexpected successes       2
# of expected failures          94
# of untested testcases         27
# of unsupported tests          1
.../g++ version 3.1 20011201 (experimental)
With the newlib C runtime library, simple "hello world" programs work, for both C and C++.

Work is under way to collect real-world programs, running them in the mmix simulator to collect necessary performance (regression) data for improving the port. One of these programs is of course the mmix simulator itself, perhaps when running a pre-compiled version (for regression-testing purposes) of the mmix simulator, with this recursion terminated with the silly.mms program, for maximum coverage of the mmix program.

Known issues

By H-P
Latest update: 2001-12-02