[FFmpeg-devel] [PATCH/RFC] intreadwrite.h rewrite

Måns Rullgård mans
Fri Apr 17 22:04:08 CEST 2009


Michael Niedermayer <michaelni at gmx.at> writes:

> On Sun, Apr 12, 2009 at 07:57:24PM +0100, M?ns Rullg?rd wrote:
>> M?ns Rullg?rd <mans at mansr.com> writes:
>> 
>> > Michael Niedermayer <michaelni at gmx.at> writes:
>> >
>> >> On Mon, Apr 06, 2009 at 07:07:25PM +0100, M?ns Rullg?rd wrote:
>> >>> Michael Niedermayer <michaelni at gmx.at> writes:
>> >>> 
>> >>> > On Sun, Apr 05, 2009 at 11:42:24PM +0100, M?ns Rullg?rd wrote:
>> >>> >> I would like to propose a rework of intreadwrite.h.  This new version
>> >>> >> supports per-arch implementations of the various macros allowing us to
>> >>> >> take advantage of special instructions or other properties the
>> >>> >> compiler does not know about.
>> >>> >
>> >>> > [...]
>> >>> >
>> >>> >> /*
>> >>> >>  * GCC fails miserably on the packed struct version which is used by
>> >>> >>  * default, so we override it here.
>> >>> >>  */
>> >>> >> 
>> >>> >> #define AV_RB64 AV_RB64
>> >>> >> static inline uint64_t AV_RB64(const void *p)
>> >>> >> {
>> >>> >>     return *(const uint64_t *)p;
>> >>> >> }
>> >>> >> 
>> >>> >> #define AV_WB64 AV_WB64
>> >>> >> static inline void AV_WB64(void *p, uint64_t v)
>> >>> >> {
>> >>> >>     *(uint64_t *)p = v;
>> >>> >> }
>> >>> >> 
>> >>> >
>> >>> > why are these inline functions instead of macros?
>> >>> 
>> >>> No reason.  I can certainly change it.
>> >>
>> >> please do, if its simpler
>> >
>> > Will do.
>> 
>> Any other comments?
>
> no

So can I apply this?

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



More information about the ffmpeg-devel mailing list