1 /* { dg-do compile } */
2 /* { dg-options "-O2 -fdump-tree-dse1-details -fno-short-enums" } */
4 enum constraint_expr_type
6 SCALAR
, DEREF
, ADDRESSOF
8 typedef struct constraint_expr
10 enum constraint_expr_type type
;
14 typedef struct constraint
16 struct constraint_expr lhs
;
17 struct constraint_expr rhs
;
20 constraint_expr_equal (struct constraint_expr x
, struct constraint_expr y
)
22 return x
.type
== y
.type
&& x
.var
== y
.var
&& x
.offset
== y
.offset
;
26 constraint_equal (struct constraint a
, struct constraint b
)
28 return constraint_expr_equal (a
.lhs
, b
.lhs
)
29 && constraint_expr_equal (a
.rhs
, b
.rhs
);
32 /* { dg-final { scan-tree-dump-times "Deleted dead store: x = " 1 "dse1" } } */
33 /* { dg-final { scan-tree-dump-times "Deleted dead store: y = " 1 "dse1" } } */