[FFmpeg-devel] Fix VP3 IDCT on Win64

Reimar Döffinger Reimar.Doeffinger
Thu Aug 26 07:13:06 CEST 2010


On Wed, Aug 25, 2010 at 08:43:25PM -0400, Ronald S. Bultje wrote:
> Hi Vitor,
> 
> On Wed, Aug 25, 2010 at 8:01 PM, Vitor Sessak <vitor1001 at gmail.com> wrote:
> > And what would you do with code that can not be translated to yasm (like asm
> > that supposed to be inlined in the middle of a C function)? Or there is no
> > such code that causes crashes in win64? Would using a macro to only clobber
> > the mmx regs on the configurations that actually need it be a solution?
> 
> Those will stay inline of course. If an issue arises where we really
> need multiple (>6) XMM registers in inline functions (which I can
> honestly not imagine), then we'll think about a solution then and
> there.

The solution is easy: only add the clobbers for compilers where they
are supported (I assume this was the issue on Win32/BSD? You never
said _what_ the problem was). This can be tested in configure.
And you'll have to specify the clobbers for inline functions even
for a single XMM register and even for Linux, it's just unreasonable
to hope that the compiler will never place some float stuff in a
bad location, particularly with global optimization enabled.



More information about the ffmpeg-devel mailing list