annotate avr32/bswap.h @ 993:f8db9a2bae05 libavutil

Add av_ prefix to bswap macros
author mru
date Sat, 10 Jul 2010 22:12:30 +0000
parents 4d9ad0ed07d0
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
770
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
1 /*
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
2 * This file is part of FFmpeg.
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
3 *
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
4 * FFmpeg is free software; you can redistribute it and/or
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
5 * modify it under the terms of the GNU Lesser General Public
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
6 * License as published by the Free Software Foundation; either
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
7 * version 2.1 of the License, or (at your option) any later version.
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
8 *
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
9 * FFmpeg is distributed in the hope that it will be useful,
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
12 * Lesser General Public License for more details.
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
13 *
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
14 * You should have received a copy of the GNU Lesser General Public
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
15 * License along with FFmpeg; if not, write to the Free Software
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
16 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
17 */
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
18
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
19 #ifndef AVUTIL_AVR32_BSWAP_H
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
20 #define AVUTIL_AVR32_BSWAP_H
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
21
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
22 #include <stdint.h>
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
23 #include "config.h"
873
4d9ad0ed07d0 Replace many includes of libavutil/common.h with what is actually needed
mru
parents: 770
diff changeset
24 #include "libavutil/attributes.h"
770
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
25
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
26 #if HAVE_INLINE_ASM
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
27
993
f8db9a2bae05 Add av_ prefix to bswap macros
mru
parents: 873
diff changeset
28 #define av_bswap16 av_bswap16
f8db9a2bae05 Add av_ prefix to bswap macros
mru
parents: 873
diff changeset
29 static av_always_inline av_const uint16_t av_bswap16(uint16_t x)
770
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
30 {
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
31 __asm__ ("swap.bh %0" : "+r"(x));
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
32 return x;
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
33 }
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
34
993
f8db9a2bae05 Add av_ prefix to bswap macros
mru
parents: 873
diff changeset
35 #define av_bswap32 av_bswap32
f8db9a2bae05 Add av_ prefix to bswap macros
mru
parents: 873
diff changeset
36 static av_always_inline av_const uint32_t av_bswap32(uint32_t x)
770
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
37 {
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
38 __asm__ ("swap.b %0" : "+r"(x));
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
39 return x;
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
40 }
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
41
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
42 #endif /* HAVE_INLINE_ASM */
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
43
7ee08d73ac3a AVR32: inline asm for bswap.h
mru
parents:
diff changeset
44 #endif /* AVUTIL_AVR32_BSWAP_H */