http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57637
Bug ID: 57637 Summary: Miscompare on 178.galgel in SPEC2000 on arm Product: gcc Version: 4.9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: ktkachov at gcc dot gnu.org CC: bernds at codesourcery dot com, zhenqiang.chen at linaro dot org Target: armv7l-unknown-linux-gnueabihf We're getting a miscompare on the 178.galgel benchmark in SPEC2000 on armv7l-unknown-linux-gnueabihf, on a Cortex-A15. The .mis file just says 'galgel.out' short. Bisection shows it started with r199439. 2013-05-30 Bernd Schmidt <ber...@codesourcery.com> Zhenqiang Chen <zhenqiang.c...@linaro.org> config/arm/arm-protos.h: Add and update function protos. config/arm/arm.c (use_simple_return_p): New added. (thumb2_expand_return): Check simple_return flag. config/arm/arm.md: Add simple_return and conditional simple_return. config/arm/iterators.md: Add iterator for return and simple_return. The compiler was configured: "--with-cpu=cortex-a15 --with-fpu=neon-vfpv4 --with-mode=thumb --with-float=hard --enable-languages=c,c++,fortran" The flags for the benchmark are -ffixed-form -mthumb -mcpu=cortex-a15 -mfpu=neon-vfpv4 -mfloat-abi=hard -O3. It works with -O1, fails at -O2 and -O3