[Bug target/20928] ICE: unrecognizable insns

steven at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Sun Apr 10 16:02:00 GMT 2005


------- Additional Comments From steven at gcc dot gnu dot org  2005-04-10 16:01 -------
Also happens with mainline. 
 
extern struct symbol_tab_ 
{ 
  void *S_nil; 
} symbol_tab_data; 
 
typedef struct 
{ 
  unsigned int length; 
  void *data[0]; 
} s; 
 
void * 
allocate_vector (unsigned int len) 
{ 
  unsigned int need; 
  s *ptr; 
  void *obj; 
  ptr->length = len; 
  void **p = &ptr->data[0]; 
  do { 
    *p++ = ((((unsigned char *) ((&symbol_tab_data.S_nil)) + 
              ((unsigned long int) (((1L << (2)))) << 48)))); 
  } while (!(--len == 0)); 
  return obj; 
} 
 
t.c: In function 'allocate_vector': 
t.c:25: error: unrecognizable insn: 
(insn 56 55 51 0 (set (reg/f:DI 70) 
        (plus:DI (reg:DI 73) 
            (const_int 1125899906842624 [0x4000000000000]))) -1 
(insn_list:REG_DEP_TRUE 55 (nil)) 
    (expr_list:REG_DEAD (reg:DI 73) 
        (expr_list:REG_EQUAL (const:DI (plus:DI (symbol_ref:DI 
("symbol_tab_data") [flags 0x40] <var_decl 0x2a95a36270 symbol_tab_data>) 
                    (const_int 1125899906842624 [0x4000000000000]))) 
            (nil)))) 
t.c:25: internal compiler error: in extract_insn, at recog.c:2082 
 

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
   Last reconfirmed|0000-00-00 00:00:00         |2005-04-10 16:01:50
               date|                            |


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



More information about the Gcc-bugs mailing list