mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2025-12-07 22:00:00 +00:00
avfilter/x86/Makefile: Only compile ASM init files when X86ASM is enabled
To do so, simply add these init files to X86ASM-OBJS instead of OBJS in the Makefile. The former is already used for the actual assembly files, but using them for the C init files just works, because the build system uses file extensions to derive whether it is a C or a NASM file. This avoids compiling unused function stubs and also reduces our reliance on DCE: We don't add %if checks to the asm files except for AVX, AVX2, FMA3, FMA4, XOP and AVX512, so all the MMX-SSE4 functions will be available. It also allows to remove HAVE_X86ASM checks in these init files. Reviewed-by: Kacper Michajłow <kasper93@gmail.com> Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
This commit is contained in:
parent
eccf130fdb
commit
7356981bec
48 changed files with 107 additions and 159 deletions
|
|
@ -77,7 +77,7 @@ av_unused static void ff_afir_init(AudioFIRDSPContext *dsp)
|
|||
|
||||
#if ARCH_RISCV
|
||||
ff_afir_init_riscv(dsp);
|
||||
#elif ARCH_X86
|
||||
#elif ARCH_X86 && HAVE_X86ASM
|
||||
ff_afir_init_x86(dsp);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -116,7 +116,7 @@ void ff_anlmdn_init(AudioNLMDNDSPContext *dsp)
|
|||
dsp->compute_distance_ssd = compute_distance_ssd_c;
|
||||
dsp->compute_cache = compute_cache_c;
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_anlmdn_init_x86(dsp);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -236,7 +236,7 @@ static av_cold void volume_init(VolumeContext *vol)
|
|||
break;
|
||||
}
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_volume_init_x86(vol);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1415,7 +1415,7 @@ static int config_output(AVFilterLink *outlink)
|
|||
s->update_sono = update_sono_yuv;
|
||||
}
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_showcqt_init_x86(s);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -218,7 +218,7 @@ av_cold void ff_bwdif_init_filter_line(BWDIFDSPContext *s, int bit_depth)
|
|||
s->filter_edge = ff_bwdif_filter_edge_c;
|
||||
}
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_bwdif_init_x86(s, bit_depth);
|
||||
#elif ARCH_AARCH64
|
||||
ff_bwdif_init_aarch64(s, bit_depth);
|
||||
|
|
|
|||
|
|
@ -143,7 +143,7 @@ void ff_colorspacedsp_init(ColorSpaceDSPContext *dsp)
|
|||
|
||||
dsp->multiply3x3 = multiply3x3_c;
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_colorspacedsp_x86_init(dsp);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -132,7 +132,7 @@ static inline void ff_sobel_init(ConvolutionContext *s, int depth, int nb_planes
|
|||
if (s->depth > 8)
|
||||
for (int i = 0; i < 4; i++)
|
||||
s->filter[i] = filter16_sobel;
|
||||
#if ARCH_X86_64
|
||||
#if ARCH_X86_64 && HAVE_X86ASM
|
||||
ff_sobel_init_x86(s, depth, nb_planes);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -502,7 +502,7 @@ static int config_audio_output(AVFilterLink *outlink)
|
|||
return AVERROR(ENOMEM);
|
||||
}
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_ebur128_init_x86(&ebur128->dsp, nb_channels);
|
||||
#endif
|
||||
return 0;
|
||||
|
|
|
|||
|
|
@ -58,7 +58,7 @@ static uint64_t sse_line_16bit(const uint8_t *_main_line, const uint8_t *_ref_li
|
|||
void ff_psnr_init(PSNRDSPContext *dsp, int bpp)
|
||||
{
|
||||
dsp->sse_line = bpp > 8 ? sse_line_16bit : sse_line_8bit;
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_psnr_init_x86(dsp, bpp);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@ void ff_scene_sad_c(SCENE_SAD_PARAMS)
|
|||
ff_scene_sad_fn ff_scene_sad_get_fn(int depth)
|
||||
{
|
||||
ff_scene_sad_fn sad = NULL;
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
sad = ff_scene_sad_get_fn_x86(depth);
|
||||
#endif
|
||||
if (!sad) {
|
||||
|
|
|
|||
|
|
@ -426,7 +426,7 @@ static int config_input(AVFilterLink *inlink)
|
|||
}
|
||||
}
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_atadenoise_init_x86(&s->dsp, depth, s->algorithm, s->sigma);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -61,7 +61,7 @@ static unsigned count_pixels16_c(const uint8_t *src, ptrdiff_t stride,
|
|||
static inline ff_blackdetect_fn ff_blackdetect_get_fn(int depth)
|
||||
{
|
||||
ff_blackdetect_fn fn = NULL;
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
fn = ff_blackdetect_get_fn_x86(depth);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -190,7 +190,7 @@ av_unused static void ff_blend_init(FilterParams *param, int depth)
|
|||
param->blend = depth > 8 ? depth > 16 ? blend_copybottom_32 : blend_copybottom_16 : blend_copybottom_8;
|
||||
}
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_blend_init_x86(param, depth);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -208,7 +208,7 @@ ff_color_detect_dsp_init(FFColorDetectDSPContext *dsp, int depth,
|
|||
|
||||
#if ARCH_AARCH64
|
||||
ff_color_detect_dsp_init_aarch64(dsp, depth, color_range);
|
||||
#elif ARCH_X86
|
||||
#elif ARCH_X86 && HAVE_X86ASM
|
||||
ff_color_detect_dsp_init_x86(dsp, depth, color_range);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -800,7 +800,7 @@ static int param_init(AVFilterContext *ctx)
|
|||
s->filter[p] = filter16_7x7;
|
||||
}
|
||||
}
|
||||
#if CONFIG_CONVOLUTION_FILTER && ARCH_X86_64
|
||||
#if CONFIG_CONVOLUTION_FILTER && ARCH_X86_64 && HAVE_X86ASM
|
||||
ff_convolution_init_x86(s);
|
||||
#endif
|
||||
} else if (!strcmp(ctx->filter->name, "prewitt")) {
|
||||
|
|
|
|||
|
|
@ -121,7 +121,7 @@ void ff_eq_init_x86(EQContext *eq);
|
|||
av_unused static void ff_eq_init(EQContext *eq)
|
||||
{
|
||||
eq->process = process_c;
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_eq_init_x86(eq);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -262,7 +262,7 @@ void ff_framerate_init(FrameRateContext *s)
|
|||
s->blend_factor_max = 1 << BLEND_FACTOR_DEPTH(16);
|
||||
s->blend = blend_frames16_c;
|
||||
}
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_framerate_init_x86(s);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -81,7 +81,7 @@ static inline void ff_fsppdsp_init(FSPPDSPContext *fspp)
|
|||
fspp->row_idct = ff_row_idct_c;
|
||||
fspp->row_fdct = ff_row_fdct_c;
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_fsppdsp_init_x86(fspp);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -115,7 +115,7 @@ av_unused static void ff_gblur_init(GBlurContext *s)
|
|||
s->horiz_slice = horiz_slice_c;
|
||||
s->verti_slice = verti_slice_c;
|
||||
s->postscale_slice = postscale_c;
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_gblur_init_x86(s);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -130,7 +130,7 @@ static av_cold int init(AVFilterContext *ctx)
|
|||
s->blur_line = ff_gradfun_blur_line_c;
|
||||
s->filter_line = ff_gradfun_filter_line_c;
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_gradfun_init_x86(s);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -102,7 +102,7 @@ av_unused static int ff_hflip_init(FlipContext *s, int step[4], int nb_planes)
|
|||
return AVERROR_BUG;
|
||||
}
|
||||
}
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_hflip_init_x86(s, step, nb_planes);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -279,7 +279,7 @@ static int config_input(AVFilterLink *inlink)
|
|||
|
||||
calc_coefs(ctx);
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_hqdn3d_init_x86(s);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ int ff_idet_filter_line_c_16bit(const uint8_t *a, const uint8_t *b, const uint8_
|
|||
void av_cold ff_idet_dsp_init(IDETDSPContext *dsp, int depth)
|
||||
{
|
||||
dsp->filter_line = depth > 8 ? ff_idet_filter_line_c_16bit : ff_idet_filter_line_c;
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_idet_dsp_init_x86(dsp, depth);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -140,7 +140,7 @@ static int config_input(AVFilterLink *inlink)
|
|||
s->dsp.limiter = limiter16;
|
||||
}
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_limiter_init_x86(&s->dsp, desc->comp[0].depth);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -1152,7 +1152,7 @@ static int config_input(AVFilterLink *inlink)
|
|||
av_assert0(0);
|
||||
}
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_lut3d_init_x86(lut3d, desc);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -208,7 +208,7 @@ static int config_input(AVFilterLink *inlink)
|
|||
else
|
||||
s->dsp.maskedclamp = maskedclamp16;
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_maskedclamp_init_x86(&s->dsp, s->depth);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -201,7 +201,7 @@ static int config_input(AVFilterLink *inlink)
|
|||
else
|
||||
s->maskedmerge = maskedmerge32;
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_maskedmerge_init_x86(s);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -131,7 +131,7 @@ av_unused static void ff_nlmeans_init(NLMeansDSPContext *dsp)
|
|||
|
||||
#if ARCH_AARCH64
|
||||
ff_nlmeans_init_aarch64(dsp);
|
||||
#elif ARCH_X86
|
||||
#elif ARCH_X86 && HAVE_X86ASM
|
||||
ff_nlmeans_init_x86(dsp);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -835,7 +835,7 @@ static int init_slice_fn(AVFilterContext *ctx)
|
|||
break;
|
||||
}
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_overlay_init_x86(ctx);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -305,7 +305,7 @@ static int config_input(AVFilterLink *inlink)
|
|||
|
||||
pp7->dctB = dctB_c;
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_pp7_init_x86(pp7);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -207,7 +207,7 @@ static int config_input(AVFilterLink *inlink)
|
|||
s->comb = comb_c;
|
||||
s->var = var_c;
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_pullup_init_x86(s);
|
||||
#endif
|
||||
return 0;
|
||||
|
|
|
|||
|
|
@ -500,7 +500,7 @@ static int config_input(AVFilterLink *inlink)
|
|||
}
|
||||
}
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM && CONFIG_GPL
|
||||
ff_removegrain_init_x86(s);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -481,7 +481,7 @@ static int config_input_ref(AVFilterLink *inlink)
|
|||
s->ssim_plane = desc->comp[0].depth > 8 ? ssim_plane_16bit : ssim_plane;
|
||||
s->dsp.ssim_4x4_line = ssim_4x4xn_8bit;
|
||||
s->dsp.ssim_end_line = ssim_endn_8bit;
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_ssim_init_x86(&s->dsp);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -595,7 +595,7 @@ static int config_output(AVFilterLink *outlink)
|
|||
s->vsub = desc->log2_chroma_h;
|
||||
|
||||
s->dsp.anaglyph = anaglyph;
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_stereo3d_init_x86(&s->dsp);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -84,7 +84,7 @@ av_unused static void ff_threshold_init(ThresholdContext *s)
|
|||
s->bpc = 2;
|
||||
}
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_threshold_init_x86(s);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -286,7 +286,7 @@ static int config_out_props(AVFilterLink *outlink)
|
|||
tinterlace->lowpass_line = lowpass_line_complex_c_16;
|
||||
else
|
||||
tinterlace->lowpass_line = lowpass_line_complex_c;
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_tinterlace_init_x86(tinterlace);
|
||||
#endif
|
||||
} else if (tinterlace->flags & TINTERLACE_FLAG_VLPF) {
|
||||
|
|
@ -294,7 +294,7 @@ static int config_out_props(AVFilterLink *outlink)
|
|||
tinterlace->lowpass_line = lowpass_line_c_16;
|
||||
else
|
||||
tinterlace->lowpass_line = lowpass_line_c;
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_tinterlace_init_x86(tinterlace);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -237,7 +237,7 @@ static int config_props_output(AVFilterLink *outlink)
|
|||
}
|
||||
}
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
for (int i = 0; i < 4; i++) {
|
||||
TransVtable *v = &s->vtables[i];
|
||||
|
||||
|
|
|
|||
|
|
@ -394,7 +394,7 @@ void ff_v360_init(V360Context *s, int depth)
|
|||
break;
|
||||
}
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_v360_init_x86(s, depth);
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -317,7 +317,7 @@ static int config_input(AVFilterLink *inlink)
|
|||
s->dsp.filter_scale = filter16_scale;
|
||||
}
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_w3fdif_init_x86(&s->dsp, depth);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -289,7 +289,7 @@ static int config_output(AVFilterLink *outlink)
|
|||
s->filter_edges = filter_edges;
|
||||
}
|
||||
|
||||
#if ARCH_X86
|
||||
#if ARCH_X86 && HAVE_X86ASM
|
||||
ff_yadif_init_x86(s);
|
||||
#endif
|
||||
|
||||
|
|
|
|||
|
|
@ -1,95 +1,72 @@
|
|||
OBJS-$(CONFIG_SCENE_SAD) += x86/scene_sad_init.o
|
||||
|
||||
OBJS-$(CONFIG_AFIR_FILTER) += x86/af_afir_init.o
|
||||
OBJS-$(CONFIG_ANLMDN_FILTER) += x86/af_anlmdn_init.o
|
||||
OBJS-$(CONFIG_ATADENOISE_FILTER) += x86/vf_atadenoise_init.o
|
||||
OBJS-$(CONFIG_BLACKDETECT_FILTER) += x86/vf_blackdetect_init.o
|
||||
OBJS-$(CONFIG_BLEND_FILTER) += x86/vf_blend_init.o
|
||||
OBJS-$(CONFIG_BWDIF_FILTER) += x86/vf_bwdif_init.o
|
||||
OBJS-$(CONFIG_COLORDETECT_FILTER) += x86/vf_colordetect_init.o
|
||||
OBJS-$(CONFIG_COLORSPACE_FILTER) += x86/colorspacedsp_init.o
|
||||
OBJS-$(CONFIG_CONVOLUTION_FILTER) += x86/vf_convolution_init.o
|
||||
OBJS-$(CONFIG_EBUR128_FILTER) += x86/f_ebur128_init.o
|
||||
OBJS-$(CONFIG_EQ_FILTER) += x86/vf_eq_init.o
|
||||
OBJS-$(CONFIG_FSPP_FILTER) += x86/vf_fspp_init.o
|
||||
OBJS-$(CONFIG_GBLUR_FILTER) += x86/vf_gblur_init.o
|
||||
OBJS-$(CONFIG_GRADFUN_FILTER) += x86/vf_gradfun_init.o
|
||||
OBJS-$(CONFIG_FRAMERATE_FILTER) += x86/vf_framerate_init.o
|
||||
OBJS-$(CONFIG_HALDCLUT_FILTER) += x86/vf_lut3d_init.o
|
||||
OBJS-$(CONFIG_HFLIP_FILTER) += x86/vf_hflip_init.o
|
||||
OBJS-$(CONFIG_HQDN3D_FILTER) += x86/vf_hqdn3d_init.o
|
||||
OBJS-$(CONFIG_IDET_FILTER) += x86/vf_idetdsp_init.o
|
||||
OBJS-$(CONFIG_INTERLACE_FILTER) += x86/vf_tinterlace_init.o
|
||||
OBJS-$(CONFIG_LIMITER_FILTER) += x86/vf_limiter_init.o
|
||||
OBJS-$(CONFIG_LUT3D_FILTER) += x86/vf_lut3d_init.o
|
||||
OBJS-$(CONFIG_MASKEDCLAMP_FILTER) += x86/vf_maskedclamp_init.o
|
||||
OBJS-$(CONFIG_MASKEDMERGE_FILTER) += x86/vf_maskedmerge_init.o
|
||||
OBJS-$(CONFIG_NLMEANS_FILTER) += x86/vf_nlmeans_init.o
|
||||
OBJS-$(CONFIG_NOISE_FILTER) += x86/vf_noise.o
|
||||
OBJS-$(CONFIG_OVERLAY_FILTER) += x86/vf_overlay_init.o
|
||||
OBJS-$(CONFIG_PP7_FILTER) += x86/vf_pp7_init.o
|
||||
OBJS-$(CONFIG_PSNR_FILTER) += x86/vf_psnr_init.o
|
||||
OBJS-$(CONFIG_PULLUP_FILTER) += x86/vf_pullup_init.o
|
||||
OBJS-$(CONFIG_REMOVEGRAIN_FILTER) += x86/vf_removegrain_init.o
|
||||
OBJS-$(CONFIG_SHOWCQT_FILTER) += x86/avf_showcqt_init.o
|
||||
OBJS-$(CONFIG_SOBEL_FILTER) += x86/vf_convolution_init.o
|
||||
OBJS-$(CONFIG_SPP_FILTER) += x86/vf_spp.o
|
||||
OBJS-$(CONFIG_SSIM_FILTER) += x86/vf_ssim_init.o
|
||||
OBJS-$(CONFIG_STEREO3D_FILTER) += x86/vf_stereo3d_init.o
|
||||
OBJS-$(CONFIG_TBLEND_FILTER) += x86/vf_blend_init.o
|
||||
OBJS-$(CONFIG_THRESHOLD_FILTER) += x86/vf_threshold_init.o
|
||||
OBJS-$(CONFIG_TINTERLACE_FILTER) += x86/vf_tinterlace_init.o
|
||||
OBJS-$(CONFIG_TRANSPOSE_FILTER) += x86/vf_transpose_init.o
|
||||
OBJS-$(CONFIG_VOLUME_FILTER) += x86/af_volume_init.o
|
||||
OBJS-$(CONFIG_V360_FILTER) += x86/vf_v360_init.o
|
||||
OBJS-$(CONFIG_W3FDIF_FILTER) += x86/vf_w3fdif_init.o
|
||||
OBJS-$(CONFIG_XPSNR_FILTER) += x86/vf_psnr_init.o
|
||||
OBJS-$(CONFIG_YADIF_FILTER) += x86/vf_yadif_init.o
|
||||
|
||||
X86ASM-OBJS-$(CONFIG_SCENE_SAD) += x86/scene_sad.o
|
||||
X86ASM-OBJS-$(CONFIG_SCENE_SAD) += x86/scene_sad.o x86/scene_sad_init.o
|
||||
|
||||
X86ASM-OBJS-$(CONFIG_AFIR_FILTER) += x86/af_afir.o
|
||||
X86ASM-OBJS-$(CONFIG_ANLMDN_FILTER) += x86/af_anlmdn.o
|
||||
X86ASM-OBJS-$(CONFIG_ATADENOISE_FILTER) += x86/vf_atadenoise.o
|
||||
X86ASM-OBJS-$(CONFIG_BLACKDETECT_FILTER) += x86/vf_blackdetect.o
|
||||
X86ASM-OBJS-$(CONFIG_BLEND_FILTER) += x86/vf_blend.o
|
||||
X86ASM-OBJS-$(CONFIG_BWDIF_FILTER) += x86/vf_bwdif.o
|
||||
X86ASM-OBJS-$(CONFIG_COLORDETECT_FILTER) += x86/vf_colordetect.o
|
||||
X86ASM-OBJS-$(CONFIG_COLORSPACE_FILTER) += x86/colorspacedsp.o
|
||||
X86ASM-OBJS-$(CONFIG_CONVOLUTION_FILTER) += x86/vf_convolution.o
|
||||
X86ASM-OBJS-$(CONFIG_EBUR128_FILTER) += x86/f_ebur128.o
|
||||
X86ASM-OBJS-$(CONFIG_EQ_FILTER) += x86/vf_eq.o
|
||||
X86ASM-OBJS-$(CONFIG_FRAMERATE_FILTER) += x86/vf_framerate.o
|
||||
X86ASM-OBJS-$(CONFIG_FSPP_FILTER) += x86/vf_fspp.o
|
||||
X86ASM-OBJS-$(CONFIG_GBLUR_FILTER) += x86/vf_gblur.o
|
||||
X86ASM-OBJS-$(CONFIG_GRADFUN_FILTER) += x86/vf_gradfun.o
|
||||
X86ASM-OBJS-$(CONFIG_HALDCLUT_FILTER) += x86/vf_lut3d.o
|
||||
X86ASM-OBJS-$(CONFIG_HFLIP_FILTER) += x86/vf_hflip.o
|
||||
X86ASM-OBJS-$(CONFIG_HQDN3D_FILTER) += x86/vf_hqdn3d.o
|
||||
X86ASM-OBJS-$(CONFIG_IDET_FILTER) += x86/vf_idetdsp.o
|
||||
X86ASM-OBJS-$(CONFIG_INTERLACE_FILTER) += x86/vf_interlace.o
|
||||
X86ASM-OBJS-$(CONFIG_LIMITER_FILTER) += x86/vf_limiter.o
|
||||
X86ASM-OBJS-$(CONFIG_LUT3D_FILTER) += x86/vf_lut3d.o
|
||||
X86ASM-OBJS-$(CONFIG_MASKEDCLAMP_FILTER) += x86/vf_maskedclamp.o
|
||||
X86ASM-OBJS-$(CONFIG_MASKEDMERGE_FILTER) += x86/vf_maskedmerge.o
|
||||
X86ASM-OBJS-$(CONFIG_NLMEANS_FILTER) += x86/vf_nlmeans.o
|
||||
X86ASM-OBJS-$(CONFIG_OVERLAY_FILTER) += x86/vf_overlay.o
|
||||
X86ASM-OBJS-$(CONFIG_PP7_FILTER) += x86/vf_pp7.o
|
||||
X86ASM-OBJS-$(CONFIG_PSNR_FILTER) += x86/vf_psnr.o
|
||||
X86ASM-OBJS-$(CONFIG_PULLUP_FILTER) += x86/vf_pullup.o
|
||||
X86ASM-OBJS-$(CONFIG_AFIR_FILTER) += x86/af_afir.o x86/af_afir_init.o
|
||||
X86ASM-OBJS-$(CONFIG_ANLMDN_FILTER) += x86/af_anlmdn.o x86/af_anlmdn_init.o
|
||||
X86ASM-OBJS-$(CONFIG_ATADENOISE_FILTER) += x86/vf_atadenoise.o \
|
||||
x86/vf_atadenoise_init.o
|
||||
X86ASM-OBJS-$(CONFIG_BLACKDETECT_FILTER) += x86/vf_blackdetect.o \
|
||||
x86/vf_blackdetect_init.o
|
||||
X86ASM-OBJS-$(CONFIG_BLEND_FILTER) += x86/vf_blend.o x86/vf_blend_init.o
|
||||
X86ASM-OBJS-$(CONFIG_BWDIF_FILTER) += x86/vf_bwdif.o x86/vf_bwdif_init.o
|
||||
X86ASM-OBJS-$(CONFIG_COLORDETECT_FILTER) += x86/vf_colordetect.o \
|
||||
x86/vf_colordetect_init.o
|
||||
X86ASM-OBJS-$(CONFIG_COLORSPACE_FILTER) += x86/colorspacedsp.o \
|
||||
x86/colorspacedsp_init.o
|
||||
X86ASM-OBJS-$(CONFIG_CONVOLUTION_FILTER) += x86/vf_convolution.o \
|
||||
x86/vf_convolution_init.o
|
||||
X86ASM-OBJS-$(CONFIG_EBUR128_FILTER) += x86/f_ebur128.o x86/f_ebur128_init.o
|
||||
X86ASM-OBJS-$(CONFIG_EQ_FILTER) += x86/vf_eq.o x86/vf_eq_init.o
|
||||
X86ASM-OBJS-$(CONFIG_FRAMERATE_FILTER) += x86/vf_framerate.o \
|
||||
x86/vf_framerate_init.o
|
||||
X86ASM-OBJS-$(CONFIG_FSPP_FILTER) += x86/vf_fspp.o x86/vf_fspp_init.o
|
||||
X86ASM-OBJS-$(CONFIG_GBLUR_FILTER) += x86/vf_gblur.o x86/vf_gblur_init.o
|
||||
X86ASM-OBJS-$(CONFIG_GRADFUN_FILTER) += x86/vf_gradfun.o \
|
||||
x86/vf_gradfun_init.o
|
||||
X86ASM-OBJS-$(CONFIG_HALDCLUT_FILTER) += x86/vf_lut3d.o x86/vf_lut3d_init.o
|
||||
X86ASM-OBJS-$(CONFIG_HFLIP_FILTER) += x86/vf_hflip.o x86/vf_hflip_init.o
|
||||
X86ASM-OBJS-$(CONFIG_HQDN3D_FILTER) += x86/vf_hqdn3d.o x86/vf_hqdn3d_init.o
|
||||
X86ASM-OBJS-$(CONFIG_IDET_FILTER) += x86/vf_idetdsp.o \
|
||||
x86/vf_idetdsp_init.o
|
||||
X86ASM-OBJS-$(CONFIG_INTERLACE_FILTER) += x86/vf_interlace.o \
|
||||
x86/vf_tinterlace_init.o
|
||||
X86ASM-OBJS-$(CONFIG_LIMITER_FILTER) += x86/vf_limiter.o \
|
||||
x86/vf_limiter_init.o
|
||||
X86ASM-OBJS-$(CONFIG_LUT3D_FILTER) += x86/vf_lut3d.o x86/vf_lut3d_init.o
|
||||
X86ASM-OBJS-$(CONFIG_MASKEDCLAMP_FILTER) += x86/vf_maskedclamp.o \
|
||||
x86/vf_maskedclamp_init.o
|
||||
X86ASM-OBJS-$(CONFIG_MASKEDMERGE_FILTER) += x86/vf_maskedmerge.o \
|
||||
x86/vf_maskedmerge_init.o
|
||||
X86ASM-OBJS-$(CONFIG_NLMEANS_FILTER) += x86/vf_nlmeans.o \
|
||||
x86/vf_nlmeans_init.o
|
||||
X86ASM-OBJS-$(CONFIG_OVERLAY_FILTER) += x86/vf_overlay.o \
|
||||
x86/vf_overlay_init.o
|
||||
X86ASM-OBJS-$(CONFIG_PP7_FILTER) += x86/vf_pp7.o x86/vf_pp7_init.o
|
||||
X86ASM-OBJS-$(CONFIG_PSNR_FILTER) += x86/vf_psnr.o x86/vf_psnr_init.o
|
||||
X86ASM-OBJS-$(CONFIG_PULLUP_FILTER) += x86/vf_pullup.o x86/vf_pullup_init.o
|
||||
ifdef CONFIG_GPL
|
||||
X86ASM-OBJS-$(CONFIG_REMOVEGRAIN_FILTER) += x86/vf_removegrain.o
|
||||
X86ASM-OBJS-$(CONFIG_REMOVEGRAIN_FILTER) += x86/vf_removegrain.o \
|
||||
x86/vf_removegrain_init.o
|
||||
endif
|
||||
X86ASM-OBJS-$(CONFIG_SHOWCQT_FILTER) += x86/avf_showcqt.o
|
||||
X86ASM-OBJS-$(CONFIG_SOBEL_FILTER) += x86/vf_convolution.o
|
||||
X86ASM-OBJS-$(CONFIG_SSIM_FILTER) += x86/vf_ssim.o
|
||||
X86ASM-OBJS-$(CONFIG_STEREO3D_FILTER) += x86/vf_stereo3d.o
|
||||
X86ASM-OBJS-$(CONFIG_TBLEND_FILTER) += x86/vf_blend.o
|
||||
X86ASM-OBJS-$(CONFIG_THRESHOLD_FILTER) += x86/vf_threshold.o
|
||||
X86ASM-OBJS-$(CONFIG_TINTERLACE_FILTER) += x86/vf_interlace.o
|
||||
X86ASM-OBJS-$(CONFIG_TRANSPOSE_FILTER) += x86/vf_transpose.o
|
||||
X86ASM-OBJS-$(CONFIG_VOLUME_FILTER) += x86/af_volume.o
|
||||
X86ASM-OBJS-$(CONFIG_V360_FILTER) += x86/vf_v360.o
|
||||
X86ASM-OBJS-$(CONFIG_W3FDIF_FILTER) += x86/vf_w3fdif.o
|
||||
X86ASM-OBJS-$(CONFIG_XPSNR_FILTER) += x86/vf_psnr.o
|
||||
X86ASM-OBJS-$(CONFIG_YADIF_FILTER) += x86/vf_yadif.o x86/yadif-16.o x86/yadif-10.o
|
||||
X86ASM-OBJS-$(CONFIG_SHOWCQT_FILTER) += x86/avf_showcqt.o \
|
||||
x86/avf_showcqt_init.o
|
||||
X86ASM-OBJS-$(CONFIG_SOBEL_FILTER) += x86/vf_convolution.o \
|
||||
x86/vf_convolution_init.o
|
||||
X86ASM-OBJS-$(CONFIG_SSIM_FILTER) += x86/vf_ssim.o x86/vf_ssim_init.o
|
||||
X86ASM-OBJS-$(CONFIG_STEREO3D_FILTER) += x86/vf_stereo3d.o \
|
||||
x86/vf_stereo3d_init.o
|
||||
X86ASM-OBJS-$(CONFIG_TBLEND_FILTER) += x86/vf_blend.o x86/vf_blend_init.o
|
||||
X86ASM-OBJS-$(CONFIG_THRESHOLD_FILTER) += x86/vf_threshold.o \
|
||||
x86/vf_threshold_init.o
|
||||
X86ASM-OBJS-$(CONFIG_TINTERLACE_FILTER) += x86/vf_interlace.o \
|
||||
x86/vf_tinterlace_init.o
|
||||
X86ASM-OBJS-$(CONFIG_TRANSPOSE_FILTER) += x86/vf_transpose.o \
|
||||
x86/vf_transpose_init.o
|
||||
X86ASM-OBJS-$(CONFIG_VOLUME_FILTER) += x86/af_volume.o x86/af_volume_init.o
|
||||
X86ASM-OBJS-$(CONFIG_V360_FILTER) += x86/vf_v360.o x86/vf_v360_init.o
|
||||
X86ASM-OBJS-$(CONFIG_W3FDIF_FILTER) += x86/vf_w3fdif.o x86/vf_w3fdif_init.o
|
||||
X86ASM-OBJS-$(CONFIG_XPSNR_FILTER) += x86/vf_psnr.o x86/vf_psnr_init.o
|
||||
X86ASM-OBJS-$(CONFIG_YADIF_FILTER) += x86/vf_yadif.o x86/yadif-16.o \
|
||||
x86/yadif-10.o x86/vf_yadif_init.o
|
||||
|
|
|
|||
|
|
@ -52,7 +52,6 @@ static void FUNC_NAME(SCENE_SAD_PARAMS) { \
|
|||
*sum += sad[0]; \
|
||||
}
|
||||
|
||||
#if HAVE_X86ASM
|
||||
SCENE_SAD_FUNC(scene_sad_sse2, ff_scene_sad8_sse2, 16)
|
||||
#if HAVE_AVX2_EXTERNAL
|
||||
SCENE_SAD_FUNC(scene_sad_avx2, ff_scene_sad8_avx2, 32)
|
||||
|
|
@ -62,11 +61,9 @@ SCENE_SAD16_FUNC(scene_sad16_avx2, ff_scene_sad16_avx2, 32)
|
|||
SCENE_SAD_FUNC(scene_sad_avx512, ff_scene_sad8_avx512, 64)
|
||||
SCENE_SAD16_FUNC(scene_sad16_avx512, ff_scene_sad16_avx512, 64)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
ff_scene_sad_fn ff_scene_sad_get_fn_x86(int depth)
|
||||
{
|
||||
#if HAVE_X86ASM
|
||||
int cpu_flags = av_get_cpu_flags();
|
||||
if (depth <= 8) {
|
||||
#if HAVE_AVX512_EXTERNAL
|
||||
|
|
@ -89,6 +86,5 @@ ff_scene_sad_fn ff_scene_sad_get_fn_x86(int depth)
|
|||
return scene_sad16_avx2;
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
return NULL;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -58,7 +58,6 @@ static int FUNC_NAME(const uint8_t *color, ptrdiff_t color_stride,
|
|||
p, q, k); \
|
||||
}
|
||||
|
||||
#if HAVE_X86ASM
|
||||
#if HAVE_AVX512ICL_EXTERNAL
|
||||
DETECT_RANGE_FUNC(detect_range_avx512icl, ff_detect_rangeb_avx512icl, ff_detect_range_c, 0, 64)
|
||||
DETECT_RANGE_FUNC(detect_range16_avx512icl, ff_detect_rangew_avx512icl, ff_detect_range16_c, 1, 64)
|
||||
|
|
@ -75,12 +74,10 @@ DETECT_ALPHA_FUNC(detect_alpha16_full_avx2, ff_detect_alphaw_full_avx2, ff_detec
|
|||
DETECT_ALPHA_FUNC(detect_alpha_limited_avx2, ff_detect_alphab_limited_avx2, ff_detect_alpha_limited_c, 0, 32)
|
||||
DETECT_ALPHA_FUNC(detect_alpha16_limited_avx2, ff_detect_alphaw_limited_avx2, ff_detect_alpha16_limited_c, 1, 32)
|
||||
#endif
|
||||
#endif
|
||||
|
||||
av_cold void ff_color_detect_dsp_init_x86(FFColorDetectDSPContext *dsp, int depth,
|
||||
enum AVColorRange color_range)
|
||||
{
|
||||
#if HAVE_X86ASM
|
||||
int cpu_flags = av_get_cpu_flags();
|
||||
#if HAVE_AVX2_EXTERNAL
|
||||
if (EXTERNAL_AVX2_FAST(cpu_flags)) {
|
||||
|
|
@ -102,5 +99,4 @@ av_cold void ff_color_detect_dsp_init_x86(FFColorDetectDSPContext *dsp, int dept
|
|||
}
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -28,7 +28,6 @@
|
|||
extern void ff_process_one_line_sse2(const uint8_t *src, uint8_t *dst, short contrast,
|
||||
short brightness, int w);
|
||||
|
||||
#if HAVE_X86ASM
|
||||
static void process_sse2(EQParameters *param, uint8_t *dst, int dst_stride,
|
||||
const uint8_t *src, int src_stride, int w, int h)
|
||||
{
|
||||
|
|
@ -42,14 +41,11 @@ static void process_sse2(EQParameters *param, uint8_t *dst, int dst_stride,
|
|||
dst += dst_stride;
|
||||
}
|
||||
}
|
||||
#endif
|
||||
|
||||
av_cold void ff_eq_init_x86(EQContext *eq)
|
||||
{
|
||||
#if HAVE_X86ASM
|
||||
int cpu_flags = av_get_cpu_flags();
|
||||
if (EXTERNAL_SSE2(cpu_flags)) {
|
||||
eq->process = process_sse2;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,7 +18,6 @@
|
|||
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
||||
*/
|
||||
|
||||
#include "config.h"
|
||||
#include "libavutil/attributes.h"
|
||||
#include "libavutil/cpu.h"
|
||||
#include "libavutil/x86/cpu.h"
|
||||
|
|
@ -35,7 +34,6 @@ void ff_gradfun_blur_line_movdqu_sse2(intptr_t x, uint16_t *buf,
|
|||
const uint16_t *buf1, uint16_t *dc,
|
||||
const uint8_t *src1, const uint8_t *src2);
|
||||
|
||||
#if HAVE_X86ASM
|
||||
static void gradfun_filter_line_ssse3(uint8_t *dst, const uint8_t *src, const uint16_t *dc,
|
||||
int width, int thresh,
|
||||
const uint16_t *dithers)
|
||||
|
|
@ -66,11 +64,9 @@ static void gradfun_blur_line_sse2(uint16_t *dc, uint16_t *buf, const uint16_t *
|
|||
dc + width, src + width * 2,
|
||||
src + width * 2 + src_linesize);
|
||||
}
|
||||
#endif /* HAVE_X86ASM */
|
||||
|
||||
av_cold void ff_gradfun_init_x86(GradFunContext *gf)
|
||||
{
|
||||
#if HAVE_X86ASM
|
||||
int cpu_flags = av_get_cpu_flags();
|
||||
|
||||
if (EXTERNAL_SSSE3(cpu_flags))
|
||||
|
|
@ -78,5 +74,4 @@ av_cold void ff_gradfun_init_x86(GradFunContext *gf)
|
|||
|
||||
if (EXTERNAL_SSE2(cpu_flags))
|
||||
gf->blur_line = gradfun_blur_line_sse2;
|
||||
#endif /* HAVE_X86ASM */
|
||||
}
|
||||
|
|
|
|||
|
|
@ -23,7 +23,6 @@
|
|||
|
||||
#include "libavutil/attributes.h"
|
||||
#include "libavfilter/vf_hqdn3d.h"
|
||||
#include "config.h"
|
||||
|
||||
void ff_hqdn3d_row_8_x86(uint8_t *src, uint8_t *dst, uint16_t *line_ant,
|
||||
uint16_t *frame_ant, ptrdiff_t w, int16_t *spatial,
|
||||
|
|
@ -40,10 +39,8 @@ void ff_hqdn3d_row_16_x86(uint8_t *src, uint8_t *dst, uint16_t *line_ant,
|
|||
|
||||
av_cold void ff_hqdn3d_init_x86(HQDN3DContext *hqdn3d)
|
||||
{
|
||||
#if HAVE_X86ASM
|
||||
hqdn3d->denoise_row[8] = ff_hqdn3d_row_8_x86;
|
||||
hqdn3d->denoise_row[9] = ff_hqdn3d_row_9_x86;
|
||||
hqdn3d->denoise_row[10] = ff_hqdn3d_row_10_x86;
|
||||
hqdn3d->denoise_row[16] = ff_hqdn3d_row_16_x86;
|
||||
#endif /* HAVE_X86ASM */
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,12 +18,9 @@
|
|||
|
||||
#include "libavutil/attributes.h"
|
||||
#include "libavutil/cpu.h"
|
||||
#include "libavutil/x86/asm.h"
|
||||
#include "libavutil/x86/cpu.h"
|
||||
#include "libavfilter/vf_idetdsp.h"
|
||||
|
||||
#if HAVE_X86ASM
|
||||
|
||||
/* declares main callable idet_filter_line_sse2() */
|
||||
#define FUNC_MAIN_DECL(KIND, SPAN) \
|
||||
int ff_idet_filter_line_##KIND(const uint8_t *a, const uint8_t *b, \
|
||||
|
|
@ -68,10 +65,8 @@ FUNC_MAIN_DECL_16bit(avx2, 16)
|
|||
FUNC_MAIN_DECL(avx512icl, 64)
|
||||
FUNC_MAIN_DECL_16bit(avx512icl, 32)
|
||||
|
||||
#endif
|
||||
av_cold void ff_idet_dsp_init_x86(IDETDSPContext *dsp, int depth)
|
||||
{
|
||||
#if HAVE_X86ASM
|
||||
const int cpu_flags = av_get_cpu_flags();
|
||||
|
||||
if (EXTERNAL_SSE2(cpu_flags)) {
|
||||
|
|
@ -83,5 +78,4 @@ av_cold void ff_idet_dsp_init_x86(IDETDSPContext *dsp, int depth)
|
|||
if (EXTERNAL_AVX512ICL(cpu_flags)) {
|
||||
dsp->filter_line = depth > 8 ? idet_filter_line_16bit_avx512icl : idet_filter_line_avx512icl;
|
||||
}
|
||||
#endif // HAVE_X86ASM
|
||||
}
|
||||
|
|
|
|||
|
|
@ -18,7 +18,6 @@
|
|||
|
||||
#include "libavutil/attributes.h"
|
||||
#include "libavutil/cpu.h"
|
||||
#include "libavutil/x86/asm.h"
|
||||
#include "libavutil/x86/cpu.h"
|
||||
#include "libavfilter/vf_pullup.h"
|
||||
|
||||
|
|
@ -28,7 +27,6 @@ int ff_pullup_filter_var_sse2 (const uint8_t *a, const uint8_t *b, ptrdiff_t s)
|
|||
|
||||
av_cold void ff_pullup_init_x86(PullupContext *s)
|
||||
{
|
||||
#if HAVE_X86ASM
|
||||
int cpu_flags = av_get_cpu_flags();
|
||||
|
||||
if (EXTERNAL_SSE2(cpu_flags)) {
|
||||
|
|
@ -38,5 +36,4 @@ av_cold void ff_pullup_init_x86(PullupContext *s)
|
|||
if (EXTERNAL_SSSE3(cpu_flags)) {
|
||||
s->comb = ff_pullup_filter_comb_ssse3;
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue