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
arm
avr32
bfin
loongarch
mips
ppc
riscv
sh4
tests
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
adler32.h
aes.c
aes.h
aes_ctr.c
aes_ctr.h
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
attributes_internal.h
audio_fifo.c
audio_fifo.h
avassert.h
avsscanf.c
avstring.c
avstring.h
avutil.h
avutilres.rc
base64.c
base64.h
blowfish.c
blowfish.h
bprint.c
bprint.h
bswap.h
buffer.c
buffer.h
buffer_internal.h
camellia.c
camellia.h
cast5.c
cast5.h
channel_layout.c
channel_layout.h
color_utils.c
color_utils.h
colorspace.h
common.h
cpu.c
cpu.h
cpu_internal.h
crc.c
crc.h
csp.c
csp.h
cuda_check.h
des.c
des.h
detection_bbox.c
detection_bbox.h
dict.c
dict.h
dict_internal.h
display.c
display.h
dovi_meta.c
dovi_meta.h
downmix_info.c
downmix_info.h
dynarray.h
encryption_info.c
encryption_info.h
error.c
error.h
eval.c
eval.h
ffmath.h
fifo.c
fifo.h
file.c
file.h
file_open.c
file_open.h
film_grain_params.c
film_grain_params.h
fixed_dsp.c
fixed_dsp.h
float2half.c
float2half.h
float_dsp.c
float_dsp.h
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
half2float.c
half2float.h
hash.c
hash.h
hdr_dynamic_metadata.c
hdr_dynamic_metadata.h
hdr_dynamic_vivid_metadata.c
hdr_dynamic_vivid_metadata.h
hmac.c
hmac.h
hwcontext.c
hwcontext.h
hwcontext_cuda.c
hwcontext_cuda.h
hwcontext_cuda_internal.h
hwcontext_d3d11va.c
hwcontext_d3d11va.h
hwcontext_drm.c
hwcontext_drm.h
hwcontext_dxva2.c
hwcontext_dxva2.h
hwcontext_internal.h
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
hwcontext_opencl.h
hwcontext_qsv.c
hwcontext_qsv.h
hwcontext_stub.c
hwcontext_vaapi.c
hwcontext_vaapi.h
hwcontext_vdpau.c
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
hwcontext_vulkan.c hwcontext_vulkan: remove optional encode/decode extensions from the list 2022-12-25 01:09:39 +01:00
hwcontext_vulkan.h
imgutils.c
imgutils.h
imgutils_internal.h
integer.c
integer.h
internal.h
intfloat.h
intmath.c
intmath.h
intreadwrite.h
lfg.c
lfg.h
libavutil.v
libm.h
lls.c
lls.h
log.c
log.h
log2_tab.c
lzo.c
lzo.h
macos_kperf.c
macos_kperf.h
macros.h
mastering_display_metadata.c
mastering_display_metadata.h
mathematics.c
mathematics.h
md5.c
md5.h
mem.c
mem.h
mem_internal.h
motion_vector.h
murmur3.c
murmur3.h
objc.h
opt.c lavu/opt: use AV_DICT_MULTIKEY in av_opt_set_dict2() 2023-01-31 09:08:03 +01:00
opt.h
parseutils.c
parseutils.h
pca.c
pca.h
pixdesc.c
pixdesc.h
pixelutils.c
pixelutils.h
pixfmt.h
qsort.h
random_seed.c
random_seed.h
rational.c
rational.h
rc4.c
rc4.h
replaygain.h
reverse.c
reverse.h
ripemd.c
ripemd.h
samplefmt.c
samplefmt.h
sha.c
sha.h
sha512.c
sha512.h
slicethread.c
slicethread.h
softfloat.h
softfloat_ieee754.h
softfloat_tables.h
spherical.c
spherical.h
stereo3d.c
stereo3d.h
tablegen.h
tea.c
tea.h
thread.h
threadmessage.c
threadmessage.h
time.c
time.h
time_internal.h
timecode.c
timecode.h
timer.h
timestamp.h
tree.c
tree.h
twofish.c
twofish.h
tx.c
tx.h
tx_double.c
tx_float.c
tx_int32.c
tx_priv.h
tx_template.c avutil/tx_template: Use more unsigned ints to avoid undefined overflows 2022-12-25 19:33:24 +01:00
utils.c
uuid.c
uuid.h
version.c
version.h avutil: introduce AVAmbientViewingEnvironment side data 2023-01-13 21:26:13 +02:00
version_major.h
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
vulkan.h
vulkan_functions.h
vulkan_glslang.c
vulkan_loader.h
vulkan_shaderc.c
wchar_filename.h
xga_font_data.c
xga_font_data.h
xtea.c
xtea.h