[Mono-dev] Mono/SH4 Alpha

Cedric VINCENT cedric.vincent at st.com
Wed May 6 08:13:20 EDT 2009

Hi all,

We, at STMicroelectronics, are proud to announce that the SH4 port of
Mono has reached the "alpha" state. Fearless developers can give it a
try using this binary package:

    CPU modes: little-endian, FP double precision, FP simple transfer

This current version of Mono/SH4 is able to run, for instance, the
Mono C# compilers against simple sources, but it is not complete
enough to run applications like IronPython or IKVM. Don't expect too
much from this version because the runtime test suite revealed 45
failures over 360 tests (http://code.google.com/p/mono-sh4/issues).
Regarding the JIT test suite, only two bugs were exposed:

    . the opcode "jmp" (only used for tail-call) is not yet supported,
      but we are waiting for a fully working implementation in other

    . arguments are not yet popped off the stack during unwinding,
      however this is not a big issue because the stack frame is
      automatically restored when the function catching exceptions

Beside SH4-specific fixes and optimizations, we are now working on the
beta version to provide a decent support for GCC4NET generated code,
IronPython, IKVM, and Boo interpreter/compiler. It will also provide
the following features:

    . varargs support
    . debug support
    . AOT compilation
    . efficient constant-pool manager

Some tasks are still unplanned but we may reconsider their priorities
if someone ask for:

    . continuations
    . pinvoke with structures
    . the opcode "jmp" (only used for tail-call)
    . wrapper native -> managed
    . native SIMD

Best regards,
Cédric and the Mono/SH4 team @ STMicroelectronics.

More information about the Mono-devel-list mailing list