"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