[cfe-dev] [llvm-dev] [RFC] Backend for Motorola 6800 series CPU (M68k)

Renato Golin via cfe-dev cfe-dev at lists.llvm.org
Mon Sep 28 02:25:18 PDT 2020


On Sun, 27 Sep 2020 at 20:27, John Paul Adrian Glaubitz via llvm-dev <
llvm-dev at lists.llvm.org> wrote:

> As many of these classic systems still have very active communities,
> especially the Amiga community,
> development efforts are still very strong. For example, despite being the
> oldest port of the Linux
> kernel, the m68k port has still multiple active kernel maintainers and is
> regularly gaining new
> features and drivers.
>

One of the hardest things to do is to build a community of maintainers
around. I used to love those architectures, and I still ran emulators on
them, but I never contributed back with code (mainly because it's not my
area of expertise).

But the motorola 68k still is an iconic chip and still has a large breadth
of maintainers in other projects. I think it's reasonably safe to assume
we'll attract some of them into LLVM for the foreseeable future. That would
be a big win for us.

I think this, and other topics in the requirements' list [1] are covered
for the 68k.

For now, codegen quality and ABI conformance probably won't be on par with
the target's requirements (discussion on pascal vs C for example), but
that's a solvable problem. If the code follows the LLVM policies and the
maintainers have a clear list of points to address, introducing it as
experimental would be a reasonably trivial thing to do.

In theory, a target can remain in "experimental" mode for a while. But the
more it does, the harder it gets to keep it working. Basically, the cost of
doing that falls almost entirely on the local target's community while
experimental.

It's not until the target is built by default (leaves experimental status)
that the other buildbots start building and testing them, and developers
start building it locally and fixing issues before submitting the review.

But the quality has to be "production" by then, so the 68k community in
LLVM should really have a plan to remove the experimental tag soon.
Maintenance after that reduces to continuous development (new features) and
bug fixing and is much more amenable.

Has anyone compiled a list of features that will be added and what's the
timeframe for them? What's to be done during the experimental phase and
afterwards?

cheers,
--renato

[1] http://llvm.org/docs/DeveloperPolicy.html#adding-a-new-target
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20200928/860d806f/attachment.html>


More information about the cfe-dev mailing list