http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59743
Bug ID: 59743 Summary: [4.9 Regression] ICE: Segmentation fault Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: rtl-optimization Assignee: unassigned at gcc dot gnu.org Reporter: trippels at gcc dot gnu.org reduced test case: typedef union { long all; struct { int low; int high; } s; } udwords; int a, b, c, d; void __udivmoddi4() { udwords r; d = __builtin_clz(0); r.s.low = 0; for (; d; --d) { r.s.high = r.s.high << 1 | r.s.low >> a; r.s.low = r.s.low << b >> 1; int s = -r.all; c = s; r.all--; } } % g++ -O2 -c test.ii test.ii: In function ‘void __udivmoddi4()’: test.ii:20:1: internal compiler error: Segmentation fault } ^ 0xb4f8df crash_signal ../../gcc/gcc/toplev.c:337 0xb056c9 reg_used_between_p(rtx_def const*, rtx_def const*, rtx_def const*) ../../gcc/gcc/rtlanal.c:753 0x103e6eb combine_reaching_defs ../../gcc/gcc/ree.c:734 0x103e6eb find_and_remove_re ../../gcc/gcc/ree.c:973 0x103e6eb rest_of_handle_ree ../../gcc/gcc/ree.c:1035 0x103e6eb execute ../../gcc/gcc/ree.c:1074 Please submit a full bug report,