FFmpeg
4.3.6
|
#include "config.h"
#include <stdarg.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "checkasm.h"
#include "libavutil/common.h"
#include "libavutil/cpu.h"
#include "libavutil/intfloat.h"
#include "libavutil/random_seed.h"
Go to the source code of this file.
Data Structures | |
struct | CheckasmFuncVersion |
struct | CheckasmFunc |
Macros | |
#define | COLOR_RED 1 |
#define | COLOR_GREEN 2 |
#define | COLOR_YELLOW 3 |
#define | isatty(fd) 1 |
#define | is_red(f) ((f) && !(f)->color) |
#define | DEF_CHECKASM_CHECK_FUNC(type, fmt) |
Functions | |
static int | is_negative (union av_intfloat32 u) |
int | float_near_ulp (float a, float b, unsigned max_ulp) |
int | float_near_ulp_array (const float *a, const float *b, unsigned max_ulp, unsigned len) |
int | float_near_abs_eps (float a, float b, float eps) |
int | float_near_abs_eps_array (const float *a, const float *b, float eps, unsigned len) |
int | float_near_abs_eps_ulp (float a, float b, float eps, unsigned max_ulp) |
int | float_near_abs_eps_array_ulp (const float *a, const float *b, float eps, unsigned max_ulp, unsigned len) |
int | double_near_abs_eps (double a, double b, double eps) |
int | double_near_abs_eps_array (const double *a, const double *b, double eps, unsigned len) |
static void | color_printf (int color, const char *fmt,...) |
static void | destroy_func_tree (CheckasmFunc *f) |
static void * | checkasm_malloc (size_t size) |
static const char * | cpu_suffix (int cpu) |
static int | cmp_nop (const void *a, const void *b) |
static int | measure_nop_time (void) |
static void | print_benchs (CheckasmFunc *f) |
static int | cmp_func_names (const char *a, const char *b) |
static CheckasmFunc * | rotate_tree (CheckasmFunc *f, int dir) |
static void | balance_tree (CheckasmFunc **root) |
static CheckasmFunc * | get_func (CheckasmFunc **root, const char *name) |
static void | check_cpu_flag (const char *name, int flag) |
static void | print_cpu_name (void) |
static int | bench_init_ffmpeg (void) |
static int | bench_init (void) |
static void | bench_uninit (void) |
int | main (int argc, char *argv[]) |
void * | checkasm_check_func (void *func, const char *name,...) |
int | checkasm_bench_func (void) |
void | checkasm_fail_func (const char *msg,...) |
CheckasmPerf * | checkasm_get_perf_context (void) |
void | checkasm_report (const char *name,...) |
Variables | |
struct { | |
const char * name | |
void(* func )(void) | |
} | tests [] |
struct { | |
const char * name | |
const char * suffix | |
int flag | |
} | cpus [] |
struct { | |
CheckasmFunc * funcs | |
CheckasmFunc * current_func | |
CheckasmFuncVersion * current_func_ver | |
const char * current_test_name | |
const char * bench_pattern | |
int bench_pattern_len | |
int num_checked | |
int num_failed | |
int nop_time | |
int sysfd | |
int cpu_flag | |
const char * cpu_flag_name | |
const char * test_name | |
int verbose | |
} | state |
AVLFG | checkasm_lfg |
#define COLOR_RED 1 |
Definition at line 51 of file checkasm.c.
Referenced by checkasm_report().
#define COLOR_GREEN 2 |
Definition at line 52 of file checkasm.c.
Referenced by checkasm_report().
#define COLOR_YELLOW 3 |
Definition at line 53 of file checkasm.c.
Referenced by print_cpu_name().
#define isatty | ( | fd | ) | 1 |
Definition at line 61 of file checkasm.c.
Referenced by av_log_default_callback(), check_color_terminal(), and color_printf().
Definition at line 531 of file checkasm.c.
Referenced by balance_tree().
#define DEF_CHECKASM_CHECK_FUNC | ( | type, | |
fmt | |||
) |
Definition at line 844 of file checkasm.c.
|
static |
Definition at line 279 of file checkasm.c.
Referenced by float_near_ulp().
int float_near_ulp | ( | float | a, |
float | b, | ||
unsigned | max_ulp | ||
) |
Definition at line 284 of file checkasm.c.
Referenced by float_near_abs_eps_ulp(), and float_near_ulp_array().
int float_near_ulp_array | ( | const float * | a, |
const float * | b, | ||
unsigned | max_ulp, | ||
unsigned | len | ||
) |
Definition at line 302 of file checkasm.c.
Referenced by checkasm_check_audiodsp(), and checkasm_check_fmtconvert().
int float_near_abs_eps | ( | float | a, |
float | b, | ||
float | eps | ||
) |
Definition at line 314 of file checkasm.c.
Referenced by float_near_abs_eps_array(), float_near_abs_eps_ulp(), test_butterflies_float(), test_deemphasis(), test_fcmul_add(), test_scalarproduct_float(), test_sum_square(), test_vector_fmac_scalar(), test_vector_fmul(), test_vector_fmul_add(), test_vector_fmul_scalar(), and test_vector_fmul_window().
int float_near_abs_eps_array | ( | const float * | a, |
const float * | b, | ||
float | eps, | ||
unsigned | len | ||
) |
Definition at line 325 of file checkasm.c.
Referenced by check_ict_float(), checkasm_check_vf_gblur(), test_add_squares(), test_autocorrelate(), test_deemphasis(), test_hf_apply_noise(), test_hf_g_filt(), test_hf_gen(), test_hybrid_analysis(), test_mul_pair_single(), test_neg_odd_64(), test_postfilter(), test_qmf_deint_bfly(), test_qmf_deint_neg(), test_qmf_post_shuffle(), test_qmf_pre_shuffle(), test_stereo_interpolate(), and test_sum64x5().
int float_near_abs_eps_ulp | ( | float | a, |
float | b, | ||
float | eps, | ||
unsigned | max_ulp | ||
) |
Definition at line 337 of file checkasm.c.
Referenced by checkasm_check_synth_filter(), and float_near_abs_eps_array_ulp().
int float_near_abs_eps_array_ulp | ( | const float * | a, |
const float * | b, | ||
float | eps, | ||
unsigned | max_ulp, | ||
unsigned | len | ||
) |
Definition at line 342 of file checkasm.c.
int double_near_abs_eps | ( | double | a, |
double | b, | ||
double | eps | ||
) |
Definition at line 354 of file checkasm.c.
Referenced by double_near_abs_eps_array(), test_vector_dmac_scalar(), test_vector_dmul(), and test_vector_dmul_scalar().
int double_near_abs_eps_array | ( | const double * | a, |
const double * | b, | ||
double | eps, | ||
unsigned | len | ||
) |
Definition at line 361 of file checkasm.c.
Definition at line 374 of file checkasm.c.
Referenced by checkasm_report(), and print_cpu_name().
|
static |
Definition at line 417 of file checkasm.c.
Referenced by checkasm_malloc(), and main().
|
static |
Definition at line 434 of file checkasm.c.
Referenced by checkasm_check_func(), and get_func().
|
static |
Definition at line 446 of file checkasm.c.
Referenced by checkasm_fail_func(), and print_benchs().
Definition at line 457 of file checkasm.c.
Referenced by measure_nop_time().
Definition at line 463 of file checkasm.c.
Referenced by bench_init().
|
static |
Definition at line 484 of file checkasm.c.
Referenced by main().
|
static |
Definition at line 506 of file checkasm.c.
Referenced by get_func().
|
static |
Definition at line 521 of file checkasm.c.
Referenced by balance_tree().
|
static |
Definition at line 534 of file checkasm.c.
Referenced by get_func().
|
static |
Definition at line 550 of file checkasm.c.
Referenced by checkasm_check_func().
Definition at line 575 of file checkasm.c.
Referenced by main().
Definition at line 598 of file checkasm.c.
Referenced by checkasm_fail_func(), and checkasm_report().
Definition at line 630 of file checkasm.c.
Referenced by bench_init().
Definition at line 642 of file checkasm.c.
Referenced by main().
Definition at line 657 of file checkasm.c.
Referenced by main().
Definition at line 665 of file checkasm.c.
Definition at line 726 of file checkasm.c.
Definition at line 773 of file checkasm.c.
void checkasm_fail_func | ( | const char * | msg, |
... | |||
) |
Definition at line 780 of file checkasm.c.
CheckasmPerf* checkasm_get_perf_context | ( | void | ) |
Definition at line 798 of file checkasm.c.
void checkasm_report | ( | const char * | name, |
... | |||
) |
Definition at line 807 of file checkasm.c.
const char* name |
Definition at line 72 of file checkasm.c.
Referenced by check_cpu_flag(), and main().
Definition at line 73 of file checkasm.c.
Referenced by checkasm_check_func(), and main().
const { ... } tests[] |
Referenced by check_cpu_flag(), and main().
const char* suffix |
Definition at line 198 of file checkasm.c.
Referenced by av_parse_time(), coeff_abs_level_remaining_decode(), ff_hevc_hls_residual_coding(), and lavfi_read_header().
int flag |
Definition at line 199 of file checkasm.c.
Referenced by cpu_suffix(), and main().
const { ... } cpus[] |
Referenced by cpu_suffix(), and main().
CheckasmFunc* funcs |
Definition at line 256 of file checkasm.c.
Referenced by filter_frame(), init_axis_color(), and init_volume().
CheckasmFunc* current_func |
Definition at line 257 of file checkasm.c.
CheckasmFuncVersion* current_func_ver |
Definition at line 258 of file checkasm.c.
const char* current_test_name |
Definition at line 259 of file checkasm.c.
const char* bench_pattern |
Definition at line 260 of file checkasm.c.
int bench_pattern_len |
Definition at line 261 of file checkasm.c.
int num_checked |
Definition at line 262 of file checkasm.c.
int num_failed |
Definition at line 263 of file checkasm.c.
int nop_time |
Definition at line 266 of file checkasm.c.
int sysfd |
Definition at line 267 of file checkasm.c.
Referenced by measure_nop_time().
int cpu_flag |
Definition at line 269 of file checkasm.c.
const char* cpu_flag_name |
Definition at line 270 of file checkasm.c.
const char* test_name |
Definition at line 271 of file checkasm.c.
int verbose |
Definition at line 272 of file checkasm.c.
Referenced by main().
struct { ... } state |
Referenced by adts_aac_resync(), adx_parse(), apng_probe(), av1_filter_obus(), av_assert0_fpu(), av_lzo1x_decode(), av_rc4_crypt(), av_rc4_init(), avi_read_packet(), avpriv_fits_header_init(), avs2_find_frame_end(), avs2_probe(), bench_init(), bench_uninit(), bfi_read_packet(), bmp_parse(), cavs_find_frame_end(), check_cpu_flag(), checkasm_bench_func(), checkasm_check_func(), checkasm_fail_func(), checkasm_get_perf_context(), checkasm_malloc(), checkasm_report(), convert_samples(), dca_find_frame_end(), decode_cabac_intra_mb_type(), decode_line(), decode_slice_header(), delta_decode(), dnxhd_find_frame_end(), dpx_parse(), draw_scope(), dts_probe(), dv_probe(), dv_read_header(), dxv_decompress_cgo(), dxv_decompress_dxt1(), dxv_decompress_dxt5(), dxv_decompress_yo(), encode_line(), encode_picture_ls(), encode_slice_header(), extract_extradata_mpeg12(), extract_extradata_mpeg4(), extract_extradata_vc1(), ff_dither_alloc(), ff_h263_find_frame_end(), ff_jpegls_decode_picture(), ff_mpeg1_find_frame_end(), ff_mpeg4_find_frame_end(), ff_mpeg4video_split(), ff_rtp_send_h263_rfc2190(), ff_spdif_probe(), ff_spdif_read_packet(), find_any_startcode(), find_frame_end(), find_group3_syncmarker(), find_next_start_code(), find_start_code(), get_cabac_inline(), get_rac(), h261_find_frame_end(), h264_find_frame_end(), h264_split(), hevc_split(), iterative_me(), jpeg_probe(), latm_find_frame_end(), libAVFilter_GetState(), libAVFilter_Pause(), libAVFilter_Run(), libAVFilter_Stop(), libgsm_encode_frame(), main(), measure_nop_time(), mlp_filter_channel(), mpegaudio_parse(), mpegts_write_packet_internal(), mpegvideo_split(), mxf_parse_h264_frame(), nc_read_packet(), opus_find_frame_end(), parse_adaptation_sets(), parse_nal_units(), parse_presentation_segment(), predictor_calc_error(), print_benchs(), print_cpu_name(), pulse_context_wait(), pulse_read_header(), pulse_stream_wait(), put_cabac(), put_rac(), read_extra_header(), read_header(), read_quant_table(), rm_sync(), s337m_probe(), s337m_read_packet(), svc_decode_frame(), uninit(), vc1_split(), webp_parse(), write_extradata(), write_header(), and write_quant_table().
AVLFG checkasm_lfg |
Definition at line 276 of file checkasm.c.