OpenCores
URL https://opencores.org/ocsvn/openrisc/openrisc/trunk

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [gnu-stable/] [gcc-4.5.1/] [gcc/] [testsuite/] [gcc.dg/] [tree-ssa/] [20030703-2.c] - Diff between revs 816 and 826

Only display areas with differences | Details | Blame | View Log

Rev 816 Rev 826
/* { dg-do compile } */
/* { dg-do compile } */
/* { dg-options "-O1 -fdump-tree-dom2" } */
/* { dg-options "-O1 -fdump-tree-dom2" } */
 
 
extern void abort (void);
extern void abort (void);
 
 
union tree_node;
union tree_node;
typedef union tree_node *tree;
typedef union tree_node *tree;
extern const char tree_code_type[];
extern const char tree_code_type[];
 
 
union tree_node
union tree_node
{
{
  int code;
  int code;
  long pointer_alias_set;
  long pointer_alias_set;
};
};
 
 
long
long
get_alias_set (t)
get_alias_set (t)
     tree t;
     tree t;
{
{
  if (tree_code_type[t->code])
  if (tree_code_type[t->code])
    abort ();
    abort ();
  if (t->pointer_alias_set)
  if (t->pointer_alias_set)
    {
    {
      tree __t = t;
      tree __t = t;
      if (tree_code_type[__t->code])
      if (tree_code_type[__t->code])
        abort ();
        abort ();
    }
    }
}
}
 
 
/* There should be precisely one load of {t,__t}->code.  If there is
/* There should be precisely one load of {t,__t}->code.  If there is
   more than one, then the dominator optimizations failed.  */
   more than one, then the dominator optimizations failed.  */
/* { dg-final { scan-tree-dump-times "->code" 1 "dom2"} } */
/* { dg-final { scan-tree-dump-times "->code" 1 "dom2"} } */
 
 
/* There should be precisely one load of tree_code_type.  If there is
/* There should be precisely one load of tree_code_type.  If there is
   more than one, then the dominator optimizations failed.  */
   more than one, then the dominator optimizations failed.  */
/* { dg-final { scan-tree-dump-times "tree_code_type" 1 "dom2"} } */
/* { dg-final { scan-tree-dump-times "tree_code_type" 1 "dom2"} } */
 
 
/* There should be one IF conditional.  If 'tree_code_type[t->code]' is
/* There should be one IF conditional.  If 'tree_code_type[t->code]' is
   zero, then the third if() conditional is unnecessary.  That should cause
   zero, then the third if() conditional is unnecessary.  That should cause
   the call to abort() to be removed, which in turn causes the whole second
   the call to abort() to be removed, which in turn causes the whole second
   if() to disappear.  */
   if() to disappear.  */
/* { dg-final { scan-tree-dump-times "if " 1 "dom2"} } */
/* { dg-final { scan-tree-dump-times "if " 1 "dom2"} } */
 
 
/* { dg-final { cleanup-tree-dump "dom2" } } */
/* { dg-final { cleanup-tree-dump "dom2" } } */
 
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.