Welcome, Guest. Please login or register.

Author Topic: Fundraiser to support the development of LLVM for m68k  (Read 2835 times)

Description:

0 Members and 1 Guest are viewing this topic.

Offline adrian82Topic starter

Fundraiser to support the development of LLVM for m68k
« on: April 12, 2020, 04:38:01 PM »
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
- Amiga 1200 w/ Blizzard 1220/4 - ACA-1230/56MHz/64MB, OS3.9 + Debian unstable, Squirrel SCSI + CD-Writer and 160GB HDD
- Amiga 2000 ECS with A2090 and Genlock, OS 3.1
- Amiga 2000 with Blizzard 68060/128 MiB FastRAM
- Amiga 4000 Tower with Blizzard 68060/128 MiB FastRAM
- 2x Amiga 4000 with unknown accelerators
- 4x Amiga 500, Protar A500HD 2MB, C= A590 2MB, OS3.1
- Amiga 600 Standard + A601, OS3.1
- several 68k Macs
- Atari ST Mega
- 6
 

Offline adrian82Topic starter

Re: Fundraiser to support the development of LLVM for m68k
« Reply #1 on: June 24, 2020, 04:42:07 PM »
Hello!

A quick update. An LLVM developer working on the code has progressed the codebase far enough now that - with some additional fixes from me - it's now possible to cross-compile simple C programs with clang for Linux/m68k.

More details here: https://lists.debian.org/debian-68k/2020/06/msg00030.html

Adrian
- Amiga 1200 w/ Blizzard 1220/4 - ACA-1230/56MHz/64MB, OS3.9 + Debian unstable, Squirrel SCSI + CD-Writer and 160GB HDD
- Amiga 2000 ECS with A2090 and Genlock, OS 3.1
- Amiga 2000 with Blizzard 68060/128 MiB FastRAM
- Amiga 4000 Tower with Blizzard 68060/128 MiB FastRAM
- 2x Amiga 4000 with unknown accelerators
- 4x Amiga 500, Protar A500HD 2MB, C= A590 2MB, OS3.1
- Amiga 600 Standard + A601, OS3.1
- several 68k Macs
- Atari ST Mega
- 6
 
The following users thanked this post: Tygre