[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[MirageOS-devel] Fwd: [ANN] RISC-V backend for the native-code OCaml compiler



Forwarding in case it is of interest.

Best wishes,
Nicolas


---------- Forwarded message ----------
From: Nicolas Ojeda Bar <n.oje.bar@xxxxxxxxx>
Date: Sun, Jun 7, 2015 at 11:14 PM
Subject: [ANN] RISC-V backend for the native-code OCaml compiler
To: caml-list@xxxxxxxx


Dear list,

I am happy two announce an ALPHA release of a new native-code backend
for the OCaml compiler.

It targets the RISC-V instruction set (http://riscv.org) being
developed at UC Berkeley.  The lowRISC project at the University of
Cambridge (http://www.lowrisc.org) is developing open-source SoCs
based on this instruction set.

This release is in the form of a cross-compiler.  It depends on the
cross-compiling support recently added to 4.02.0+trunk.  It outputs
ELF binaries that can be simulated directly on the RISC-V ISA
simulator (spike) or run natively in a suitable virtual machine.

For detailed installation instructions, please visit:
https://github.com/nojb/riscv-ocamlopt.

The new backend is based on the old 3.12 MIPS backend and the
currently shipping arm64 backend.  Most compiler tests that can
compile in the RISC-V environment pass successfully (including the
"big" ones such as misc-bk, misc/hamming, misc/boyer, misc/nucleic,
misc/bdd, etc.).

Limitations (some are due to the state of RISC-V software tools, some
are due to limitations of the cross-compiling support in the current
OCaml compiler, some just need work):

- Only 64-bit for now (in particular the host has to be 64-bit as well)
- Unix module is not yet supported
- The current version uses the Newlib C library, which is somewhat
less capable than glibc.
- Shared library support may or may not work (has not been tested)

Planned short term improvements (patches welcome!):

- 32-bit support
- cfi directives (and/or frame pointer inclusion) for easier debugging
- switch to glibc
- soft float support
- Unix support

Development is ongoing.

Suggestions, questions of any kind very welcome!

Thanks very much,

Best wishes,
Nicolas

_______________________________________________
MirageOS-devel mailing list
MirageOS-devel@xxxxxxxxxxxxxxxxxxxx
http://lists.xenproject.org/cgi-bin/mailman/listinfo/mirageos-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.