https://gcc.gnu.org/bugzilla/show_bug.cgi?id=112496
Bug ID: 112496 Summary: GCC: 14: internal compiler error: in vectorizable_nonlinear_induction, at tree-vect-loop.cc:9573 Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: 141242068 at smail dot nju.edu.cn Target Milestone: --- Compiler Explorer: https://gcc.godbolt.org/z/7aq3hjbjK When compile this program with `gcc-14 -O2`, gcc ICEs: ``` struct T { int x : 24; } v; void f1(int x) { while (v.x - ((v.x <<= 1) - v.x)) ; } ``` The crash output: ``` during GIMPLE pass: vect <source>: In function 'f1': <source>:2:6: internal compiler error: in vectorizable_nonlinear_induction, at tree-vect-loop.cc:9573 2 | void f1(int x) { | ^~ 0x238b15e internal_error(char const*, ...) ???:0 0xa11270 fancy_abort(char const*, int, char const*) ???:0 0x13ec547 vectorizable_induction(_loop_vec_info*, _stmt_vec_info*, gimple**, _slp_tree*, vec<stmt_info_for_cost, va_heap, vl_ptr>*) ???:0 0x13fe290 vect_analyze_loop(loop*, vec_info_shared*) ???:0 Please submit a full bug report, with preprocessed source (by using -freport-bug). Please include the complete backtrace with any bug report. See <https://gcc.gnu.org/bugs/> for instructions. Compiler returned: 1 ```