FFmpeg
libavutil
aarch64
intreadwrite.h
Go to the documentation of this file.
1
/*
2
* This file is part of FFmpeg.
3
*
4
* FFmpeg is free software; you can redistribute it and/or
5
* modify it under the terms of the GNU Lesser General Public
6
* License as published by the Free Software Foundation; either
7
* version 2.1 of the License, or (at your option) any later version.
8
*
9
* FFmpeg is distributed in the hope that it will be useful,
10
* but WITHOUT ANY WARRANTY; without even the implied warranty of
11
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12
* Lesser General Public License for more details.
13
*
14
* You should have received a copy of the GNU Lesser General Public
15
* License along with FFmpeg; if not, write to the Free Software
16
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
17
*/
18
19
#ifndef AVUTIL_AARCH64_INTREADWRITE_H
20
#define AVUTIL_AARCH64_INTREADWRITE_H
21
22
#if HAVE_INTRINSICS_NEON
23
24
#include <arm_neon.h>
25
26
#define AV_COPY128 AV_COPY128
27
static
av_always_inline
void
AV_COPY128
(
void
*d,
const
void
*
s
)
28
{
29
uint8x16_t
tmp
= vld1q_u8((
const
uint8_t *)
s
);
30
vst1q_u8((uint8_t *)d,
tmp
);
31
}
32
33
#define AV_ZERO128 AV_ZERO128
34
static
av_always_inline
void
AV_ZERO128
(
void
*d)
35
{
36
uint8x16_t
zero
= vdupq_n_u8(0);
37
vst1q_u8((uint8_t *)d,
zero
);
38
}
39
40
#endif
/* HAVE_INTRINSICS_NEON */
41
42
#endif
/* AVUTIL_AARCH64_INTREADWRITE_H */
tmp
static uint8_t tmp[11]
Definition:
aes_ctr.c:28
s
#define s(width, name)
Definition:
cbs_vp9.c:198
AV_COPY128
#define AV_COPY128(d, s)
Definition:
intreadwrite.h:642
AV_ZERO128
#define AV_ZERO128(d)
Definition:
intreadwrite.h:670
zero
static int zero(InterplayACMContext *s, unsigned ind, unsigned col)
Definition:
interplayacm.c:121
av_always_inline
#define av_always_inline
Definition:
attributes.h:49
Generated on Wed Oct 9 2024 19:22:50 for FFmpeg by
1.8.17