20030814-6.c

来自「用于进行gcc测试」· C语言 代码 · 共 46 行

C
46
字号
/* { dg-do compile } *//* { dg-options "-O1 -fdump-tree-dom3" } */extern void abort (void);union tree_node;typedef union tree_node *tree;enum tree_code{  LAST_AND_UNUSED_TREE_CODE};extern const char tree_code_type[];struct tree_common{  enum tree_code code:8;};struct tree_type{  double alias_set;};union tree_node{  struct tree_common common;  struct tree_type type;};longfoo (t, set)     tree t;     double set;{  if (tree_code_type[t->common.code] != 't')    abort ();  t->type.alias_set = set;  if (t->common.code == 42)    return 1;  else    return 0;}/* There should be precisely one load of common.code.  If there is   more than one, then the dominator optimizations failed.  *//* ??? Will fail until we properly distinguish member stores.  At   present the write to type.alias_set kills the previous load.  *//* { dg-final { scan-tree-dump-times "common.code" 1 "dom3" { xfail *-*-* } } } *//* { dg-final { cleanup-tree-dump "dom3" } } */

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?