Obsolete powerpc*-*-*spe*
Segher Boessenkool
segher@kernel.crashing.org
Thu Mar 16 19:25:00 GMT 2017
Hi Andrew,
On Wed, Mar 15, 2017 at 09:43:20PM +0000, Andrew Jenner wrote:
> On 15/03/2017 14:26, Segher Boessenkool wrote:
> >I do not think VLE can get in, not in its current shape at least.
>
> That's unfortunate. Disregarding the SPE splitting plan for a moment,
> what do you think would need to be done to get it into shape? I had
> thought we were almost there with the patches that I sent to you and
> David off-list last year.
>
> > VLE
> >is very unlike PowerPC in many ways so it comes at a very big cost to
> >the port (maintenance and otherwise -- maintenance is what I care about
> >most).
>
> I completely understand.
That answers your previous question, too.
> >Since SPE and VLE only share the part of the rs6000 port that doesn't
> >change at all (except for a bug fix once or twice a year), and everything
> >else needs special cases all over the place, it seems to me it would be
> >best for everyone if we split the rs6000 port in two, one for SPE and VLE
> >and one for the rest. Both ports could then be very significantly
> >simplified.
> >
> >I am assuming SPE and VLE do not support AltiVec or 64-bit PowerPC,
> >please correct me if that is incorrect. Also, is "normal" floating
> >point supported at all?
>
> My understanding is that SPE is only present in the e500v1, e500v2 and
> e200z[3-7] cores, all of which are 32-bit only and do not have classic
> floating-point units. SPE and Altivec cannot coexist as they have some
> overlapping instruction encodings. The successor to e500v2 (e500mc)
> reinstated classic floating-point and got rid of SPE.
e500mc (like e5500, e6500) are just PowerPC (and they use the usual ABIs),
so those should stay on the "rs6000 side".
> >Do you (AdaCore and Mentor) think splitting the port is a good idea?
>
> It wouldn't have been my preference, but I can understand the appeal of
> that plan for you. I'm surprised that the amount of shared code between
> SPE and PowerPC is as little as you say, but you have much more
> experience with the PowerPC port than I do, so I'll defer to your
> expertise on that matter.
>
> Are you proposing to take on the task of actually splitting it yourself?
> If so, that would make me a lot happier about it.
Yes, I can do the mechanics. But I cannot do most of the testing. And
this does not include any of the huge simplifications that can be done
after the split: both ports will be very close to what we have now,
immediately after the split.
> >> -te200z0
> >> -te200z3
> >> -te200z4
> >
> > These are VLE?
>
> Yes.
>
> > Do some of those also support PowerPC?
>
> All the e200 cores apart from e200z0 can execute 32-bit instructions as
> well as VLE, though we'll always generate VLE code when targetting them
> (otherwise they're fairly standard).
Do any e200 support SPE, or classic FP?
Segher
More information about the Gcc
mailing list