mirror of
https://gcc.gnu.org/git/gcc.git
synced 2025-01-18 02:14:31 +08:00
gimplify.c (copy_if_shared_r): Revert: 2004-05-21 Richard Henderson <rth@redhat.com>
* gimplify.c (copy_if_shared_r): Revert: 2004-05-21 Richard Henderson <rth@redhat.com> * gimplify.c [...] Don't mark VA_ARG_EXPRs volatile here. From-SVN: r82745
This commit is contained in:
parent
5bbb968037
commit
0b1d52f745
@ -1,3 +1,9 @@
|
||||
2004-06-08 Alexandre Oliva <aoliva@redhat.com>
|
||||
|
||||
* gimplify.c (copy_if_shared_r): Revert:
|
||||
2004-05-21 Richard Henderson <rth@redhat.com>
|
||||
* gimplify.c [...] Don't mark VA_ARG_EXPRs volatile here.
|
||||
|
||||
2004-06-07 Roger Sayle <roger@eyesopen.com>
|
||||
|
||||
* expmed.c (add_cost, neg_cost, sdiv_pow2_cheap, smod_pow2_cheap):
|
||||
|
@ -665,7 +665,19 @@ copy_if_shared_r (tree *tp, int *walk_subtrees ATTRIBUTE_UNUSED,
|
||||
|
||||
/* Otherwise, mark the tree as visited and keep looking. */
|
||||
else
|
||||
{
|
||||
TREE_VISITED (t) = 1;
|
||||
if (TREE_CODE (*tp) == VA_ARG_EXPR)
|
||||
{
|
||||
/* Mark any _DECL inside the operand as volatile to avoid
|
||||
the optimizers messing around with it. We have to do this
|
||||
early, otherwise we might mark a variable as volatile
|
||||
after we gimplify other statements that use the variable
|
||||
assuming it's not volatile. */
|
||||
walk_tree (&TREE_OPERAND (*tp, 0), mark_decls_volatile_r,
|
||||
NULL, NULL);
|
||||
}
|
||||
}
|
||||
|
||||
return NULL_TREE;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user