ICE: insn does not satisfy its constraints

Bug #815435 reported by Mans Rullgard
18
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Linaro GCC
Fix Released
High
Ramana Radhakrishnan

Bug Description

$ arm-linaro-linux-gnueabi-gcc -c foo.c -mfpu=vfp -mcpu=cortex-a8 -O3
foo.c: In function 'bugme':
foo.c:8:1: error: insn does not satisfy its constraints:
(insn 6 19 12 2 foo.c:6 (set (mem/c/i:DF (plus:SI (reg:SI 12 ip)
                (const_int -1016 [0xfffffffffffffc08])) [3 d+0 S8 A64])
        (reg:DF 2 r2 [133])) 645 {*movdf_vfp} (expr_list:REG_EQUAL (const_double:DF 0.0 [0x0.0p+0])
        (nil)))
foo.c:8:1: internal compiler error: in reload_cse_simplify_operands, at postreload.c:402

This is a regression in the 4.5-2011.07 release. The error occurs with -O2, -O3, and -Os, not with -O1, and only when targeting ARMv7 in ARM mode. ARMv6 or Thumb2 works.

Related branches

Revision history for this message
Mans Rullgard (mansr) wrote :
Revision history for this message
Ramana Radhakrishnan (ramana) wrote :

Confirmed - I was able to confirm this with Linaro GCC 4.5 2011.07 while for Linaro GCC 4.6 2011.07 there is no issue and infact it manages to generate an strd with the required offset which is valid code. Looks like some other backport has been missed out into Linaro GCC 4.5 .

I haven't been able to reproduce this issue on FSF GCC 4.5.x or on FSF GCC 4.6.x or on FSF trunk. I am marking this as High Priority since this is a regression from the 2011.06 release and is only Linaro 4.5.x specific. This is likely to be the same as lp:816055 which prevents 2011.07 from building eglibc.

Thanks,
Ramana

Changed in gcc-linaro:
status: New → Triaged
importance: Undecided → High
Changed in gcc-linaro:
assignee: nobody → Ramana Radhakrishnan (ramana)
milestone: none → 4.5-2011.08
status: Triaged → Fix Committed
Michael Hope (michaelh1)
Changed in gcc-linaro:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Bug attachments

Remote bug watches

Bug watches keep track of this bug in other bug trackers.