[FFmpeg-devel] [PATCH]Disable DECLARE_ASM_CONST workaround for icc 12

Måns Rullgård mans
Sat Jun 5 17:31:05 CEST 2010


Reimar D?ffinger <Reimar.Doeffinger at gmx.de> writes:

> On Sat, Jun 05, 2010 at 03:56:36PM +0100, M?ns Rullg?rd wrote:
>> Reimar D?ffinger <Reimar.Doeffinger at gmx.de> writes:
>> > On Sat, Jun 05, 2010 at 11:33:08AM +0100, M?ns Rullg?rd wrote:
>> >> Carl Eugen Hoyos <cehoyos at ag.or.at> writes:
>> >> IMO this problem should be solved differently.  Combining it with the
>> >> alignment macro is weird to say the least.
>> >
>> > I was never supposed to be combined with the aligned macro, that's
>> > why the DECLARE_ASM_CONST was added.
>> 
>> DECLARE_ASM_CONST expands to something containing an alignment
>> specifier, and that is IMO mixing unrelated things.  A better solution
>> would be to do something like
>>   #define static_used static __attribute__((used))
>> when that attribute works and to nothing otherwise, then use that in a
>> normal DECLARE_ALIGNED invocation if extra alignment is required.
>
> Well, the idea was just to have one single macro saying "do whatever
> it takes so that this is available as a constant for assembler code
> in this file".

Yes, and that description doesn't include anything about alignment.
Preventing the compiler from removing a seemingly unused variable and
increasing the alignment are quite distinct operations.  There is no
inherent reason you'd always want them together.

> To me such a static_used define feels like naming things after a gcc-specific
> hack instead of what is really teh intention.

So name it something else.  It was only an example.

> But I'm not objecting if anyone has strong feelings about this...

It would reduce the amount of duplication in those macros.

-- 
M?ns Rullg?rd
mans at mansr.com



More information about the ffmpeg-devel mailing list