"Ronald S. Bultje" <rsbul...@gmail.com> writes:

> Hi,
>
> On Fri, Sep 14, 2012 at 6:19 PM, Måns Rullgård <m...@mansr.com> wrote:
>> "Ronald S. Bultje" <rsbul...@gmail.com> writes:
>>
>>> From: "Ronald S. Bultje" <rsbul...@gmail.com>
>>>
>>> Use this in VP8 DSP functions so they can be used if there is no
>>> aligned stack (e.g. MSVC 32bit).
>>>
>>> Note: it is currently slightly ugly, we need a register to store the
>>> unaligned stack; there may be better solutions for this. Please comment.
>>
>> You could store the original stack pointer at a fixed offset from the
>> aligned stack pointer.
>
> I actually do that; the problem is that it means I can't directly use
> the original stack arguments (on x86-32: all of them), and I need to
> align stack before loading arguments off the stack (so I can share the
> instructions to reserve stack space with win64 xmm backup), so we're
> stuck in a catch-22 then.
>
> I can indeed use the last argument until I have loaded the args off
> the stack (final one clobbering itself by loading onto itself), but
> then I can't use stack arguments in the middle of the function (sws
> uses that in a few places).

Copy the stack arguments to the proper offset on the aligned stack.

-- 
Måns Rullgård
m...@mansr.com
_______________________________________________
libav-devel mailing list
libav-devel@libav.org
https://lists.libav.org/mailman/listinfo/libav-devel

Reply via email to