[LLVMdev] [RFC/PATCH][0/4] New SystemZ backend

Ulrich Weigand
Sun, 14 Apr 2013 19:12:28 -0000

Anton Korobeynikov <anton at korobeynikov.info> wrote on 14.04.2013
20:40:33:

> > I'd like to propose the addition of a new SystemZ backend to the
LLVM
and
> > Clang code base.  We're interested in this for the same reason
we've
been
> > interested in the PowerPC back-end recently: to enable packages in
upcoming
> > enterprise Linux distributions that need LLVM support (e.g. 3D desktop
> > support via llvmpipe).
> Cool!
>
> > - focus on feature completeness and correctness, not performance  (no
> > platform-specific optimizations have been implemented yet)

Note that we *are* planning on working on this in the future, it's just
something we chose to skip for the first patch ...   B.t.w. even with
the patch as-is, we're only about 15% worse than current GCC on
SPECcpu2006 overall, so while there's clearly still room for improvement,
it's not really bad either.

> My understanding is that the most important things here are:
> 1. Precise flags tracking & using (LLVM is not so good at this)

Indeed.  This has proven to be quite important for the GCC
back-end too (back in the day ... :-)).

> 2. Good scheduling (are recent z10's still in-order?)

z10 is in-order, so scheduling is important (maybe moreso
than on z9).  z196 is now out-of-order, but still scheduling
for the instruction grouping logic seems to help with GCC ...

In addition, we also want to (optionally) support new z196
instructions.


Bye,
Ulrich