/* { dg-options "-O2 -fdump-tree-dse-details -fno-tree-fre" } */ | |
struct S { int i; char n[128]; int j; }; | |
void f (char*); | |
void g (struct S *p) | |
{ | |
char a[sizeof p->n + 1]; | |
__builtin_memset (a, 0, sizeof a); // dead store, can be eliminated | |
__builtin_strncpy (a, p->n, sizeof a - 1); | |
a[sizeof a - 1] = '\0'; | |
f (a); | |
} | |
/* { dg-final { scan-tree-dump-times "Deleted dead call" 1 "dse1" } } */ |