Commit eb09cdcb by Richard Biener Committed by Richard Biener

re PR tree-optimization/71060 (Compiler reports "loop vectorized" but actually it was not)

2016-05-12  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/71060
	* tree-data-ref.c (initialize_data_dependence_relation): Do not
	require exact match of DR_BASE_OBJECT but only matching address and
	type.

From-SVN: r236159
parent 44ab146a
2016-05-12 Richard Biener <rguenther@suse.de>
PR tree-optimization/71060
* tree-data-ref.c (initialize_data_dependence_relation): Do not
require exact match of DR_BASE_OBJECT but only matching address and
type.
2016-05-12 Richard Biener <rguenther@suse.de>
PR tree-optimization/70986
* cfganal.c: Include cfgloop.h.
(dfs_find_deadend): Prefer to take edges exiting loops.
......
......@@ -1538,8 +1538,13 @@ initialize_data_dependence_relation (struct data_reference *a,
}
/* If the references do not access the same object, we do not know
whether they alias or not. */
if (!operand_equal_p (DR_BASE_OBJECT (a), DR_BASE_OBJECT (b), 0))
whether they alias or not. We do not care about TBAA or alignment
info so we can use OEP_ADDRESS_OF to avoid false negatives.
But the accesses have to use compatible types as otherwise the
built indices would not match. */
if (!operand_equal_p (DR_BASE_OBJECT (a), DR_BASE_OBJECT (b), OEP_ADDRESS_OF)
|| !types_compatible_p (TREE_TYPE (DR_BASE_OBJECT (a)),
TREE_TYPE (DR_BASE_OBJECT (b))))
{
DDR_ARE_DEPENDENT (res) = chrec_dont_know;
return res;
......
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