#include "libavutil/cpu.h"
#include "libavutil/x86_cpu.h"
#include "libavcodec/fmtconvert.h"
Go to the source code of this file.
Defines | |
#define | ff_float_to_int16_interleave6_sse(a, b, c) float_to_int16_interleave_misc_sse(a,b,c,6) |
#define | ff_float_to_int16_interleave6_3dnow(a, b, c) float_to_int16_interleave_misc_3dnow(a,b,c,6) |
#define | ff_float_to_int16_interleave6_3dn2(a, b, c) float_to_int16_interleave_misc_3dnow(a,b,c,6) |
#define | ff_float_to_int16_interleave6_sse2 ff_float_to_int16_interleave6_sse |
#define | FLOAT_TO_INT16_INTERLEAVE(cpu, body) |
Functions | |
static void | int32_to_float_fmul_scalar_sse (float *dst, const int *src, float mul, int len) |
static void | int32_to_float_fmul_scalar_sse2 (float *dst, const int *src, float mul, int len) |
static void | float_to_int16_3dnow (int16_t *dst, const float *src, long len) |
static void | float_to_int16_sse (int16_t *dst, const float *src, long len) |
static void | float_to_int16_sse2 (int16_t *dst, const float *src, long len) |
void | ff_float_to_int16_interleave6_sse (int16_t *dst, const float **src, int len) |
void | ff_float_to_int16_interleave6_3dnow (int16_t *dst, const float **src, int len) |
void | ff_float_to_int16_interleave6_3dn2 (int16_t *dst, const float **src, int len) |
FLOAT_TO_INT16_INTERLEAVE (3dnow,"1: \n""pf2id (%2,%0), %%mm0 \n""pf2id 8(%2,%0), %%mm1 \n""pf2id (%3,%0), %%mm2 \n""pf2id 8(%3,%0), %%mm3 \n""packssdw %%mm1, %%mm0 \n""packssdw %%mm3, %%mm2 \n""movq %%mm0, %%mm1 \n""punpcklwd %%mm2, %%mm0 \n""punpckhwd %%mm2, %%mm1 \n""movq %%mm0, (%1,%0)\n""movq %%mm1, 8(%1,%0)\n""add $16, %0 \n""js 1b \n""femms \n") FLOAT_TO_INT16_INTERLEAVE(sse | |
mm0 n | cvtps2pi (%2,%0) |
mm0 n mm1 n mm2 n mm3 n packssdw mm0 n packssdw mm2 n movq mm1 n punpcklwd mm0 n punpckhwd mm1 n movq n movq n n js n emms n | FLOAT_TO_INT16_INTERLEAVE (sse2,"1: \n""cvtps2dq (%2,%0), %%xmm0 \n""cvtps2dq (%3,%0), %%xmm1 \n""packssdw %%xmm1, %%xmm0 \n""movhlps %%xmm0, %%xmm1 \n""punpcklwd %%xmm1, %%xmm0 \n""movdqa %%xmm0, (%1,%0) \n""add $16, %0 \n""js 1b \n") static void float_to_int16_interleave_3dn2(int16_t *dst |
Variables | |
__pad0__ | |
mm0 n mm1 n mm2 n mm3 n packssdw | mm1 |
mm0 n mm1 n mm2 n mm3 n packssdw mm0 n packssdw | mm3 |
mm0 n mm1 n mm2 n mm3 n packssdw mm0 n packssdw mm2 n movq | mm0 |
mm0 n mm1 n mm2 n mm3 n packssdw mm0 n packssdw mm2 n movq mm1 n punpcklwd | mm2 |
mm0 n mm1 n mm2 n mm3 n packssdw mm0 n packssdw mm2 n movq mm1 n punpcklwd mm0 n punpckhwd mm1 n movq n movq n | add |
mm0 n mm1 n mm2 n mm3 n packssdw mm0 n packssdw mm2 n movq mm1 n punpcklwd mm0 n punpckhwd mm1 n movq n movq n n js n emms n const float ** | src |
mm0 n mm1 n mm2 n mm3 n packssdw mm0 n packssdw mm2 n movq mm1 n punpcklwd mm0 n punpckhwd mm1 n movq n movq n n js n emms n const float long | len |
#define ff_float_to_int16_interleave6_3dn2 | ( | a, | |||
b, | |||||
c | ) | float_to_int16_interleave_misc_3dnow(a,b,c,6) |
Definition at line 145 of file fmtconvert_mmx.c.
#define ff_float_to_int16_interleave6_3dnow | ( | a, | |||
b, | |||||
c | ) | float_to_int16_interleave_misc_3dnow(a,b,c,6) |
Definition at line 144 of file fmtconvert_mmx.c.
Definition at line 143 of file fmtconvert_mmx.c.
#define ff_float_to_int16_interleave6_sse2 ff_float_to_int16_interleave6_sse |
Definition at line 147 of file fmtconvert_mmx.c.
#define FLOAT_TO_INT16_INTERLEAVE | ( | cpu, | |||
body | ) |
Definition at line 149 of file fmtconvert_mmx.c.
void ff_float_to_int16_interleave6_3dn2 | ( | int16_t * | dst, | |
const float ** | src, | |||
int | len | |||
) |
void ff_float_to_int16_interleave6_3dnow | ( | int16_t * | dst, | |
const float ** | src, | |||
int | len | |||
) |
void ff_float_to_int16_interleave6_sse | ( | int16_t * | dst, | |
const float ** | src, | |||
int | len | |||
) |
static void float_to_int16_3dnow | ( | int16_t * | dst, | |
const float * | src, | |||
long | len | |||
) | [static] |
Definition at line 73 of file fmtconvert_mmx.c.
mm0 n mm1 n mm2 n mm3 n packssdw mm0 n packssdw mm2 n movq mm1 n punpcklwd mm0 n punpckhwd mm1 n movq n movq n n js n emms n FLOAT_TO_INT16_INTERLEAVE | ( | sse2 | , | |
"1: \n""cvtps2dq | %2,%0, | |||
%%xmm0\n" " | cvtps2dq%3,%0, | |||
%%xmm1\n" "packssdw%% | xmm1, | |||
%%xmm0\n" "movhlps%% | xmm0, | |||
%%xmm1\n" "punpcklwd%% | xmm1, | |||
%%xmm0\n" "movdqa%% | xmm0, | |||
(%1,%0)\n" "add $ | 16, | |||
%0\n" "js 1b\n" | ||||
) |
FLOAT_TO_INT16_INTERLEAVE | ( | 3dnow | , | |
"1: \n""pf2id | %2,%0, | |||
%%mm0\n" "pf2id | 8%2,%0, | |||
%%mm1\n" " | pf2id%3,%0, | |||
%%mm2\n" "pf2id | 8%3,%0, | |||
%%mm3\n" "packssdw%% | mm1, | |||
%%mm0\n" "packssdw%% | mm3, | |||
%%mm2\n" "movq%% | mm0, | |||
%%mm1\n" "punpcklwd%% | mm2, | |||
%%mm0\n" "punpckhwd%% | mm2, | |||
%%mm1\n" "movq%% | mm0, | |||
(%1,%0)\n" "movq%% | mm1, | |||
8(%1,%0)\n" "add $ | 16, | |||
%0\n" "js 1b\n" "femms\n" | ||||
) |
static void float_to_int16_sse | ( | int16_t * | dst, | |
const float * | src, | |||
long | len | |||
) | [static] |
Definition at line 97 of file fmtconvert_mmx.c.
static void float_to_int16_sse2 | ( | int16_t * | dst, | |
const float * | src, | |||
long | len | |||
) | [static] |
Definition at line 120 of file fmtconvert_mmx.c.
static void int32_to_float_fmul_scalar_sse | ( | float * | dst, | |
const int * | src, | |||
float | mul, | |||
int | len | |||
) | [static] |
Definition at line 29 of file fmtconvert_mmx.c.
static void int32_to_float_fmul_scalar_sse2 | ( | float * | dst, | |
const int * | src, | |||
float | mul, | |||
int | len | |||
) | [static] |
Definition at line 53 of file fmtconvert_mmx.c.
Definition at line 203 of file fmtconvert_mmx.c.
mm0 n mm1 n mm2 n mm3 n packssdw mm0 n packssdw mm2 n movq mm1 n punpcklwd mm0 n punpckhwd mm1 n movq n movq n add |
Definition at line 207 of file fmtconvert_mmx.c.
mm0 n mm1 n mm2 n mm3 n packssdw mm0 n packssdw mm2 n movq mm1 n punpcklwd mm0 n punpckhwd mm1 n movq n movq n n js n emms n const float long len |
Definition at line 231 of file fmtconvert_mmx.c.
mm0 n mm1 n mm2 n mm3 n packssdw mm0 n packssdw mm2 n movq mm1 n punpcklwd mm0 n punpckhwd mm1 n movq mm0 |
Definition at line 207 of file fmtconvert_mmx.c.
Referenced by add_8x8basis_TMPL(), cavs_idct8_1d(), cavs_idct8_add_mmx(), deInterlaceBlendLinear_TMPL(), deInterlaceInterpolateLinear_TMPL(), deInterlaceL5_TMPL(), dering_TMPL(), doVertDefFilter_TMPL(), doVertLowPass_TMPL(), ff_imdct_calc_3dn2(), ff_imdct_half_3dn2(), h264_loop_filter_strength_mmx2(), pixels16(), pixels16_l2(), pixels16_x2(), pixels4(), pixels8(), pixels8_l2(), pixels8_x2(), pixels8_y2(), tempNoiseReducer_TMPL(), try_8x8basis_TMPL(), vertX1Filter_TMPL(), vsad16_mmx(), vsad16_mmx2(), vsad_intra16_mmx(), vsad_intra16_mmx2(), yuv2rgb32_1_TMPL(), yuv2rgb32_2_TMPL(), yuv2rgb32_X_ar_TMPL(), yuv2rgb32_X_TMPL(), yuv2yuv1_ar_TMPL(), and yuv2yuv1_TMPL().
mm0 n mm1 n mm2 n mm3 n packssdw mm0 n packssdw mm2 n movq mm1 n punpcklwd mm0 n punpckhwd mm1 n movq n movq mm1 |
Definition at line 207 of file fmtconvert_mmx.c.
Referenced by add_8x8basis_TMPL(), cavs_idct8_1d(), cavs_idct8_add_mmx(), deInterlaceBlendLinear_TMPL(), deInterlaceInterpolateLinear_TMPL(), deInterlaceL5_TMPL(), dering_TMPL(), dint_copy_line_mmx2(), do_a_deblock_TMPL(), doVertDefFilter_TMPL(), doVertLowPass_TMPL(), ff_imdct_calc_3dn2(), ff_imdct_half_3dn2(), h264_loop_filter_strength_mmx2(), pixels16(), pixels16_l2(), pixels16_x2(), pixels4(), pixels8(), pixels8_l2(), pixels8_x2(), pixels8_y2(), tempNoiseReducer_TMPL(), try_8x8basis_TMPL(), vertClassify_TMPL(), vertX1Filter_TMPL(), vsad16_mmx(), vsad16_mmx2(), vsad_intra16_mmx(), vsad_intra16_mmx2(), yuv2rgb32_1_TMPL(), yuv2rgb32_2_TMPL(), yuv2rgb32_X_ar_TMPL(), and yuv2rgb32_X_TMPL().
Definition at line 207 of file fmtconvert_mmx.c.
Referenced by cavs_idct8_1d(), cavs_idct8_add_mmx(), deInterlaceBlendLinear_TMPL(), dering_TMPL(), dint_copy_line_mmx2(), do_a_deblock_TMPL(), doVertDefFilter_TMPL(), doVertLowPass_TMPL(), ff_imdct_half_3dn2(), h264_loop_filter_strength_mmx2(), pixels16(), pixels16_l2(), pixels16_x2(), pixels4(), pixels8(), pixels8_l2(), pixels8_x2(), pixels8_y2(), tempNoiseReducer_TMPL(), vertClassify_TMPL(), yuv2rgb32_1_TMPL(), yuv2rgb32_2_TMPL(), yuv2rgb32_X_ar_TMPL(), and yuv2rgb32_X_TMPL().
Definition at line 207 of file fmtconvert_mmx.c.
Referenced by cavs_idct8_1d(), cavs_idct8_add_mmx(), dering_TMPL(), dint_copy_line_mmx2(), do_a_deblock_TMPL(), doVertDefFilter_TMPL(), doVertLowPass_TMPL(), ff_imdct_half_3dn2(), h264_loop_filter_strength_mmx2(), pixels16_l2(), pixels16_x2(), pixels8_l2(), pixels8_x2(), tempNoiseReducer_TMPL(), vertClassify_TMPL(), vertX1Filter_TMPL(), yuv2rgb32_1_TMPL(), yuv2rgb32_2_TMPL(), yuv2rgb32_X_ar_TMPL(), and yuv2rgb32_X_TMPL().
mm0 n mm1 n mm2 n mm3 n packssdw mm0 n packssdw mm2 n movq mm1 n punpcklwd mm0 n punpckhwd mm1 n movq n movq n n js n emms n const float** src |
Definition at line 231 of file fmtconvert_mmx.c.
Referenced by adpcm_decode_frame(), apply_dependent_coupling(), apply_independent_coupling(), av_aes_crypt(), avfilter_draw_slice(), bfi_decode_frame(), blockCopy_TMPL(), bmp_decode_frame(), bmp_encode_frame(), cavs_idct8_add_c(), cinaudio_decode_frame(), cmp_direct_inline(), cmp_inline(), copy(), copy_backptr(), copy_block16(), copy_block2(), copy_block4(), copy_block8(), copy_frame(), decode(), decode_frame(), decode_init(), decode_p_frame(), decode_tile(), deInterlaceBlendLinear_TMPL(), deInterlaceFF_TMPL(), deInterlaceInterpolateCubic_TMPL(), deInterlaceInterpolateLinear_TMPL(), deInterlaceL5_TMPL(), deInterlaceMedian_TMPL(), deNoise(), dering_TMPL(), do_a_deblock_TMPL(), doTest(), doVertDefFilter_TMPL(), doVertLowPass_TMPL(), drawBasis(), duplicate_TMPL(), eightsvx_decode_frame(), encode_frame(), encode_rgb48_10bit(), ff_draw_horiz_band(), ff_emulated_edge_mc(), ff_ivi_inverse_slant_4x4(), ff_ivi_inverse_slant_8x8(), ff_ivi_process_empty_tile(), ff_jpegls_decode_picture(), ff_mjpeg_find_marker(), ff_rtmp_packet_dump(), ff_snow_horizontal_compose97i_mmx(), ff_snow_horizontal_compose97i_sse2(), for(), frame_thread_init(), getpix(), guess_mv(), h264_handle_packet(), halfpel_interpol(), http_prepare_data(), indeo3_decode_frame(), load_input_picture(), long_term_synth(), main(), mca(), mct_decode(), memcpy_backptr(), mimic_decode_update_thread_context(), mix(), msrle_decode_8_16_24_32(), pcm_bluray_decode_frame(), pcm_decode_frame(), pcx_encode_frame(), postProcess_TMPL(), pred16x16_dc(), pred16x16_horizontal(), pred16x16_left_dc(), pred16x16_plane_compat(), pred16x16_top_dc(), pred16x16_vertical(), pred4x4_127_dc(), pred4x4_128_dc(), pred4x4_129_dc(), pred4x4_dc(), pred4x4_down_left(), pred4x4_down_right(), pred4x4_horizontal(), pred4x4_horizontal_down(), pred4x4_horizontal_up(), pred4x4_left_dc(), pred4x4_top_dc(), pred4x4_vertical(), pred4x4_vertical_left(), pred4x4_vertical_right(), prefetch_motion(), put_image(), rgb15to16_TMPL(), rgb15to32_TMPL(), rgb15tobgr24_TMPL(), rgb16to15_TMPL(), rgb16to32_TMPL(), rgb16tobgr24_TMPL(), rgb24to15_TMPL(), rgb24to16_TMPL(), rgb24tobgr15_TMPL(), rgb24tobgr16_TMPL(), rgb24tobgr24_TMPL(), rgb24tobgr32_TMPL(), rgb32to15_TMPL(), rgb32to16_TMPL(), rgb32tobgr15_TMPL(), rgb32tobgr16_TMPL(), rgb32tobgr24_TMPL(), shuffle_bytes_2103_TMPL(), svq1_decode_frame(), svq1_encode_plane(), svq1_motion_inter_4v_block(), svq1_motion_inter_block(), svq1_skip_block(), svq3_mc_dir_part(), tempNoiseReducer_TMPL(), tgv_decode_inter(), tmv_decode_frame(), to_meta_with_crop(), transpose1_TMPL(), transpose2_TMPL(), validate_acl_list(), vc1_interp_mc(), vc1_inv_trans_4x4_c(), vc1_inv_trans_4x8_c(), vc1_inv_trans_8x4_c(), vc1_inv_trans_8x8_c(), vc1_mc_1mv(), vc1_mc_4mv_chroma(), vc1_mc_4mv_luma(), vertClassify_TMPL(), vertX1Filter_TMPL(), vp8_mc_luma(), wavpack_decode_block(), xan_decode_chroma(), xan_decode_frame_type0(), xan_decode_frame_type1(), yuv2yuv1_ar_TMPL(), yuv2yuv1_TMPL(), yuy2toyv12_TMPL(), zmbv_decode_xor_16(), and zmbv_decode_xor_8().