mirror of https://git.ffmpeg.org/ffmpeg.git
configure: Enable GCC vectorization on ≥4.9 on x86
4.9 was released precisely nine years after the first GCC version with autovectorizer (4.0) and six years after the first GCC version with `-ftree-vectorize` default to enabled on `-O3` (4.3). We've given GCC enough time to fix those bugs. FATE passes here on a x86-64 machine with both GCC 4.9.2 and 5.3.1. Some optimization hotspots benefit greatly from this change, especially those without handwritten assembly. For instance, the main function in vf_phase is now 1.6x faster (1.2x overall) on my machine.
This commit is contained in:
parent
8e46c7c1e7
commit
cb8646af24
|
@ -5935,7 +5935,11 @@ elif enabled ccc; then
|
||||||
add_cflags -msg_disable nonstandcast
|
add_cflags -msg_disable nonstandcast
|
||||||
add_cflags -msg_disable unsupieee
|
add_cflags -msg_disable unsupieee
|
||||||
elif enabled gcc; then
|
elif enabled gcc; then
|
||||||
check_optflags -fno-tree-vectorize
|
case $gcc_basever in
|
||||||
|
4.9*) enabled x86 || check_optflags -fno-tree-vectorize ;;
|
||||||
|
4.*) check_optflags -fno-tree-vectorize ;;
|
||||||
|
*) enabled x86 || check_optflags -fno-tree-vectorize ;;
|
||||||
|
esac
|
||||||
check_cflags -Werror=format-security
|
check_cflags -Werror=format-security
|
||||||
check_cflags -Werror=implicit-function-declaration
|
check_cflags -Werror=implicit-function-declaration
|
||||||
check_cflags -Werror=missing-prototypes
|
check_cflags -Werror=missing-prototypes
|
||||||
|
|
Loading…
Reference in New Issue