1 /* { dg-do compile } */
2 /* { dg-options "-O -fdump-tree-fre1-details -fdump-tree-dse1-details" } */
4 int foo(unsigned char c
, signed char d
, int e
)
8 __builtin_memset (x
, c
, 256);
10 __builtin_memset (x
, d
, 256);
12 __builtin_memset (x
, e
, 256);
17 /* The loads get replaced with conversions from c or d and e. */
18 /* { dg-final { scan-tree-dump-times "Inserted" 2 "fre1" } } */
19 /* { dg-final { scan-tree-dump-times "Replaced x" 3 "fre1" } } */
20 /* And the memsets removed as dead. */
21 /* { dg-final { scan-tree-dump-times "Deleted dead call" 3 "dse1" } } */