This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[hsa] Use proper accesses to gimple_omp_for
- From: Martin Jambor <mjambor at suse dot cz>
- To: GCC Patches <gcc-patches at gcc dot gnu dot org>
- Date: Tue, 1 Dec 2015 00:19:58 +0100
- Subject: [hsa] Use proper accesses to gimple_omp_for
- Authentication-results: sourceware.org; auth=none
Hi,
when looking at the attempt_target_gridification function I realized I
forgot to to replace some of the early code with proper gimple
statement access function calls. This patch addresses that.
Committed to the branch.
Thanks,
Martin
2015-11-30 Martin Jambor <mjambor@suse.cz>
* omp-low.c (attempt_target_gridification): Use proper access into
iter array of the inner loop.
---
gcc/omp-low.c | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/gcc/omp-low.c b/gcc/omp-low.c
index 5933c60..bdf6539 100644
--- a/gcc/omp-low.c
+++ b/gcc/omp-low.c
@@ -17484,21 +17484,21 @@ attempt_target_gridification (gomp_target *target, gimple_stmt_iterator *gsi,
size_t collapse = gimple_omp_for_collapse (inner_loop);
for (size_t i = 0; i < collapse; i++)
{
- gimple_omp_for_iter iter = inner_loop->iter[i];
- walk_tree (&iter.initial, remap_prebody_decls, &wi, NULL);
- walk_tree (&iter.final, remap_prebody_decls, &wi, NULL);
-
- tree itype, type = TREE_TYPE (iter.index);
+ tree itype, type = TREE_TYPE (gimple_omp_for_index (inner_loop, i));
if (POINTER_TYPE_P (type))
itype = signed_type_for (type);
else
itype = type;
- enum tree_code cond_code = iter.cond;
- tree n1 = iter.initial;
- tree n2 = iter.final;
+ enum tree_code cond_code = gimple_omp_for_cond (inner_loop, i);
+ tree n1 = unshare_expr (gimple_omp_for_initial (inner_loop, i));
+ walk_tree (&n1, remap_prebody_decls, &wi, NULL);
+ tree n2 = unshare_expr (gimple_omp_for_final (inner_loop, i));
+ walk_tree (&n2, remap_prebody_decls, &wi, NULL);
adjust_for_condition (loc, &cond_code, &n2);
- tree step = get_omp_for_step_from_incr (loc, iter.incr);
+ tree step;
+ step = get_omp_for_step_from_incr (loc,
+ gimple_omp_for_incr (inner_loop, i));
n1 = force_gimple_operand_gsi (gsi, fold_convert (type, n1), true,
NULL_TREE, true, GSI_SAME_STMT);
n2 = force_gimple_operand_gsi (gsi, fold_convert (itype, n2), true,
--
2.6.0