[FFmpeg-devel] [PATCH] Fix ff_imdct_calc_sse() on gcc-4.6.

Alex Converse alex.converse
Mon Jan 31 05:37:17 CET 2011


2011/1/30 M?ns Rullg?rd <mans at mansr.com>:
> Alex Converse <alex.converse at gmail.com> writes:
>
>> On Sun, Jan 30, 2011 at 2:13 AM, Reimar D?ffinger
>> <Reimar.Doeffinger at gmx.de> wrote:
>>> On Sun, Jan 30, 2011 at 01:22:05AM -0800, Alex Converse wrote:
>>>> On Sun, Jan 30, 2011 at 1:08 AM, Alex Converse <alex.converse at gmail.com> wrote:
>>>> >
>>>> > Gcc 4.6 only preserves the first value when using a vector with an "m"
>>>> > constraint.
>>>> > ---
>>>> > ?libavcodec/x86/fft_sse.c | ? ?4 ++--
>>>> > ?1 files changed, 2 insertions(+), 2 deletions(-)
>>>> >
>>>> >
>>>>
>>>> oops this generates an extra indirection. Those of you who like to
>>>> defend inline asm, please step up and make some suggestions.
>>>
>>> Use what would be your _only_ option (conceptually, not in implementation
>>> of course) if you didn't use inline asm:
>>> MANGLE and change DECLARE_ALIGNED to DECLARE_ASM_CONST
>>> There's also the option of a gcc bug report, I have some doubts that is
>>> a valid optimization (though there are constraints to make gcc load
>>> directly into a xmm register, but both that and the current code have
>>> needlessly unpredictable performance).
>
> The optimisation is valid, the constraint is wrong.
>
>> With MANGLE this time.
>>
>> From 51a872ff818bbb0071ab1649d104afcea48546c9 Mon Sep 17 00:00:00 2001
>> From: Alex Converse <alex.converse at gmail.com>
>> Date: Sun, 30 Jan 2011 01:04:41 -0800
>> Subject: [PATCH 1/2] Fix ff_imdct_calc_sse() on gcc-4.6.
>> MIME-Version: 1.0
>> Content-Type: multipart/mixed; boundary="------------1"
>>
>> This is a multi-part message in MIME format.
>> --------------1
>> Content-Type: text/plain; charset=UTF-8; format=fixed
>> Content-Transfer-Encoding: 8bit
>
> Please try to avoid sending attached patches in this format.



What's wrong with this format and how do I make my tools avoid it?



More information about the ffmpeg-devel mailing list