re PR tree-optimization/54634 (miscompilation with -O3 -ftree-loop-distribution)

2012-09-20  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/54634
	* tree-data-ref.c (get_references_in_stmt): For now give
	up for pure functions.

From-SVN: r191567
This commit is contained in:
Richard Guenther 2012-09-20 14:46:32 +00:00 committed by Richard Biener
parent c0758df921
commit f2ea3c151c
2 changed files with 9 additions and 3 deletions

View File

@ -1,3 +1,9 @@
2012-09-20 Richard Guenther <rguenther@suse.de>
PR tree-optimization/54634
* tree-data-ref.c (get_references_in_stmt): For now give
up for pure functions.
2012-09-20 Chen Wei-Ren <chenwj@iis.sinica.edu.tw>
doc/lto.texi: Correct typo.

View File

@ -4307,10 +4307,10 @@ get_references_in_stmt (gimple stmt, VEC (data_ref_loc, heap) **references)
*references = NULL;
/* ASM_EXPR and CALL_EXPR may embed arbitrary side effects.
Calls have side-effects, except those to const or pure
functions. */
As we cannot model data-references to not spelled out
accesses give up if they may occur. */
if ((stmt_code == GIMPLE_CALL
&& !(gimple_call_flags (stmt) & (ECF_CONST | ECF_PURE)))
&& !(gimple_call_flags (stmt) & ECF_CONST))
|| (stmt_code == GIMPLE_ASM
&& (gimple_asm_volatile_p (stmt) || gimple_vuse (stmt))))
clobbers_memory = true;