ffmpeg/libavutil
Lynne bbe95f7353
x86: replace explicit REP_RETs with RETs
From x86inc:
> On AMD cpus <=K10, an ordinary ret is slow if it immediately follows either
> a branch or a branch target. So switch to a 2-byte form of ret in that case.
> We can automatically detect "follows a branch", but not a branch target.
> (SSSE3 is a sufficient condition to know that your cpu doesn't have this problem.)

x86inc can automatically determine whether to use REP_RET rather than
REP in most of these cases, so impact is minimal. Additionally, a few
REP_RETs were used unnecessary, despite the return being nowhere near a
branch.

The only CPUs affected were AMD K10s, made between 2007 and 2011, 16
years ago and 12 years ago, respectively.

In the future, everyone involved with x86inc should consider dropping
REP_RETs altogether.
2023-02-01 04:23:55 +01:00
..
aarch64 lavu/tx: refactor to explicitly track and convert lookup table order 2022-11-24 15:58:34 +01:00
arm arm: relax byte-swap assembler constraints 2022-09-03 23:54:05 +03:00
avr32
bfin
loongarch Revert "avcodec/loongarch/h264chroma, vc1dsp_lasx: Add wrapper for __lasx_xvldx" 2022-09-14 14:09:26 +02:00
mips avutil/mips: Use $at as MMI macro temporary register 2021-07-28 23:31:48 +02:00
ppc avutil/ppc/cpu: Use proper header for OpenBSD PPC CPU detection 2022-06-25 12:16:51 +02:00
riscv riscv: fix scalar product initialisation 2022-10-13 10:17:38 +02:00
sh4
tests avutil/tests/dict: Explicitly test av_dict_iterate() 2022-12-07 10:22:02 +01:00
tomi
x86 x86: replace explicit REP_RETs with RETs 2023-02-01 04:23:55 +01:00
.gitignore
Makefile avutil: introduce AVAmbientViewingEnvironment side data 2023-01-13 21:26:13 +02:00
adler32.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
adler32.h avutil: Switch crypto APIs to size_t 2021-04-27 10:43:13 -03:00
aes.c avutil/aes: Don't use out-of-bounds index 2022-10-24 16:28:14 +02:00
aes.h avutil/aes: document some missing arguments 2022-10-17 09:56:47 +02:00
aes_ctr.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
aes_ctr.h avutil/aes_ctr: document some missing arguments 2022-10-17 09:56:47 +02:00
aes_internal.h
ambient_viewing_environment.c avutil: introduce AVAmbientViewingEnvironment side data 2023-01-13 21:26:13 +02:00
ambient_viewing_environment.h avutil: introduce AVAmbientViewingEnvironment side data 2023-01-13 21:26:13 +02:00
attributes.h avutil/attributes: add support for clang in AV_NOWARN_DEPRECATED 2022-03-16 12:29:37 -03:00
attributes_internal.h avutil/attributes_internal: Add visibility pragma 2022-10-10 13:43:59 +02:00
audio_fifo.c avutil/audio_fifo: Avoid avutil.h inclusion 2022-02-24 12:56:49 +01:00
audio_fifo.h avutil/audio_fifo: Avoid avutil.h inclusion 2022-02-24 12:56:49 +01:00
avassert.h avutil/avassert: Don't include avutil.h 2022-02-24 12:56:49 +01:00
avsscanf.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
avstring.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
avstring.h avutil/avstring: Add doxy for missing argument 2022-10-17 09:56:47 +02:00
avutil.h libavutil: Deprecate av_fopen_utf8, provide an avpriv version 2022-05-23 13:52:26 +03:00
avutilres.rc
base64.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
base64.h
blowfish.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
blowfish.h
bprint.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
bprint.h avutil/bprint: Improve doxy documentation 2022-10-17 09:55:19 +02:00
bswap.h lavu/riscv: byte-swap operations 2022-09-13 16:50:43 -03:00
buffer.c avutil/buffer: Never poison returned buffers 2022-08-10 18:49:35 +02:00
buffer.h avutil/buffer: constify some function parameters 2021-09-17 13:28:09 -03:00
buffer_internal.h Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
camellia.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
camellia.h avutil/camellia: Fix doxy @param typo 2022-10-17 09:55:19 +02:00
cast5.c avutil/cast5: Avoid undefined shift of uint32_t by 32 places 2022-11-11 12:24:23 +01:00
cast5.h
channel_layout.c avutil/channel_layout: add a 7.1(top) channel layout 2022-11-03 19:39:45 -03:00
channel_layout.h avutil/channel_layout: add a 7.1(top) channel layout 2022-11-03 19:39:45 -03:00
color_utils.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
color_utils.h
colorspace.h
common.h Remove obsolete version.h inclusions 2022-02-24 12:56:49 +01:00
cpu.c lavu/riscv: CPU flag for the Zbb extension 2022-10-05 08:26:19 +02:00
cpu.h lavu/riscv: CPU flag for the Zbb extension 2022-10-05 08:26:19 +02:00
cpu_internal.h lavu/cpu: detect RISC-V base extensions 2022-09-27 13:19:52 +02:00
crc.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
crc.h avutil/crc: Add doxy for missing arguments 2022-10-17 09:56:47 +02:00
csp.c avutil/csp: create public API for colorspace structs 2022-06-01 13:52:38 -04:00
csp.h avutil/csp: Fix bogus doxy filename 2022-10-17 09:55:19 +02:00
cuda_check.h avutil/log: Don't include avutil.h 2022-02-24 12:56:49 +01:00
des.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
des.h avutil/des: Add doxy for missing arguments 2022-10-17 09:56:47 +02:00
detection_bbox.c avutil/detection_bbox: Fix av_detection_bbox_alloc failed if nb_bboxes == 0 2021-10-08 10:11:59 +08:00
detection_bbox.h avutil/detection_bbox: Add doxy for missing argument 2022-10-17 09:56:47 +02:00
dict.c avutil/dict: Use av_dict_iterate in av_dict_get_string 2022-11-06 08:26:50 +01:00
dict.h avutil/dict: Improve documentation 2022-11-06 08:26:50 +01:00
dict_internal.h avutil/dict: Move avpriv_dict_set_timestamp() to a header of its own 2022-09-03 15:41:44 +02:00
display.c avutil/display: Don't include avutil.h 2022-02-24 12:56:49 +01:00
display.h avutil/display: Add file to doxy group 2022-10-17 09:55:19 +02:00
dovi_meta.c lavu/frame: Add Dolby Vision metadata side data type 2022-01-04 11:59:02 +01:00
dovi_meta.h lavu/frame: Add Dolby Vision metadata side data type 2022-01-04 11:59:02 +01:00
downmix_info.c
downmix_info.h
dynarray.h
encryption_info.c Replace all occurences of av_mallocz_array() by av_calloc() 2021-09-20 01:03:52 +02:00
encryption_info.h
error.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
error.h avutil/error: Include macros.h for MKTAG 2021-07-29 22:02:05 +02:00
eval.c
eval.h avutil/eval: Add doxy for missing arguments 2022-10-17 09:56:47 +02:00
ffmath.h
fifo.c avutil/fifo: Don't include avutil.h 2022-02-24 12:56:49 +01:00
fifo.h lavu/fifo: clarify interaction of AV_FIFO_FLAG_AUTO_GROW with av_fifo_write() 2022-09-05 08:59:36 +02:00
file.c avutil/file: Properly deprecate av_tempfile() 2022-09-03 15:42:40 +02:00
file.h avutil/file: Add doxy for missing arguments 2022-10-17 09:56:47 +02:00
file_open.c avutil/internal: Move avpriv-file API to a header of its own 2022-09-03 15:41:44 +02:00
file_open.h avutil/internal: Move avpriv-file API to a header of its own 2022-09-03 15:41:44 +02:00
film_grain_params.c
film_grain_params.h avcodec/h264_slice: compute and export film grain seed 2021-08-24 09:58:52 -03:00
fixed_dsp.c lavu/fixed_dsp: add missing av_restrict qualifiers 2022-10-04 10:56:12 +02:00
fixed_dsp.h lavu/fixeddsp: RISC-V V butterflies_fixed 2022-09-27 13:19:52 +02:00
float2half.c avutil/half2float: use native _Float16 if available 2022-08-19 22:09:36 +02:00
float2half.h avutil/half2float: use native _Float16 if available 2022-08-19 22:09:36 +02:00
float_dsp.c lavu/floatdsp: RISC-V V vector_fmul_scalar 2022-09-27 13:19:52 +02:00
float_dsp.h lavu/floatdsp: RISC-V V vector_fmul_scalar 2022-09-27 13:19:52 +02:00
frame.c avutil: introduce AVAmbientViewingEnvironment side data 2023-01-13 21:26:13 +02:00
frame.h avutil: introduce AVAmbientViewingEnvironment side data 2023-01-13 21:26:13 +02:00
getenv_utf8.h libavutil: Add wchartoutf8(), wchartoansi(), utf8toansi(), getenv_utf8(), freeenv_utf8() and getenv_dup() 2022-06-21 13:27:46 +03:00
half2float.c avutil/half2float: use native _Float16 if available 2022-08-19 22:09:36 +02:00
half2float.h avutil/half2float: use native _Float16 if available 2022-08-19 22:09:36 +02:00
hash.c avutil: Switch crypto APIs to size_t 2021-04-27 10:43:13 -03:00
hash.h Remove obsolete version.h inclusions 2021-07-22 14:34:31 +02:00
hdr_dynamic_metadata.c
hdr_dynamic_metadata.h
hdr_dynamic_vivid_metadata.c avutil: support for CUVA Vivid HDR metadata 2022-03-01 09:08:43 +08:00
hdr_dynamic_vivid_metadata.h avutil: support for CUVA Vivid HDR metadata 2022-03-01 09:08:43 +08:00
hmac.c Remove obsolete version.h inclusions 2021-07-22 14:34:31 +02:00
hmac.h Remove obsolete version.h inclusions 2021-07-22 14:34:31 +02:00
hwcontext.c avutil/hwcontext: verify hw_frames_ctx in transfer_data_alloc 2022-11-21 23:57:03 +08:00
hwcontext.h avutil/hwcontext: Add doxy for missing argument 2022-10-17 09:56:47 +02:00
hwcontext_cuda.c avutil/hwcontext_cuda: fix compilation without Vulkan after last commit 2022-11-12 15:54:53 -03:00
hwcontext_cuda.h
hwcontext_cuda_internal.h
hwcontext_d3d11va.c avutil/hwcontext_d3d11va: add support for rgbaf16 pixel format 2022-08-13 15:21:59 +02:00
hwcontext_d3d11va.h libavutil/hwcontext_d3d11va: adding more texture information to the D3D11 hwcontext API 2021-09-08 17:48:02 -03:00
hwcontext_drm.c
hwcontext_drm.h
hwcontext_dxva2.c avutil/hwcontext_dxva2: add ARGB format 2021-11-13 19:22:57 +01:00
hwcontext_dxva2.h
hwcontext_internal.h Revert "avutils/hwcontext: When deriving a hwdevice, search for existing device in both directions" 2022-01-05 11:56:58 +08:00
hwcontext_mediacodec.c avutil/hwcontext_mediacodec: fix backward compatibility 2023-01-26 23:31:37 +08:00
hwcontext_mediacodec.h avutil/hwcontext_mediacodec: fix backward compatibility 2023-01-26 23:31:37 +08:00
hwcontext_opencl.c qsv: remove mfx/ prefix from mfx headers 2022-08-12 10:43:39 +08:00
hwcontext_opencl.h
hwcontext_qsv.c lavu/hwcontext_qsv: add support for 12bit content on Linux 2022-10-10 09:31:34 +08:00
hwcontext_qsv.h lavu/hwcontext_qsv: add loader field to AVQSVDeviceContext 2022-08-12 10:43:39 +08:00
hwcontext_stub.c )hwcontext: add a stub implementation for Vulkan functions 2022-07-05 15:20:08 +02:00
hwcontext_vaapi.c lavu/hwcontext_vaapi: Skip 'vgem' driver 2022-12-08 14:30:04 +08:00
hwcontext_vaapi.h
hwcontext_vdpau.c avutil/buffer: Switch AVBuffer API to size_t 2021-04-27 10:43:13 -03:00
hwcontext_vdpau.h
hwcontext_videotoolbox.c avutil/hwcontext_videotoolbox: BGRA should be full range 2023-01-11 18:57:20 +08:00
hwcontext_videotoolbox.h avutil/hwcontext_videotoolbox: add missing include for AVFrame 2022-08-08 11:08:55 +08:00
hwcontext_vulkan.c hwcontext_vulkan: remove optional encode/decode extensions from the list 2022-12-25 01:09:39 +01:00
hwcontext_vulkan.h hwcontext_vulkan: stricter semaphore number requirements 2021-12-10 17:04:22 +01:00
imgutils.c imgutils: expose av_image_copy_plane_uc_from() 2021-08-14 00:27:43 +02:00
imgutils.h avutil/imgutils: document some missing arguments 2022-10-17 09:56:47 +02:00
imgutils_internal.h
integer.c avutil/integer: Use '|' instead of '+' where it is more natural 2022-10-24 20:11:20 +02:00
integer.h avutil/integer: Don't include common.h 2022-02-24 12:56:49 +01:00
internal.h avutil/pixdesc: Move ff_check_pixfmt_descriptors() to its only user 2022-09-30 14:33:08 +02:00
intfloat.h
intmath.c
intmath.h lavu/riscv: add <intmath.h> optimisations 2022-09-13 16:50:43 -03:00
intreadwrite.h
lfg.c
lfg.h avutil/lfg: Minor doxy improvements 2022-10-17 09:56:47 +02:00
libavutil.v
libm.h
lls.c all: Replace if (ARCH_FOO) checks by #if ARCH_FOO 2022-06-15 04:56:37 +02:00
lls.h Remove obsolete version.h inclusions 2021-07-22 14:34:31 +02:00
log.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
log.h avutil/log: Don't include avutil.h 2022-02-24 12:56:49 +01:00
log2_tab.c
lzo.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
lzo.h
macos_kperf.c lavu/kperf: use ff_thread_once() 2021-07-21 16:35:27 +02:00
macos_kperf.h lavu/kperf: use ff_thread_once() 2021-07-21 16:35:27 +02:00
macros.h avutil/common, macros: Move several macros from common.h to macros.h 2021-07-29 22:02:05 +02:00
mastering_display_metadata.c
mastering_display_metadata.h
mathematics.c avutil/avassert: Don't include avutil.h 2022-02-24 12:56:49 +01:00
mathematics.h avutil: Fix mismatching argument names 2022-10-17 09:51:47 +02:00
md5.c avutil/md5: Avoid av_unused variable 2021-10-02 17:13:57 +02:00
md5.h Remove obsolete version.h inclusions 2021-07-22 14:34:31 +02:00
mem.c avutil/mem: Handle fast allocations near UINT_MAX properly 2022-07-06 22:53:15 +02:00
mem.h avutil: Fix mismatching argument names 2022-10-17 09:51:47 +02:00
mem_internal.h avutil/mem_internal: Fix headers 2022-08-24 03:43:52 +02:00
motion_vector.h
murmur3.c avutil: Switch crypto APIs to size_t 2021-04-27 10:43:13 -03:00
murmur3.h Remove obsolete version.h inclusions 2021-07-22 14:34:31 +02:00
objc.h avutil: add obj-c helpers into header-only include 2021-12-18 11:55:47 -08:00
opt.c lavu/opt: use AV_DICT_MULTIKEY in av_opt_set_dict2() 2023-01-31 09:08:03 +01:00
opt.h lavu: support AVChannelLayout AVOptions 2022-03-15 09:42:29 -03:00
parseutils.c avutil/parseutils: use quadhd for Quad HD 2022-01-12 13:42:26 +08:00
parseutils.h avutil/parseutils: Use inline code and properly escape 2022-10-17 09:56:47 +02:00
pca.c
pca.h
pixdesc.c lavu/pixdesc: handle xv30be in av_[read|write]_image_line 2022-12-08 21:15:44 -08:00
pixdesc.h avutil/pixdesc: Add av_chroma_location_(enum_to_pos|pos_to_enum) 2022-09-26 03:02:25 +02:00
pixelutils.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
pixelutils.h avutil/pixelutils: Don't include common.h 2022-02-24 12:56:49 +01:00
pixfmt.h lavu/pixfmt: Update the description for AV_PIX_FMT_QSV 2022-11-22 13:52:38 +08:00
qsort.h Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
random_seed.c avutil/internal: Move avpriv-file API to a header of its own 2022-09-03 15:41:44 +02:00
random_seed.h
rational.c
rational.h avutil: Fix mismatching argument names 2022-10-17 09:51:47 +02:00
rc4.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
rc4.h avutil/rc4: Add doxy for missing arguments 2022-10-17 09:56:47 +02:00
replaygain.h
reverse.c
reverse.h
ripemd.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
ripemd.h Remove obsolete version.h inclusions 2021-07-22 14:34:31 +02:00
samplefmt.c avutil/samplefmt: Don't include attributes.h, avutil.h 2022-02-24 12:56:49 +01:00
samplefmt.h avutil/samplefmt: document missing argument 2022-10-17 09:56:47 +02:00
sha.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
sha.h Remove obsolete version.h inclusions 2021-07-22 14:34:31 +02:00
sha512.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
sha512.h Remove obsolete version.h inclusions 2021-07-22 14:34:31 +02:00
slicethread.c slicethread: Limit the automatic number of threads to 16 2022-09-06 18:46:44 +03:00
slicethread.h
softfloat.h
softfloat_ieee754.h
softfloat_tables.h
spherical.c
spherical.h avutil/spherical: Add file to doxy group 2022-10-17 09:55:19 +02:00
stereo3d.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
stereo3d.h avutil/stereo3d: Add file to doxy group 2022-10-17 09:55:19 +02:00
tablegen.h
tea.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
tea.h
thread.h lavu/thread: add an internal function for setting thread name 2022-10-24 02:00:31 +02:00
threadmessage.c avutil/fifo: Don't include avutil.h 2022-02-24 12:56:49 +01:00
threadmessage.h
time.c
time.h
time_internal.h
timecode.c avutil/timecode: use timecode fps for number of frame digits 2022-04-22 22:54:58 +02:00
timecode.h
timer.h lavu/riscv: AV_READ_TIME cycle counter 2022-09-13 16:50:43 -03:00
timestamp.h
tree.c
tree.h Remove obsolete version.h inclusions 2021-07-22 14:34:31 +02:00
twofish.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
twofish.h avutil/twofish: Fix doxy @param typo 2022-10-17 09:51:47 +02:00
tx.c avutil/tx: Use proper deallocator 2022-11-25 15:54:33 +01:00
tx.h lavu/tx: add DCT-II implementation 2022-11-24 15:58:35 +01:00
tx_double.c
tx_float.c
tx_int32.c
tx_priv.h avutil/tx: Use unsigned in ff_tx_fft_sr_combine() to avoid undefined behavior 2022-11-28 20:58:05 +01:00
tx_template.c avutil/tx_template: Use more unsigned ints to avoid undefined overflows 2022-12-25 19:33:24 +01:00
utils.c lib*/version: Move library version functions into files of their own 2022-05-10 06:49:32 +02:00
uuid.c avutil/uuid: add utility library for manipulating UUIDs as specified in RFC 4122 2022-06-12 18:34:28 +10:00
uuid.h avutil/uuid: Remove bogus doxy return doc 2022-10-17 09:56:47 +02:00
version.c lib*/version: Move library version functions into files of their own 2022-05-10 06:49:32 +02:00
version.h avutil: introduce AVAmbientViewingEnvironment side data 2023-01-13 21:26:13 +02:00
version_major.h Fix libversion.sh for split version headers, to unbreak shared library builds 2022-03-17 11:11:17 +02:00
video_enc_params.c lavu/video_enc_params: Avoid relying on an undefined C construct 2023-01-31 14:22:54 +02:00
video_enc_params.h
vulkan.c lavu/vulkan: avoid using strlen as a loop condition 2022-02-22 06:30:12 +01:00
vulkan.h vulkan: fix checkheaders 2021-11-19 16:47:28 +01:00
vulkan_functions.h hwcontext_vulkan: avoid using 64-bit enums 2022-01-27 10:27:09 +01:00
vulkan_glslang.c avutil/vulkan_glslang: fix compiling failure issue 2021-11-19 16:47:48 +01:00
vulkan_loader.h vulkan_loader: fix typo in error message 2021-11-18 06:40:52 +01:00
vulkan_shaderc.c lavu/vulkan: add support for using libshaderc as a GLSL compiler 2021-11-19 16:47:30 +01:00
wchar_filename.h avutil/wchar_filename: Make the header C++ compatible 2022-06-28 10:59:31 +02:00
xga_font_data.c
xga_font_data.h
xtea.c Remove unnecessary libavutil/(avutil|common|internal).h inclusions 2022-02-24 12:56:49 +01:00
xtea.h