http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60131

            Bug ID: 60131
           Summary: RTL check fail in rhs_regno
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: dcb314 at hotmail dot com

Created attachment 32095
  --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=32095&action=edit
gzipped C++ source code

I just compiled the attached code with gcc trunk dated 20140209 on a x86_64
box with flag -O2 and it said

/home/dcb/clang/llvm/lib/Target/R600/SIInstrInfo.cpp: In member function ‘const
llvm::TargetRegister
Class* llvm::SIInstrInfo::getOpRegClass(const llvm::MachineInstr&, unsigned
int) const’:
/home/dcb/clang/llvm/lib/Target/R600/SIInstrInfo.cpp:467:1: internal compiler
error: RTL check: expe
cted code 'reg', have 'sign_extend' in rhs_regno, at rtl.h:1125
 }
 ^
0xd530c7 rtl_check_failed_code1(rtx_def const*, rtx_code, char const*, int,
char const*)
    ../../src/trunk/gcc/rtl.c:773
0x6145f2 rhs_regno
    ../../src/trunk/gcc/rtl.h:1125
0x167748b rhs_regno
    ../../src/trunk/gcc/ree.c:388
0x167748b combine_reaching_defs
    ../../src/trunk/gcc/ree.c:703
0x16781e2 find_and_remove_re
    ../../src/trunk/gcc/ree.c:997
0x16781e2 rest_of_handle_ree
    ../../src/trunk/gcc/ree.c:1068
0x16781e2 execute
    ../../src/trunk/gcc/ree.c:1107
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.

The gcc trunk has been bootstrapped with --enable-check=rtl switched on.

Reply via email to