Home | History | Annotate | Download | only in gcc

Lines Matching defs:alias_pair

1717 /* Dump information about ALIAS_PAIR, indenting each line by INDENT.  */
1720 dump_alias_pair (dr_with_seg_len_pair_t *alias_pair, const char *indent)
1723 DR_REF (alias_pair->first.dr),
1724 DR_REF (alias_pair->second.dr));
1727 alias_pair->first.seg_len);
1728 if (!operand_equal_p (alias_pair->first.seg_len,
1729 alias_pair->second.seg_len, 0))
1730 dump_printf (MSG_NOTE, " vs. %T", alias_pair->second.seg_len);
1733 dump_dec (MSG_NOTE, alias_pair->first.access_size);
1734 if (maybe_ne (alias_pair->first.access_size, alias_pair->second.access_size))
1737 dump_dec (MSG_NOTE, alias_pair->second.access_size);
1741 alias_pair->first.align);
1742 if (alias_pair->first.align != alias_pair->second.align)
1743 dump_printf (MSG_NOTE, " vs. %d", alias_pair->second.align);
1746 if (alias_pair->flags & DR_ALIAS_RAW)
1748 if (alias_pair->flags & DR_ALIAS_WAR)
1750 if (alias_pair->flags & DR_ALIAS_WAW)
1752 if (alias_pair->flags & DR_ALIAS_ARBITRARY)
1754 if (alias_pair->flags & DR_ALIAS_SWAPPED)
1756 if (alias_pair->flags & DR_ALIAS_UNSWAPPED)
1758 if (alias_pair->flags & DR_ALIAS_MIXED_STEPS)
1760 if (alias_pair->flags == 0)
1806 dr_with_seg_len_pair_t *alias_pair;
1807 FOR_EACH_VEC_ELT (*alias_pairs, i, alias_pair)
1809 data_reference_p dr_a = alias_pair->first.dr;
1810 data_reference_p dr_b = alias_pair->second.dr;
1819 std::swap (alias_pair->first, alias_pair->second);
1820 alias_pair->flags |= DR_ALIAS_SWAPPED;
1823 alias_pair->flags |= DR_ALIAS_UNSWAPPED;
1979 FOR_EACH_VEC_ELT (*alias_pairs, i, alias_pair)
1982 unsigned int swapped = (alias_pair->flags & swap_mask);
1984 std::swap (alias_pair->first, alias_pair->second);
1986 alias_pair->flags |= DR_ALIAS_ARBITRARY;
1987 alias_pair->flags &= ~swap_mask;
1989 dump_alias_pair (alias_pair, " ");
2000 const dr_with_seg_len_pair_t &alias_pair)
2002 const dr_with_seg_len& dr_a = alias_pair.first;
2003 const dr_with_seg_len& dr_b = alias_pair.second;
2010 (c) the DR_STEPs describe all access pairs covered by ALIAS_PAIR. */
2011 if (alias_pair.flags & ~(DR_ALIAS_RAW | DR_ALIAS_WAR | DR_ALIAS_WAW))
2030 internal_fn ifn = (alias_pair.flags & DR_ALIAS_RAW
2067 /* Try to generate a runtime condition that is true if ALIAS_PAIR is
2072 This can only be done if the two data references in ALIAS_PAIR access
2099 const dr_with_seg_len_pair_t &alias_pair)
2101 const dr_with_seg_len &dr_a = alias_pair.first;
2102 const dr_with_seg_len &dr_b = alias_pair.second;
2103 if ((alias_pair.flags & DR_ALIAS_MIXED_STEPS)
2153 bool waw_or_war_p = (alias_pair.flags & ~(DR_ALIAS_WAR | DR_ALIAS_WAW)) == 0;
2348 const dr_with_seg_len_pair_t &alias_pair)
2350 const dr_with_seg_len& dr_a = alias_pair.first;
2351 const dr_with_seg_len& dr_b = alias_pair.second;
2358 (c) the DR_STEPs describe all access pairs covered by ALIAS_PAIR. */
2359 if (alias_pair.flags & ~(DR_ALIAS_WAR | DR_ALIAS_WAW))
2584 ALIAS_PAIR is free of aliases,
2592 const dr_with_seg_len_pair_t &alias_pair)
2594 const dr_with_seg_len& dr_a = alias_pair.first;
2595 const dr_with_seg_len& dr_b = alias_pair.second;
2597 if (create_intersect_range_checks_index (loop, cond_expr, alias_pair))
2600 if (create_ifn_alias_checks (cond_expr, alias_pair))
2603 if (create_waw_or_war_checks (cond_expr, alias_pair))
2668 for (const dr_with_seg_len_pair_t &alias_pair : alias_pairs)
2670 gcc_assert (alias_pair.flags);
2674 DR_REF (alias_pair.first.dr),
2675 DR_REF (alias_pair.second.dr));
2678 create_intersect_range_checks (loop, &part_cond_expr, alias_pair);