mirror of https://git.ffmpeg.org/ffmpeg.git
aarch64: Only enable extensions in the intended files/regions
This eases actual development of the assembly functions, by only allowing extension instructions within the sections that explicitly enable them, instead of having all extensions enabled everywhere. Signed-off-by: Martin Storsjö <martin@martin.st>
This commit is contained in:
parent
0679e85331
commit
a4877f1ec1
|
@ -339,6 +339,7 @@ function ff_hevc_put_hevc_epel_uni_v64_8_neon, export=1
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
#if HAVE_I8MM
|
#if HAVE_I8MM
|
||||||
|
ENABLE_I8MM
|
||||||
|
|
||||||
.macro EPEL_H_HEADER
|
.macro EPEL_H_HEADER
|
||||||
movrel x5, epel_filters
|
movrel x5, epel_filters
|
||||||
|
@ -1963,7 +1964,7 @@ function ff_hevc_put_hevc_epel_uni_w_hv64_8_neon_i8mm, export=1
|
||||||
ret
|
ret
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
DISABLE_I8MM
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -1558,6 +1558,7 @@ function ff_hevc_put_hevc_qpel_uni_w_v64_8_neon, export=1
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
#if HAVE_I8MM
|
#if HAVE_I8MM
|
||||||
|
ENABLE_I8MM
|
||||||
|
|
||||||
.macro calc_all2
|
.macro calc_all2
|
||||||
calc v30, v31, v16, v18, v20, v22, v24, v26, v28, v30, v17, v19, v21, v23, v25, v27, v29, v31
|
calc v30, v31, v16, v18, v20, v22, v24, v26, v28, v30, v17, v19, v21, v23, v25, v27, v29, v31
|
||||||
|
@ -3395,4 +3396,5 @@ function ff_hevc_put_hevc_qpel_uni_w_hv64_8_neon_i8mm, export=1
|
||||||
ret
|
ret
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
DISABLE_I8MM
|
||||||
#endif // HAVE_I8MM
|
#endif // HAVE_I8MM
|
||||||
|
|
|
@ -41,12 +41,24 @@
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if HAVE_AS_ARCHEXT_DOTPROD_DIRECTIVE
|
#if HAVE_AS_ARCHEXT_DOTPROD_DIRECTIVE
|
||||||
.arch_extension dotprod
|
#define ENABLE_DOTPROD .arch_extension dotprod
|
||||||
|
#define DISABLE_DOTPROD .arch_extension nodotprod
|
||||||
|
#else
|
||||||
|
#define ENABLE_DOTPROD
|
||||||
|
#define DISABLE_DOTPROD
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if HAVE_AS_ARCHEXT_I8MM_DIRECTIVE
|
#if HAVE_AS_ARCHEXT_I8MM_DIRECTIVE
|
||||||
.arch_extension i8mm
|
#define ENABLE_I8MM .arch_extension i8mm
|
||||||
|
#define DISABLE_I8MM .arch_extension noi8mm
|
||||||
|
#else
|
||||||
|
#define ENABLE_I8MM
|
||||||
|
#define DISABLE_I8MM
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
DISABLE_DOTPROD
|
||||||
|
DISABLE_I8MM
|
||||||
|
|
||||||
|
|
||||||
/* Support macros for
|
/* Support macros for
|
||||||
* - Armv8.3-A Pointer Authentication and
|
* - Armv8.3-A Pointer Authentication and
|
||||||
|
|
Loading…
Reference in New Issue