summaryrefslogtreecommitdiff
path: root/gcc/tree-predcom.c
diff options
context:
space:
mode:
authorrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2011-07-29 09:54:23 +0000
committerrguenth <rguenth@138bc75d-0d04-0410-961f-82ee72b054a4>2011-07-29 09:54:23 +0000
commit450c0971a72bdfdd62dad3ae6c942536ac122825 (patch)
tree41d80cf5eccf0548e09244ad15e7faa13f77bb92 /gcc/tree-predcom.c
parentfe02678bde584d101040a8025994dd557d985681 (diff)
downloadgcc-450c0971a72bdfdd62dad3ae6c942536ac122825.tar.gz
2011-07-29 Richard Guenther <rguenther@suse.de>
PR tree-optimization/49893 * tree-predcom.c (suitable_reference_p): Volatile references are not suitable. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@176921 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/tree-predcom.c')
-rw-r--r--gcc/tree-predcom.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/gcc/tree-predcom.c b/gcc/tree-predcom.c
index 94b0512bdaf..ac2314778a8 100644
--- a/gcc/tree-predcom.c
+++ b/gcc/tree-predcom.c
@@ -598,6 +598,7 @@ suitable_reference_p (struct data_reference *a, enum ref_step_type *ref_step)
tree ref = DR_REF (a), step = DR_STEP (a);
if (!step
+ || TREE_THIS_VOLATILE (ref)
|| !is_gimple_reg_type (TREE_TYPE (ref))
|| tree_could_throw_p (ref))
return false;