diff options
Diffstat (limited to 'gcc/tree-ssa.c')
-rw-r--r-- | gcc/tree-ssa.c | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/gcc/tree-ssa.c b/gcc/tree-ssa.c index dd771ea..6c35fee 100644 --- a/gcc/tree-ssa.c +++ b/gcc/tree-ssa.c @@ -380,17 +380,20 @@ verify_flow_insensitive_alias_info (void) FOR_EACH_REFERENCED_VAR (var, rvi) { - size_t j; - var_ann_t ann; - VEC(tree,gc) *may_aliases; + unsigned int j; + bitmap aliases; tree alias; + bitmap_iterator bi; - ann = var_ann (var); - may_aliases = ann->may_aliases; + if (!MTAG_P (var) || !MTAG_ALIASES (var)) + continue; + + aliases = MTAG_ALIASES (var); - for (j = 0; VEC_iterate (tree, may_aliases, j, alias); j++) + EXECUTE_IF_SET_IN_BITMAP (aliases, 0, j, bi) { - bitmap_set_bit (visited, DECL_UID (alias)); + alias = referenced_var (j); + bitmap_set_bit (visited, j); if (TREE_CODE (alias) != MEMORY_PARTITION_TAG && !may_be_aliased (alias)) |