Commit 64fb0d3a by Richard Guenther Committed by Richard Biener

re PR middle-end/49893 (-O3 generates wrong code for volatile)

2011-07-29  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/49893
	* tree-predcom.c (suitable_reference_p): Volatile references
	are not suitable.

From-SVN: r176921
parent 6130646b
2011-07-29 Richard Guenther <rguenther@suse.de>
PR tree-optimization/49893
* tree-predcom.c (suitable_reference_p): Volatile references
are not suitable.
2011-07-29 Georg-Johann Lay <avr@gjlay.de> 2011-07-29 Georg-Johann Lay <avr@gjlay.de>
PR target/49313 PR target/49313
......
...@@ -598,6 +598,7 @@ suitable_reference_p (struct data_reference *a, enum ref_step_type *ref_step) ...@@ -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); tree ref = DR_REF (a), step = DR_STEP (a);
if (!step if (!step
|| TREE_THIS_VOLATILE (ref)
|| !is_gimple_reg_type (TREE_TYPE (ref)) || !is_gimple_reg_type (TREE_TYPE (ref))
|| tree_could_throw_p (ref)) || tree_could_throw_p (ref))
return false; return false;
......
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