/* { dg-do compile } */ | |
/* { dg-options "-O -fdump-tree-dse1-details" } */ | |
struct X { int x; }; | |
struct X x; | |
extern struct X foo (void); | |
void bar() | |
{ | |
x = foo(); | |
x = (struct X){}; | |
} | |
extern struct X __attribute__((const)) foo2 (int); | |
void bar2() | |
{ | |
x = foo2 (1); | |
x = foo2 (2); | |
} | |
/* { dg-final { scan-tree-dump-times "Deleted dead store in call LHS: x = foo " 1 "dse1" } } */ | |
/* { dg-final { scan-tree-dump-times "Deleted dead store: x = foo2 " 1 "dse1" } } */ |