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

Serge Belyshev <belyshev at depni dot sinp.msu.ru> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |belyshev at depni dot
                   |                            |sinp.msu.ru

--- Comment #10 from Serge Belyshev <belyshev at depni dot sinp.msu.ru> 
2011-10-24 10:39:07 UTC ---
The commit r180341 breaks i686 bootstrap for me with verify_ssa failure. Here
is a reduced testcase, fails also on x86_64, compile with -O2:

------------------------------------------------------------------------------
typedef union tree_node *tree;

struct tree_base
{
  int code;
};

struct tree_typed
{
  struct tree_base base;
  tree type;
};

struct tree_common
{
  struct tree_typed typed;
};

struct tree_type_common
{
  tree main_variant;
};

union tree_node
{
  struct tree_base base;
  struct tree_typed typed;
  struct tree_type_common type_common;
};

int std_canonical_va_list_type (tree type) 
{
  if (type->base.code)
    type = type->typed.type;
  else
    if (type->typed.type->base.code)
      type = type->typed.type;

  if (type->type_common.main_variant)
    return 1;

  return 0;
}
------------------------------------------------------------------------------
bug.c: In function 'std_canonical_va_list_type':
bug.c:31:5: error: definition in block 3 does not dominate use in block 4
for SSA_NAME: .MEM_18 in statement:
.MEM_18 = PHI <.MEM_12(D)(2), .MEM_18(4)>
PHI argument
.MEM_18
for PHI node
.MEM_18 = PHI <.MEM_12(D)(2), .MEM_18(4)>
bug.c:31:5: internal compiler error: verify_ssa failed

Reply via email to