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

Georg-Johann Lay <gjl at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P4
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2013-07-08
                 CC|                            |gjl at gcc dot gnu.org
           Assignee|unassigned at gcc dot gnu.org      |gjl at gcc dot gnu.org
   Target Milestone|---                         |4.8.2
     Ever confirmed|0                           |1

--- Comment #1 from Georg-Johann Lay <gjl at gcc dot gnu.org> ---
Here is a smaller test case:

void g (char*);

void f (void)
{
    char b[128];
    g (b);
}

Compile with 

$ avr-gcc foo.c -c -msp8

foo.c: In function 'f':
foo.c:7:1: error: unrecognizable insn:
 }
 ^
(insn/f 16 15 17 (set (reg:QI 28 r28)
        (plus:QI (reg:QI 28 r28)
            (const_int 128 [0x80]))) foo.c:5 -1
     (expr_list:REG_CFA_ADJUST_CFA (set (reg/f:HI 28 r28)
            (plus:HI (reg/f:HI 28 r28)
                (const_int -128 [0xffffff80])))
        (nil)))
foo.c:7:1: internal compiler error: in insn_default_length, at
config/avr/avr.md:448

foo.c:7:1: internal compiler error: Segmentation fault

Problem is that 128 is not QI, should be -128.


--enable-libstdcxx vs. building libstdc++v3 is a different issue.

Reply via email to