[Bug middle-end/56098] [4.6/4.7 Regression] conditional write through volatile pointer produces unintended read
jakub at gcc dot gnu.org
gcc-bugzilla@gcc.gnu.org
Fri Feb 1 14:17:00 GMT 2013
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56098
--- Comment #8 from Jakub Jelinek <jakub at gcc dot gnu.org> 2013-02-01 14:16:28 UTC ---
Author: jakub
Date: Fri Feb 1 14:16:20 2013
New Revision: 195663
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=195663
Log:
Backported from mainline
2013-01-25 Jakub Jelinek <jakub@redhat.com>
PR tree-optimization/56098
* tree-ssa-phiopt.c (nt_init_block): Don't call add_or_mark_expr
for stmts with volatile ops.
(cond_store_replacement): Don't optimize if assign has volatile ops.
(cond_if_else_store_replacement_1): Don't optimize if either
then_assign or else_assign have volatile ops.
* gcc.dg/pr56098-1.c: New test.
Added:
branches/gcc-4_7-branch/gcc/testsuite/gcc.dg/pr56098-1.c
Modified:
branches/gcc-4_7-branch/gcc/ChangeLog
branches/gcc-4_7-branch/gcc/testsuite/ChangeLog
branches/gcc-4_7-branch/gcc/tree-ssa-phiopt.c
More information about the Gcc-bugs
mailing list