111
|
1 /* { dg-do compile } */
|
|
2 /* { dg-options "-O2 -fdump-tree-dom2 -fdelete-null-pointer-checks" } */
|
|
3
|
|
4 extern void exit (int);
|
|
5 extern void *ggc_alloc (__SIZE_TYPE__);
|
|
6 typedef struct dw_attr_struct *dw_attr_ref;
|
|
7 typedef struct dw_attr_struct
|
|
8 {
|
|
9 int dw_attr;
|
|
10 }
|
|
11 dw_attr_node;
|
|
12 void
|
|
13 foo (int attr_kind, unsigned long offset)
|
|
14 {
|
|
15 dw_attr_ref attr = (dw_attr_ref) ggc_alloc (sizeof (dw_attr_node));
|
|
16 attr->dw_attr = attr_kind;
|
|
17 if (attr != ((void *)0))
|
|
18 exit (0);
|
|
19 }
|
|
20
|
|
21 /* There should be no IF conditionals, unless target disables -fdelete-null-pointer-checks */
|
|
22 /* { dg-final { scan-tree-dump-times "if " 0 "dom2" { target { ! keeps_null_pointer_checks } } } } */
|
|
23 /* { dg-final { scan-tree-dump "if " "dom2" { target { keeps_null_pointer_checks } } } } */
|
|
24
|