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.

Reply via email to