Hello!
After a very successful fundraiser campaign on Bountysource.com to support the modernization and preservation of the m68k backend in GCC [1], we have started a new fundraiser which aims to support the development of an m68k backend for LLVM [2].
LLVM is a very powerful compiler toolchain [3] which has a strict separation between language frontends (C/C++/Fortran etc) and its backends (x86_64, arm, arm64 etc). This separation allows LLVM to be easily adopted as backends for other languages such as Rust, Julia or Swift which means that developers of LLVM frontend languages don't need to bother with backend development and can almost fully concentrate on the frontend.
Thus, adding an m68k backend to LLVM would open up the Amiga to a world of modern languages like Rust which are being adopted by more and more software projects. Getting m68k support into LLVM and consequently Rust (the latter being rather easy with just a couple of hundred lines of code) will make sure the Amiga - and any other m68k platform - won't fall behind in the world of modern software.
The goal of this campaign is to finalize the m68k LLVM backend written by Artyom Goncharov [4] who worked on the backend as a little learning project but stopped the development after the code reached a minimally usable form. There is already at least one experienced LLVM developer working on the code and I expect the first improvements for the backend to happen in the upcoming weeks.
Thanks,
Adrian
> [1]
https://forum.amiga.org/index.php?topic=74313> [2]
https://www.bountysource.com/issues/90829856-llvm-complete-the-m68000-backend-so-it-can-be-merged-upstream> [3]
https://en.wikipedia.org/wiki/LLVM> [4]
https://github.com/M680x0/M680x0-llvm