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

Renato Golin via cfe-dev cfe-dev at lists.llvm.org
Tue Sep 29 02:12:52 PDT 2020


On Mon, 28 Sep 2020 at 19:13, Min-Yih Hsu <minyihh at uci.edu> wrote:

> Thanks for all your feedback, those were extremely helpful, especially the
> guidelines to split the patches. I think in my case, patch 3 ~ 6 are the
> most problematic, I will rework them shortly.
>

Perfect, thanks!

And most importantly, I'll present a roadmap regarding blockers we need to
> clear and milestones to reach before graduating from experimental targets.
>

Great!

This would be slightly different than the Github issues, and should be
focused on the two milestones: adding the backend as experimental (ie, what
you have today) and moving to production. Both should have a list of
features that are expected to exist / be implemented and some rough time
frame to get there.

Given you already have what looks like a working back-end (maybe not
production yet, but), I'm expecting the experimental target to be more in
shape than some others we had recently.

You should, however, expect more reviews on policy (style, patterns,
containers), due to the previous separate nature of the development. This
is to make sure the code goes in in a way that everybody else understands
and can change. Don't take this as a measure of code quality, only style
adjustment to the new community.

We'll also try to prepare the buildbot, as well as testing bots running
> m68k QEMU (IIUC, we need to prepare our own server...right?)
>

Right.

During the experimental phase, none of the other buildbots will be building
your target, so you must make sure at least one is. This can be running on
any hardware (x86, arm, etc) but needs to be building the experimental
back-end and running all its tests (check-all).

Once the target moves on to production, most other bots will be building it
and testing, so you don't need that simple builder any more. But you can
have builders with different configurations that aren't built by any other
builder out there, to increase coverage and trust in your back-end.

You should also eventually try to run the LLVM test-suite on the target.
I'm not sure it's possible to run all, due to the aged nature of the 68k,
or if the tests will produce the same results (we had some trouble on Arm
vs x86, for example). But trying to run them and understanding the issues
gives you a lot of good information about your back-end.

The Debian tests are similar to the test-suite. Their builds will be slower
than a standard bot cycle and so will end up queueing a lot of commits. It
will be harder to investigate the issues, you'll need longer bisects,
codegen tests, etc.

All buildbots should initially be in the "silent master" (ie no email
warnings when they break), and your community should monitor them closely.

Once the target leaves experimental, and we expect all bots to be mostly
green by then, you can move the builders to the "loud master", which will
start nagging people when they break the build.

The expectation is that, by then, things will be stable enough (one of the
criteria to move to production) that the noise will be no more annoying
than any other buildbot, and consisting mostly of true positives.

cheers,
--renato
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-dev/attachments/20200929/1b00f53a/attachment.html>


More information about the cfe-dev mailing list