https://gcc.gnu.org/bugzilla/show_bug.cgi?id=85478
Bug ID: 85478 Summary: ICE with single element vector Product: gcc Version: 8.0.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: krebbel at gcc dot gnu.org Target Milestone: --- Created attachment 43996 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=43996&action=edit Autoreduced testcase Compiling the attached testcase triggers an ICE cc1plus -march=arch12 -O3 -fpermissive t.cc Performing interprocedural optimizations <*free_lang_data> <visibility> <build_ssa_passes> <opt_local_passes> <targetclone> <free-fnsummary> <whole-program> <profile_estimate> <icf> <devirt> <cp> <fnsummary> <inline> <pure-const> <free-fnsummary> <static-var> <single-use> <comdats>Assembling functions: <materialize-all-clones> s<ae>& s<ae>::operator=(const s<t>&) [with t = ab<float>; ae = ab<long double>]during GIMPLE pass: vect t2.cc: In member function ‘s<ae>& s<ae>::operator=(const s<t>&) [with t = ab<float>; ae = ab<long double>]’: t2.cc:39:8: internal compiler error: in exact_div, at poly-int.h:2139 s<ae> &s<ae>::operator=(const s<t> &g) { ^~~~~ 0x21e8941 poly_int<1u, poly_result<unsigned long, if_nonpoly<int, int, poly_int_traits<int>::is_poly>::type, poly_coeff_pair_traits<unsigned long, if_nonpoly<int, int, poly_int_traits<int>::is_poly>::type>::result_kind>::type> exact_div<1u, unsigned long, int>(poly_int_pod<1u, unsigned long> const&, int) /home/andreas/build/../gcc/gcc/poly-int.h:2139 0x21e8941 vect_grouped_store_supported(tree_node*, unsigned long) /home/andreas/build/../gcc/gcc/tree-vect-data-refs.c:5150 0x1ce5115 vect_analyze_loop_2 /home/andreas/build/../gcc/gcc/tree-vect-loop.c:2495 0x1ce5115 vect_analyze_loop(loop*, _loop_vec_info*) /home/andreas/build/../gcc/gcc/tree-vect-loop.c:2621 0x1d03e13 vectorize_loops() /home/andreas/build/../gcc/gcc/tree-vectorizer.c:664