[Ffmpeg-devel] [PATCH] Getting rid of inlining failure warnings

Panagiotis Issaris takis.issaris
Thu Nov 9 16:59:10 CET 2006


Hi,

On Thu, 2006-11-09 at 16:32 +0100, Michael Niedermayer wrote:
>[...]
> > Regression tests succeed. As inlining already failed, removing the
> > specifier should have no performance impact (at least on all compilers
> > where the same inlining warnings would have appeared...)
> 
> the warnings often are specific to function X in Y and dont mean X is never
> inlined
Ouch! You are right, it is of course call specific... But, is there
another way to get rid of these warnings? I guess by first verifying all
the reasons for the warnings, addressing them as suggested below and
then removing the -Winline flag?

> [...]
> > @@ -4699,7 +4699,7 @@
> >      d->qscale= s->qscale;
> >  }
> >  
> > -static inline void encode_mb_hq(MpegEncContext *s, MpegEncContext *backup, MpegEncContext *best, int type,
> > +static void encode_mb_hq(MpegEncContext *s, MpegEncContext *backup, MpegEncContext *best, int type,
> >                             PutBitContext pb[2], PutBitContext pb2[2], PutBitContext tex_pb[2],
> >                             int *dmin, int *next_block, int motion_x, int motion_y)
> 
> ok, this is called from too many spots
Hmm. If it is called from very many different places wouldn't you expect
the performance to decrease because of increased code-size (caches)? Or
is it called many times from different spots in _different files_ so the
actively run code size at one specific time will not increase? I guess
benchmarking is the only way to find out, but I'm interested in your
reasoning about this.


> [...]

With friendly regards,
Takis
-- 
vCard: http://www.issaris.org/pi.vcf
Public key: http://www.issaris.org/pi.key





More information about the ffmpeg-devel mailing list