aboutsummaryrefslogtreecommitdiff
path: root/gcc/tree-data-ref.c
diff options
context:
space:
mode:
authorSebastian Pop <sebastian.pop@amd.com>2008-01-16 13:16:50 +0000
committerSebastian Pop <spop@gcc.gnu.org>2008-01-16 13:16:50 +0000
commit6935bae779717b8563011478a79ea5832c6fd135 (patch)
treee79f132a3b1a7062e42de9c72a8c86143dea89fe /gcc/tree-data-ref.c
parenta4b6974e6b2a85f7fe9e62e3bce8b6587eaf2a2e (diff)
downloadgcc-6935bae779717b8563011478a79ea5832c6fd135.zip
gcc-6935bae779717b8563011478a79ea5832c6fd135.tar.gz
gcc-6935bae779717b8563011478a79ea5832c6fd135.tar.bz2
tree-data-ref.c (subscript_dependence_tester_1): Call free_conflict_function.
2008-01-16 Sebastian Pop <sebastian.pop@amd.com> * tree-data-ref.c (subscript_dependence_tester_1): Call free_conflict_function. (compute_self_dependence): Same. From-SVN: r131571
Diffstat (limited to 'gcc/tree-data-ref.c')
-rw-r--r--gcc/tree-data-ref.c14
1 files changed, 12 insertions, 2 deletions
diff --git a/gcc/tree-data-ref.c b/gcc/tree-data-ref.c
index e4ac89a..1fe7c0a 100644
--- a/gcc/tree-data-ref.c
+++ b/gcc/tree-data-ref.c
@@ -3205,6 +3205,11 @@ subscript_dependence_tester_1 (struct data_dependence_relation *ddr,
else
{
+ if (SUB_CONFLICTS_IN_A (subscript))
+ free_conflict_function (SUB_CONFLICTS_IN_A (subscript));
+ if (SUB_CONFLICTS_IN_B (subscript))
+ free_conflict_function (SUB_CONFLICTS_IN_B (subscript));
+
SUB_CONFLICTS_IN_A (subscript) = overlaps_a;
SUB_CONFLICTS_IN_B (subscript) = overlaps_b;
SUB_LAST_CONFLICT (subscript) = last_conflicts;
@@ -3896,11 +3901,16 @@ compute_self_dependence (struct data_dependence_relation *ddr)
for (i = 0; VEC_iterate (subscript_p, DDR_SUBSCRIPTS (ddr), i, subscript);
i++)
{
+ if (SUB_CONFLICTS_IN_A (subscript))
+ free_conflict_function (SUB_CONFLICTS_IN_A (subscript));
+ if (SUB_CONFLICTS_IN_B (subscript))
+ free_conflict_function (SUB_CONFLICTS_IN_B (subscript));
+
/* The accessed index overlaps for each iteration. */
SUB_CONFLICTS_IN_A (subscript)
- = conflict_fn (1, affine_fn_cst (integer_zero_node));
+ = conflict_fn (1, affine_fn_cst (integer_zero_node));
SUB_CONFLICTS_IN_B (subscript)
- = conflict_fn (1, affine_fn_cst (integer_zero_node));
+ = conflict_fn (1, affine_fn_cst (integer_zero_node));
SUB_LAST_CONFLICT (subscript) = chrec_dont_know;
}