[FFmpeg-devel] [PATCH] x86inc: support stack mem allocation and re-alignment in PROLOGUE.

Ronald S. Bultje rsbultje at gmail.com
Thu Dec 13 21:09:55 CET 2012


Hi,

On Thu, Dec 13, 2012 at 10:20 AM, Alexander Strasser <eclipse7 at gmx.net> wrote:
> Hi Ronald, Hi Anton!
>
> Ronald S. Bultje wrote:
>> On Wed, Dec 12, 2012 at 7:03 PM, Michael Niedermayer <michaelni at gmx.at> wrote:
>> > On Sat, Dec 08, 2012 at 04:12:38PM -0800, Ronald S. Bultje wrote:
>> >> From: "Ronald S. Bultje" <rsbultje at gmail.com>
>> >>
>> >> Use this in VP8/H264-8bit loopfilter functions so they can be used if
>> >> there is no aligned stack (e.g. MSVC 32bit or ICC 10.x).
>> >> ---
>> >>  libavcodec/x86/h264_deblock.asm |  27 ++----
>> >>  libavcodec/x86/h264dsp_init.c   |   4 +-
>> >>  libavcodec/x86/vp8dsp.asm       |  68 ++++++++-------
>> >>  libavcodec/x86/vp8dsp_init.c    |   8 --
>> >>  libavutil/x86/x86inc.asm        | 185 ++++++++++++++++++++++++++++++++--------
>> >>  5 files changed, 191 insertions(+), 101 deletions(-)
>> >
>> > This patch breaks mingw (fate-h264-conformance-ba1_ft_c amongth many
>> > others)
>> > http://fate.ffmpeg.org/report.cgi?time=20121212232000&slot=x86_64-debian-mingw32-gcc-4.6
>> >
>> > It also seems to break MSVC
>> > http://fate.ffmpeg.org/history.cgi?slot=x86_64-msvc10-windows-native
>> >
>> > please fix these
>>
>> http://lists.libav.org/pipermail/libav-devel/2012-December/040286.html
>>
>> Patch isn't actually mine, it's from Anton Mitrofanov
>> <BugMaster at narod.ru> on #x264.
>
>   I guess it also broke compilation on Cygwin. I didn't investigate closely yet.
>
>   http://fate.ffmpeg.org/log.cgi?time=20121213170718&log=compile&slot=x86_64-win7-cygwin-gcc-4.5.3

That's not Anton's fault, he fixed a bug in my original patch. It
seems nasm doesn't like the latest changes to cglobal. I don't know
why. Maybe it's related to DEFINE_ARGS_INTERNAL inlining not working
correctly with varargs in nasm? Can you try manually unrolling
DEFINE_ARGS_INTERNAL in each of its 3 callers and see if that fixes
it?

Ronald


More information about the ffmpeg-devel mailing list