[Bug middle-end/36172] [4.4 Regression] ice for legal code with -O3

pinskia at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Wed May 7 21:11:00 GMT 2008



------- Comment #7 from pinskia at gcc dot gnu dot org  2008-05-07 21:10 -------
Better reduced testcase:
typedef unsigned long int uintptr_t;
typedef struct _FcCharLeaf { } FcCharLeaf;
struct _FcCharLeafEnt {
  unsigned int hash;
  int leaf;
};
struct _FcCharSetFreezer
{
  int orig_hash_table[67];
};
struct _FcCharLeafEnt *ent;
int a, f(FcCharLeaf * );
void FcCharSetFreeze (struct _FcCharSetFreezer *freezer, int *fcs)
{
  int i;
  for (i = 0;  i < *fcs;  i++)
  {
    FcCharLeaf *leaf = (FcCharLeaf *)fcs;
    unsigned int hash = f (leaf);
    if (ent->hash == hash)
      a = ent->leaf;
    if (!a)
      return;
  }
  freezer->orig_hash_table[((uintptr_t) fcs) & 67] = 0;
}


PRE is creating the mismatched PHI nodes.


-- 

pinskia at gcc dot gnu dot org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|0                           |1
   Last reconfirmed|0000-00-00 00:00:00         |2008-05-07 21:10:58
               date|                            |


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



More information about the Gcc-bugs mailing list