/* If tag is a variable (and NOT_A_TAG) than a new symbol memory
tag must be created with tag added to its may alias list. */
if (!MTAG_P (tag))
- new_type_alias (vect_ptr, tag);
+ new_type_alias (vect_ptr, tag, DR_REF (dr));
else
var_ann (vect_ptr)->symbol_mem_tag = tag;
NULL_TREE, loop, &incr_bsi, insert_after,
&indx_before_incr, &indx_after_incr);
incr = bsi_stmt (incr_bsi);
- set_stmt_info ((tree_ann_t)stmt_ann (incr),
+ set_stmt_info (stmt_ann (incr),
new_stmt_vec_info (incr, loop_vinfo));
/* Copy the points-to information if it exists. */
then_clause = TREE_OPERAND (op, 1);
else_clause = TREE_OPERAND (op, 2);
+ if (!vect_is_simple_cond (cond_expr, loop_vinfo))
+ return false;
+
/* We do not handle two different vector types for the condition
and the values. */
if (TREE_TYPE (TREE_OPERAND (cond_expr, 0)) != TREE_TYPE (vectype))
return false;
- if (!vect_is_simple_cond (cond_expr, loop_vinfo))
- return false;
-
if (TREE_CODE (then_clause) == SSA_NAME)
{
tree then_def_stmt = SSA_NAME_DEF_STMT (then_clause);
bsi_insert_before (&cond_exp_bsi, cond_expr_stmt_list, BSI_SAME_STMT);
}
- /* CHECKME: we wouldn't need this if we calles update_ssa once
+ /* CHECKME: we wouldn't need this if we called update_ssa once
for all loops. */
bitmap_zero (vect_vnames_to_rename);
/* Free the attached stmt_vec_info and remove the stmt. */
stmt_ann_t ann = stmt_ann (stmt);
free (stmt_info);
- set_stmt_info ((tree_ann_t)ann, NULL);
+ set_stmt_info (ann, NULL);
bsi_remove (&si, true);
continue;
}