This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug regression/55676] New: ICE in int_mode_for_mode, at stor-layout.c:423


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

             Bug #: 55676
           Summary: ICE in int_mode_for_mode, at stor-layout.c:423
    Classification: Unclassified
           Product: gcc
           Version: 4.8.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: regression
        AssignedTo: unassigned@gcc.gnu.org
        ReportedBy: gretay@gcc.gnu.org
            Target: arm-none-eabi


FAIL: gcc.dg/sms-11.c (internal compiler error)

/work/dec-builds/base/install/bin/arm-none-eabi-gcc -S -O2 -fmodulo-sched
/work/local-checkouts/gcc-fsf/gcc/testsuite/gcc.dg/sms-11.c 
/work/local-checkouts/gcc-fsf/gcc/testsuite/gcc.dg/sms-11.c: In function
'invert':
/work/local-checkouts/gcc-fsf/gcc/testsuite/gcc.dg/sms-11.c:28:1: internal
compiler error: in int_mode_for_mode, at stor-layout.c:423
 }
 ^
0x8ca223 int_mode_for_mode(machine_mode)
    /work/local-checkouts/gcc-fsf/gcc/stor-layout.c:423
0x6a0cf1 emit_move_via_integer
    /work/local-checkouts/gcc-fsf/gcc/expr.c:3069
0x6ac7f9 emit_move_ccmode
    /work/local-checkouts/gcc-fsf/gcc/expr.c:3285
0x6ac7f9 emit_move_insn_1(rtx_def*, rtx_def*)
    /work/local-checkouts/gcc-fsf/gcc/expr.c:3436
0x81d9b3 gen_move_insn(rtx_def*, rtx_def*)
    /work/local-checkouts/gcc-fsf/gcc/optabs.c:4794
0xd051f8 schedule_reg_moves
    /work/local-checkouts/gcc-fsf/gcc/modulo-sched.c:769
0xd0854d sms_schedule
    /work/local-checkouts/gcc-fsf/gcc/modulo-sched.c:1691
0xd0854d rest_of_handle_sms
    /work/local-checkouts/gcc-fsf/gcc/modulo-sched.c:3347
Please submit a full bug report,
with preprocessed source if appropriate.

The problem is that emit_move_via_integer called with CCFPmode.

Known to fail with gcc trunk r194473, has been failing for at least a month
with the same error message.

Configured with: /work/local-checkouts/gcc-fsf/configure --target=arm-none-eabi
 --with-newlib --with-gnu-as --with-gnu-ld --enable-languages=c,c++ 
--disable-shared --disable-nls --disable-threads --disable-lto --disable-tls
--enable-checking=yes --disable-libssp --disable-libgomp --disable-libmudflap
--with-cpu=cortex-a15 --with-fpu=neon-vfpv4 --with-float=softfp 

When the test is compiled -mcpu=cortex-a9, there is no ICE but execution fails
with segmentation fault (tested on qemu) because generated code is incorrect.
In the first inner loop, the register r4 that holds the value of j keeps
increasing until tmp array is accessed out of bounds.

$ /work/dec-builds/base/install/bin/arm-none-eabi-gcc
/work/local-checkouts/gcc-fsf/gcc/testsuite/gcc.dg/sms-11.c 
-fno-diagnostics-show-caret   -O2  -lm  -o ./sms-11.exe  -mfloat-abi=softfp 
-mcpu=cortex-a9 -fmodulo-sched
$ qemu-arm sms-11.exe 
qemu: uncaught target signal 11 (Segmentation fault) - core dumped
Segmentation fault


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]