From e8b1fa6b02869e0c5c22f14cd4623e0752a835cc Mon Sep 17 00:00:00 2001 From: Sven Verdoolaege Date: Fri, 18 May 2012 13:03:19 +0200 Subject: [PATCH] PetScan::extract_non_affine_condition: resolve nested accesses Signed-off-by: Sven Verdoolaege --- scan.cc | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/scan.cc b/scan.cc index 7747874..9ced52b 100644 --- a/scan.cc +++ b/scan.cc @@ -2812,6 +2812,7 @@ struct pet_scop *PetScan::extract_non_affine_condition(Expr *cond, { struct pet_expr *expr, *write; struct pet_stmt *ps; + struct pet_scop *scop; SourceLocation loc = cond->getLocStart(); int line = PP.getSourceManager().getExpansionLineNumber(loc); @@ -2821,9 +2822,13 @@ struct pet_scop *PetScan::extract_non_affine_condition(Expr *cond, write->acc.read = 0; } expr = extract_expr(cond); + expr = resolve_nested(expr); expr = pet_expr_new_binary(ctx, pet_op_assign, write, expr); ps = pet_stmt_from_pet_expr(ctx, line, NULL, n_stmt++, expr); - return pet_scop_from_pet_stmt(ctx, ps); + scop = pet_scop_from_pet_stmt(ctx, ps); + scop = resolve_nested(scop); + + return scop; } /* Add an array with the given extent ("access") to the list -- 2.11.4.GIT