Re: armelfp: new architecture name for an armel variant
> > I would be a bit scared that this has a chance of getting out of date,
> > or be confusing because other ports might be v7 as well, or also
> > because this only reflects a subset of the ports' requirement (VFP
> > level for instance isn't reflected, such as vfpv2, vfpv3).
>
> ARMv7 (which I think is VFPv3) has 64 quads-worth of floating point
> registers (64 singles or 32 doubles). Earlier versions have 32 (32
> singles or 16 doubles).
There are several variants of VFPv3. Some have the additional registers
(typically the implementations that also have NEON), some do not. VFPv3 also
introduces some new instructions, so even the variants with the restricted
register file will not work on VFPv2 hardware (e.g. arm11).
There are also variants that only implement single precision operations,
though I don't think those are currently being used in core capable of running
regular Linux.
> The calling convention doesn't change --- d0-d7
> (s0-s15) are used for parameter passing, and everything else are
> callee-saves scratch registers.
>
> This means that code built for ARMv7 will mostly work on ARMv6 and
> before, but if it happens to use more than a certain number of registers
> it'll fail in really odd ways.
You mean VFPv3 v.s. VFPv2? Saying ARMv7 when you actually mean a particular
FPU is extremely unhelpful. In the same way that saying "ARMv7" when you
actually mean "Cortex-A8" (or vice-versa) is likely to get you the wrong
response.
Either way, I'd expect the typical result to be SIGILL.
Paul
Reply to: