Revision cbdd1999

b/Makefile.target
143 143

  
144 144
endif # CONFIG_SOFTMMU
145 145

  
146
# Workaround for http://gcc.gnu.org/PR55489, see configure.
147
%/translate.o: QEMU_CFLAGS += $(TRANSLATE_OPT_CFLAGS)
148

  
146 149
nested-vars += obj-y
147 150

  
148 151
# This resolves all nested paths, so it must come last
b/configure
1183 1183
    fi
1184 1184
done
1185 1185

  
1186
# Workaround for http://gcc.gnu.org/PR55489.  Happens with -fPIE/-fPIC and
1187
# large functions that use global variables.  The bug is in all releases of
1188
# GCC, but it became particularly acute in 4.6.x and 4.7.x.  It is fixed in
1189
# 4.7.3 and 4.8.0.  We should be able to delete this at the end of 2013.
1190
cat > $TMPC << EOF
1191
#if __GNUC__ == 4 && (__GNUC_MINOR__ == 6 || (__GNUC_MINOR__ == 7 && __GNUC_PATCHLEVEL__ <= 2))
1192
int main(void) { return 0; }
1193
#else
1194
#error No bug in this compiler.
1195
#endif
1196
EOF
1197
if compile_prog "-Werror -fno-gcse" "" ; then
1198
  TRANSLATE_OPT_CFLAGS=-fno-gcse
1199
fi
1200

  
1186 1201
if test "$static" = "yes" ; then
1187 1202
  if test "$pie" = "yes" ; then
1188 1203
    echo "static and pie are mutually incompatible"
......
3662 3677
echo "EXESUF=$EXESUF" >> $config_host_mak
3663 3678
echo "LIBS_QGA+=$libs_qga" >> $config_host_mak
3664 3679
echo "POD2MAN=$POD2MAN" >> $config_host_mak
3680
echo "TRANSLATE_OPT_CFLAGS=$TRANSLATE_OPT_CFLAGS" >> $config_host_mak
3665 3681

  
3666 3682
# generate list of library paths for linker script
3667 3683

  

Also available in: Unified diff