http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58369
Bug ID: 58369 Summary: [4.8/4.9 regression] ICE in subreg_get_info when compiling boost for m68k-linux Product: gcc Version: 4.8.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: mikpe at it dot uu.se Created attachment 30773 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=30773&action=edit Pre-processed non-reduced test case Attempting to compile boost-1.54 with g++ 4.8 or 4.9 for m68k-linux (after fixing a known boost alignment error that breaks jam) causes an ICE: > g++ -O2 -fPIC -S ellint_3f.ii In file included from ./boost/math/special_functions/ellint_3.hpp:22:0, from ./boost/math/special_functions.hpp:27, from libs/math/src/tr1/pch.hpp:9, from libs/math/build/../src/tr1/ellint_3f.cpp:6: ./boost/math/special_functions/ellint_rj.hpp: In function 'T boost::math::detail::ellint_rj_imp(T, T, T, T, const Policy&) [with T = double; Policy = boost::math::policies::policy<boost::math::policies::domain_error<(boost::math::policies::error_policy_type)1u>, boost::math::policies::pole_error<(boost::math::policies::error_policy_type)1u>, boost::math::policies::overflow_error<(boost::math::policies::error_policy_type)1u>, boost::math::policies::evaluation_error<(boost::math::policies::error_policy_type)1u>, boost::math::policies::rounding_error<(boost::math::policies::error_policy_type)1u>, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy, boost::math::policies::default_policy>]': ./boost/math/special_functions/ellint_rj.hpp:151:1: internal compiler error: in subreg_get_info, at rtlanal.c:3394 0x76ca1c subreg_get_info(unsigned int, machine_mode, unsigned int, machine_mode, subreg_info*) /tmp/gcc-4.8-r193425/gcc/rtlanal.c:3394 0x76ca2b subreg_regno_offset(unsigned int, machine_mode, unsigned int, machine_mode) /tmp/gcc-4.8-r193425/gcc/rtlanal.c:3446 0x75d1f0 choose_reload_regs /tmp/gcc-4.8-r193425/gcc/reload1.c:6564 0x761227 reload_as_needed /tmp/gcc-4.8-r193425/gcc/reload1.c:4648 0x766f5e reload(rtx_def*, int) /tmp/gcc-4.8-r193425/gcc/reload1.c:1055 0x6ab68b do_reload /tmp/gcc-4.8-r193425/gcc/ira.c:4636 0x6ab68b rest_of_handle_reload /tmp/gcc-4.8-r193425/gcc/ira.c:4737 Please submit a full bug report, with preprocessed source if appropriate. Please include the complete backtrace with any bug report. See <http://gcc.gnu.org/bugs.html> for instructions. 4.7 is Ok. Started with Bin Cheng's r193425. Reproducible with a cross. Originally from <http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=719484>. Currently attempting to auto-reduce the test case, but it's a painfully slow process.