The test-case to be attached "works" with 4.0.2.
For revision 106478 of "Fri Nov  4 03:11:30 UTC 2005", I get
/tmp/st18.c: In function âfâ:
/tmp/st18.c:73: error: insn does not satisfy its constraints:
(insn:QI 84 518 85 9 (set (cc0)
        (mem:QI (plus:SI (sign_extend:SI (reg:HI 10 r10))
                (reg:SI 1 r1)) [0 S1 A8])) 3 {tstqi} (nil)
    (nil))
/tmp/st18.c:73: internal compiler error: in reload_cse_simplify_operands, at
postreload.c:393

It looks like reload trips over its confusion from reloading this insn:
(insn:QI 84 83 85 9 (set (cc0)
        (mem:QI (plus:SI (sign_extend:SI (mem:HI (post_inc:SI (reg/f:SI 12 r12
[orig:58 ivtmp.158 ] [58])) [2 S2 A8]))
                (reg/v/f:SI 16 srp [orig:68 c0 ] [68])) [0 S1 A8])) 3 {tstqi}
(nil)
    (expr_list:REG_INC (reg/f:SI 12 r12 [orig:58 ivtmp.158 ] [58])
        (nil)))
where (reg:SI 16), "srp" is not valid in an address.


-- 
           Summary: [4.1 regression] global-alloc (reload) trips over own
                    confusion for unexpected addressing modes
           Product: gcc
           Version: 4.1.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: middle-end
        AssignedTo: hp at gcc dot gnu dot org
        ReportedBy: hp at gcc dot gnu dot org
  GCC host triplet: x86_64-unknown-linux-gnu
GCC target triplet: cris-axis-elf


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

Reply via email to