]> git.ipfire.org Git - thirdparty/gcc.git/commit - gcc/tree-inline.c
re PR middle-end/49671 (volatile goes missing after inlining)
authorAndrew Pinski <apinski@cavium.com>
Tue, 26 Jul 2011 05:28:45 +0000 (05:28 +0000)
committerAndrew Pinski <pinskia@gcc.gnu.org>
Tue, 26 Jul 2011 05:28:45 +0000 (22:28 -0700)
commit0de204de65593f3a5cfeb4a682e0566657b840f6
tree5df32a8770e8baaad425277737ea84c3ea2e263b
parent9bc13c238df4ed18f702e70f976408dee0c7df6b
re PR middle-end/49671 (volatile goes missing after inlining)

2011-07-25  Andrew Pinski  <apinski@cavium.com>

PR tree-opt/49671
* tree-inline.c (remap_gimple_op_r): Copy TREE_THIS_VOLATILE and
TREE_THIS_NOTRAP into the inner most MEM_REF.
Always copy TREE_THIS_VOLATILE.
* tree-sra.c (ptr_parm_has_direct_uses): Check that the lhs, rhs and
arguments are not volatile references.

2011-07-25  Andrew Pinski  <apinski@cavium.com>

PR tree-opt/49671
* gcc.dg/tree-ssa/pr49671-1.c: New testcase.
* gcc.dg/tree-ssa/pr49671-2.c: New testcase.

From-SVN: r176782
gcc/ChangeLog
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/tree-ssa/pr49671-1.c [new file with mode: 0644]
gcc/testsuite/gcc.dg/tree-ssa/pr49671-2.c [new file with mode: 0644]
gcc/tree-inline.c
gcc/tree-sra.c