configure: Remove old -fno-gcse workaround for GCC 4.6.x and 4.7.[012]

Now that we require at least GCC 4.8, we don't need this als workaround
for 4.6 and 4.7 anymore.

Backports commit d376e9de07e9541a040609d30b73403c33b6afe0 from qemu
This commit is contained in:
Thomas Huth 2018-12-18 03:52:35 -05:00 committed by Lioncash
parent b3020122a9
commit 3fa5a557eb
No known key found for this signature in database
GPG key ID: 4E3C3CC1031BA9C7
2 changed files with 1 additions and 19 deletions

View file

@ -65,9 +65,6 @@ endif
endif # CONFIG_SOFTMMU endif # CONFIG_SOFTMMU
# Workaround for http://gcc.gnu.org/PR55489, see configure.
%/translate.o: QEMU_CFLAGS += $(TRANSLATE_OPT_CFLAGS)
dummy := $(call unnest-vars,,obj-y) dummy := $(call unnest-vars,,obj-y)
all-obj-y := $(obj-y) all-obj-y := $(obj-y)

17
qemu/configure vendored
View file

@ -813,21 +813,7 @@ else
QEMU_CFLAGS="$QEMU_CFLAGS -Wno-missing-braces" QEMU_CFLAGS="$QEMU_CFLAGS -Wno-missing-braces"
fi fi
# Workaround for http://gcc.gnu.org/PR55489. Happens with -fPIE/-fPIC and # Static linking is not possible with modules or PIE
# large functions that use global variables. The bug is in all releases of
# GCC, but it became particularly acute in 4.6.x and 4.7.x. It is fixed in
# 4.7.3 and 4.8.0. We should be able to delete this at the end of 2013.
cat > $TMPC << EOF
#if __GNUC__ == 4 && (__GNUC_MINOR__ == 6 || (__GNUC_MINOR__ == 7 && __GNUC_PATCHLEVEL__ <= 2))
int main(void) { return 0; }
#else
#error No bug in this compiler.
#endif
EOF
if compile_prog "-Werror -fno-gcse" "" ; then
TRANSLATE_OPT_CFLAGS=-fno-gcse
fi
if test "$static" = "yes" ; then if test "$static" = "yes" ; then
if test "$pie" = "yes" ; then if test "$pie" = "yes" ; then
error_exit "static and pie are mutually incompatible" error_exit "static and pie are mutually incompatible"
@ -1595,7 +1581,6 @@ echo "LIBS+=$LIBS" >> $config_host_mak
echo "EXESUF=$EXESUF" >> $config_host_mak echo "EXESUF=$EXESUF" >> $config_host_mak
echo "DSOSUF=$DSOSUF" >> $config_host_mak echo "DSOSUF=$DSOSUF" >> $config_host_mak
echo "LDFLAGS_SHARED=$LDFLAGS_SHARED" >> $config_host_mak echo "LDFLAGS_SHARED=$LDFLAGS_SHARED" >> $config_host_mak
echo "TRANSLATE_OPT_CFLAGS=$TRANSLATE_OPT_CFLAGS" >> $config_host_mak
for target in $target_list; do for target in $target_list; do
target_dir="$target" target_dir="$target"