mirror of
https://github.com/xenia-project/FFmpeg.git
synced 2024-11-24 03:59:43 +00:00
Add LOCAL_ALIGNED() macro for declaring aligned local arrays
Originally committed as revision 21864 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
2480c390bd
commit
d96cd42969
2
configure
vendored
2
configure
vendored
@ -1035,6 +1035,8 @@ HAVE_LIST="
|
||||
libdc1394_1
|
||||
libdc1394_2
|
||||
llrint
|
||||
local_aligned_16
|
||||
local_aligned_8
|
||||
log2
|
||||
log2f
|
||||
loongson
|
||||
|
@ -700,6 +700,22 @@ static inline void emms(void)
|
||||
# define STRIDE_ALIGN 8
|
||||
#endif
|
||||
|
||||
#define LOCAL_ALIGNED(a, t, v, s, ...) \
|
||||
uint8_t la_##v[sizeof(t s __VA_ARGS__) + (a)]; \
|
||||
t (*v) __VA_ARGS__ = (void *)FFALIGN((uintptr_t)la_##v, a)
|
||||
|
||||
#if HAVE_LOCAL_ALIGNED_8
|
||||
# define LOCAL_ALIGNED_8((t, v, s, ...) DECLARE_ALIGNED_8(t, v) s __VA_ARGS__
|
||||
#else
|
||||
# define LOCAL_ALIGNED_8(t, v, s, ...) LOCAL_ALIGNED(8, t, v, s, __VA_ARGS__)
|
||||
#endif
|
||||
|
||||
#if HAVE_LOCAL_ALIGNED_16
|
||||
# define LOCAL_ALIGNED_16((t, v, s, ...) DECLARE_ALIGNED_16(t, v) s __VA_ARGS__
|
||||
#else
|
||||
# define LOCAL_ALIGNED_16(t, v, s, ...) LOCAL_ALIGNED(16, t, v, s, __VA_ARGS__)
|
||||
#endif
|
||||
|
||||
/* PSNR */
|
||||
void get_psnr(uint8_t *orig_image[3], uint8_t *coded_image[3],
|
||||
int orig_linesize[3], int coded_linesize,
|
||||
|
Loading…
Reference in New Issue
Block a user