aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Biener <rguenther@suse.de>2024-09-19 12:37:13 +0200
committerRichard Biener <rguenth@gcc.gnu.org>2024-09-19 13:34:24 +0200
commit605d05b9481832bc691685b7ff990ef68f02b1bb (patch)
tree8d1a02d2ba940492d4327672d628032352fdf1d0
parent5e3a4a01785e2d5135528a07bb8116af9c55ddf8 (diff)
downloadgcc-605d05b9481832bc691685b7ff990ef68f02b1bb.zip
gcc-605d05b9481832bc691685b7ff990ef68f02b1bb.tar.gz
gcc-605d05b9481832bc691685b7ff990ef68f02b1bb.tar.bz2
Always dump generated distance vectors
There's special-casing for equal access functions which bypasses printing the distance vectors. The following makes sure we print them always which helps debugging. * tree-data-ref.cc (build_classic_dist_vector): Move distance vector dumping to single caller ... (subscript_dependence_tester): ... here, dumping always when we succeed computing it.
-rw-r--r--gcc/tree-data-ref.cc34
1 files changed, 18 insertions, 16 deletions
diff --git a/gcc/tree-data-ref.cc b/gcc/tree-data-ref.cc
index 26e6d9a..0f173e8 100644
--- a/gcc/tree-data-ref.cc
+++ b/gcc/tree-data-ref.cc
@@ -5547,21 +5547,6 @@ build_classic_dist_vector (struct data_dependence_relation *ddr,
DDR_NB_LOOPS (ddr), 0));
}
- if (dump_file && (dump_flags & TDF_DETAILS))
- {
- unsigned i;
-
- fprintf (dump_file, "(build_classic_dist_vector\n");
- for (i = 0; i < DDR_NUM_DIST_VECTS (ddr); i++)
- {
- fprintf (dump_file, " dist_vector = (");
- print_lambda_vector (dump_file, DDR_DIST_VECT (ddr, i),
- DDR_NB_LOOPS (ddr));
- fprintf (dump_file, " )\n");
- }
- fprintf (dump_file, ")\n");
- }
-
return true;
}
@@ -5673,7 +5658,24 @@ subscript_dependence_tester (struct data_dependence_relation *ddr,
compute_subscript_distance (ddr);
if (build_classic_dist_vector (ddr, loop_nest))
- build_classic_dir_vector (ddr);
+ {
+ if (dump_file && (dump_flags & TDF_DETAILS))
+ {
+ unsigned i;
+
+ fprintf (dump_file, "(build_classic_dist_vector\n");
+ for (i = 0; i < DDR_NUM_DIST_VECTS (ddr); i++)
+ {
+ fprintf (dump_file, " dist_vector = (");
+ print_lambda_vector (dump_file, DDR_DIST_VECT (ddr, i),
+ DDR_NB_LOOPS (ddr));
+ fprintf (dump_file, " )\n");
+ }
+ fprintf (dump_file, ")\n");
+ }
+
+ build_classic_dir_vector (ddr);
+ }
}
/* Returns true when all the access functions of A are affine or