1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-dom1-details" } */
3 extern void abort (void) __attribute__ ((__noreturn__
));
5 typedef union tree_node
*tree
;
12 extern unsigned char tree_contains_struct
[MAX_TREE_CODES
][64];
15 enum tree_code code
:16;
17 enum tree_node_structure_enum
27 struct tree_base base
;
28 struct tree_ssa_name ssa_name
;
31 expand_one_var (tree var
, unsigned char toplevel
, unsigned char really_expand
)
34 var
= var
->ssa_name
.var
;
35 if (((enum tree_code
) (origvar
)->base
.code
) == SSA_NAME
36 && !((var
->base
.code
!= VAR_DECL
)))
38 if ((var
->base
.code
) != VAR_DECL
&& ((origvar
)->base
.code
) != SSA_NAME
)
40 else if (tree_contains_struct
[(var
->base
.code
)][(TS_DECL_COMMON
)] != 1)
43 /* We should thread the jump, through an intermediate block. */
44 /* { dg-final { scan-tree-dump-times "Threaded" 1 "dom1"} } */
45 /* { dg-final { scan-tree-dump-times "one or more intermediate" 1 "dom1"} } */
46 /* { dg-final { cleanup-tree-dump "dom1" } } */