URL
https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk
Subversion Repositories openrisc_me
[/] [openrisc/] [trunk/] [gnu-src/] [gcc-4.5.1/] [gcc/] [testsuite/] [gcc.dg/] [volatile2.c] - Rev 298
Compare with Previous | Blame | View Log
/* { dg-do compile } */ /* { dg-options "-O2 -fdump-tree-gimple -fdump-tree-optimized" } */ struct GTeth_desc { unsigned ed_cmdsts; }; struct GTeth_softc { struct GTeth_desc txq_desc[32]; }; void foo(struct GTeth_softc *sc) { /* Verify that we retain the cast to (volatile struct GTeth_desc *) after gimplification and that we keep the volatileness on the store until after optimization. */ volatile struct GTeth_desc *p = &sc->txq_desc[0]; p->ed_cmdsts = 0; } /* { dg-final { scan-tree-dump "\\(volatile struct GTeth_desc \\*\\) D" "gimple" } } */ /* { dg-final { scan-tree-dump "{v}" "optimized" } } */ /* { dg-final { cleanup-tree-dump "gimple" } } */ /* { dg-final { cleanup-tree-dump "optimized" } } */