Commit 0b1d52f7 by Alexandre Oliva Committed by Alexandre Oliva

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
parent 5bbb9680
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> 2004-06-07 Roger Sayle <roger@eyesopen.com>
* expmed.c (add_cost, neg_cost, sdiv_pow2_cheap, smod_pow2_cheap): * 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, ...@@ -665,7 +665,19 @@ copy_if_shared_r (tree *tp, int *walk_subtrees ATTRIBUTE_UNUSED,
/* Otherwise, mark the tree as visited and keep looking. */ /* Otherwise, mark the tree as visited and keep looking. */
else else
TREE_VISITED (t) = 1; {
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; return NULL_TREE;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment