diff options
author | mmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-06-24 03:38:05 +0000 |
---|---|---|
committer | mmitchel <mmitchel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-06-24 03:38:05 +0000 |
commit | 7fecfde9ce9b254771959d4d8979e334cbc0bc01 (patch) | |
tree | 5f35b0ac794937a9cfc60ea88d3484d5cc3b6fb2 /gcc/tree-ssa-operands.c | |
parent | 7bd2eed1232f66b4b18a201a98eac06df9ee928f (diff) | |
download | gcc-7fecfde9ce9b254771959d4d8979e334cbc0bc01.tar.gz |
PR 22000
* tree-ssa-operands.c (get_expr_operands): Check the volatility of
the FIELD_DECL and set s_ann->has_volatile_ops accordingly.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101289 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-ssa-operands.c')
-rw-r--r-- | gcc/tree-ssa-operands.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/gcc/tree-ssa-operands.c b/gcc/tree-ssa-operands.c index 12bfc780bd3..2e263cfa1b3 100644 --- a/gcc/tree-ssa-operands.c +++ b/gcc/tree-ssa-operands.c @@ -1346,7 +1346,11 @@ get_expr_operands (tree stmt, tree *expr_p, int flags) flags & ~opf_kill_def); if (code == COMPONENT_REF) - get_expr_operands (stmt, &TREE_OPERAND (expr, 2), opf_none); + { + if (TREE_THIS_VOLATILE (TREE_OPERAND (expr, 1))) + s_ann->has_volatile_ops = true; + get_expr_operands (stmt, &TREE_OPERAND (expr, 2), opf_none); + } return; } case WITH_SIZE_EXPR: |