http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55010
Bug #: 55010 Summary: Internal consistency failure : invalid rtl sharing found in the insn Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: rtl-optimization AssignedTo: unassig...@gcc.gnu.org ReportedBy: mer...@savhon.org Hi ! With GCC 4.8.0 as of 20121021, at -O2 and higher : $ cat consistency.c #include <stdint.h> int64_t a; uint64_t b; void f(void) { a = (a < 0) / ((a -= b) ? b >= ((b = a) || 0) : 0); } $ xgcc -w -m32 -O2 consistency.c consistency.c: In function âfâ: consistency.c:9:1: error: invalid rtl sharing found in the insn } ^ (insn 57 55 33 5 (set (reg:SI 83 [ D.1743 ]) (if_then_else:SI (leu (reg:CC 17 flags) (const_int 0 [0])) (reg:SI 83 [ D.1743 ]) (reg:SI 59 [ iftmp.1 ]))) consistency.c:8 908 {*movsicc_noc} (expr_list:REG_EQUAL (ne:SI (subreg:SI (reg:DI 65 [ D.1745 ]) 0) (const_int 0 [0])) (nil))) consistency.c:9:1: error: shared rtx (subreg:SI (reg:DI 65 [ D.1745 ]) 0) consistency.c:9:1: internal compiler error: internal consistency failure linux-vdso.so.1: No such file or directory 0x6a8575 verify_rtx_sharing ../../srcdir/gcc/emit-rtl.c:2574 0x6a849f verify_rtx_sharing ../../srcdir/gcc/emit-rtl.c:2590 0x6a849f verify_rtx_sharing ../../srcdir/gcc/emit-rtl.c:2590 0x6ad46c verify_rtl_sharing() ../../srcdir/gcc/emit-rtl.c:2655 0x82f87c execute_function_todo ../../srcdir/gcc/passes.c:1966 0x8304cd execute_todo ../../srcdir/gcc/passes.c:1989 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. Please note that it was found on an x86 machine, and that I had to add -m32 to the commandline to reproduce the crash on my x86_64 machine.