Home | History | Annotate | Download | only in gcc

Lines Matching defs:datarefs

934 /* Free DATAREFS and its auxiliary memory.  */
937 free_data_refs_with_aux (vec<data_reference_p> datarefs)
940 for (unsigned i = 0; datarefs.iterate (i, &dr); ++i)
947 free_data_refs (datarefs);
982 nest. DATAREFS are data references. DDRS are data dependences. */
986 vec<data_reference_p> datarefs,
993 for (unsigned i = 0; datarefs.iterate (i, &dr); ++i)
1367 DATAREFS from inner loop to outer loop. On success, it returns the
1374 vec<data_reference_p> datarefs)
1381 for (i = 0; datarefs.iterate (i, &dr); ++i)
1393 for (i = 0; datarefs.iterate (i, &dr); ++i)
1408 /* Prune access strides for data references in DATAREFS by removing strides
1414 vec<data_reference_p> datarefs)
1421 for (unsigned i = 0; datarefs.iterate (i, &dr); ++i)
1429 /* Dump access strides for all DATAREFS. */
1432 dump_access_strides (vec<data_reference_p> datarefs)
1436 for (unsigned i = 0; datarefs.iterate (i, &dr); ++i)
1454 computes and compares three types information from all DATAREFS:
1466 vec<data_reference_p> datarefs,
1482 for (i = 0; datarefs.iterate (i, &dr); ++i)
1603 tree_loop_interchange::interchange (vec<data_reference_p> datarefs,
1647 if (should_interchange_loops (i_idx, o_idx, datarefs,
1661 update_data_info (i_idx, o_idx, datarefs, ddrs);
1830 should be interchanged by looking into all DATAREFS. */
1834 vec<data_reference_p> datarefs)
1842 if (should_interchange_loops (idx, idx - 1, datarefs, 0, 0,
1849 /* Given loop nest LOOP_NEST and data references DATAREFS, compute data
1856 vec<data_reference_p> datarefs,
1862 for (unsigned i = 0; datarefs.iterate (i, &a); ++i)
1865 for (unsigned j = i + 1; datarefs.iterate (j, &b); ++j)
1899 /* Prune DATAREFS by removing any data reference not inside of LOOP. */
1902 prune_datarefs_not_in_loop (class loop *loop, vec<data_reference_p> datarefs)
1907 for (i = 0, j = 0; datarefs.iterate (i, &dr); ++i)
1910 datarefs[j++] = dr;
1921 datarefs.truncate (j);
1924 /* Find and store data references in DATAREFS for LOOP nest. If there's
1930 prepare_data_references (class loop *loop, vec<data_reference_p> *datarefs)
1976 datarefs->safe_splice (*bb_refs);
1992 nest in LOOP_NEST; record all data references in DATAREFS and record all
2003 vec<data_reference_p> *datarefs, vec<ddr_p> *ddrs)
2029 start_loop = prepare_data_references (start_loop, datarefs);
2032 || datarefs->is_empty ()
2034 || (int) datarefs->length () > MAX_DATAREFS)
2039 start_loop = compute_access_strides (start_loop, innermost, *datarefs);
2044 if (!should_interchange_loop_nest (start_loop, innermost, *datarefs))
2054 prune_datarefs_not_in_loop (start_loop, *datarefs);
2057 && tree_loop_interchange_compute_ddrs (*loop_nest, *datarefs, ddrs))
2065 prune_access_strides_not_in_loop (start_loop, innermost, *datarefs);
2068 dump_access_strides (*datarefs);
2095 vec<data_reference_p> datarefs = vNULL;
2097 if (prepare_perfect_loop_nest (loop, &loop_nest, &datarefs, &ddrs))
2100 changed_p |= loop_interchange.interchange (datarefs, ddrs);
2103 free_data_refs_with_aux (datarefs);