[FFmpeg-devel] [PATCH] read_time() for SPARC
Måns Rullgård
mans
Fri Sep 10 18:22:19 CEST 2010
Reimar D?ffinger <Reimar.Doeffinger at gmx.de> writes:
> On Fri, Sep 10, 2010 at 01:32:07PM +0400, Michael Kostylev wrote:
>> On Fri Sep 10 09:47:34 2010
>> M?ns Rullg?rd wrote:
>> >Yes, that instruction would be invalid there. In a pure 32-bit
>> >environment, you can't use the high half of 64-bit registers, even if
>> >they are physically present. Consider what happens on a context switch.
>>
>> An ancient kernel will not preserve the sse registers as well.
>
> And it won't enable SSE either.
Which means you can't use SSE at all on such a kernel, regardless of
the CPU it's running on.
> Which has the additional advantage that a kernel can avoid restoring
> and saving again the SSE state if the program doesn't use it during
> its slice. Handling CPU extensions with forward-, backward- and
> other compatibility is one of the very few things where others could
> take a lesson from x86.
Lazy FPU context switching is a pretty standard trick used on most
architectures with an FPU. Also, the compatible at all cost line is
one I'm quite happy others haven't followed.
--
M?ns Rullg?rd
mans at mansr.com
More information about the ffmpeg-devel
mailing list