Many supported cores use the AUTOPREFETCHER_WEAK setting which tries to order...
authorWilco Dijkstra <wdijkstr@arm.com>
Thu, 4 May 2017 17:52:03 +0000 (17:52 +0000)
committerWilco Dijkstra <wilco@gcc.gnu.org>
Thu, 4 May 2017 17:52:03 +0000 (17:52 +0000)
Many supported cores use the AUTOPREFETCHER_WEAK setting which tries
to order loads and stores to improve streaming performance.  Since significant
gains were reported in http://patchwork.ozlabs.org/patch/534469/ it seems
like a good idea to enable this setting too for -mcpu=generic.  Since the
weak model only keeps the order if it doesn't make the schedule worse, it
should not impact performance adversely on cores that don't show a gain.

    gcc/
        * config/aarch64/aarch64.c (generic_tunings): Update prefetch model.

From-SVN: r247610

gcc/ChangeLog
gcc/config/aarch64/aarch64.c

index 88be3a82294cc03c2b5c62e3e79440a5a36250e5..374a338c8f75b15a0b049cdf8b6a4abcee1e421a 100644 (file)
@@ -1,3 +1,7 @@
+2017-05-04  Wilco Dijkstra  <wdijkstr@arm.com>
+
+       * config/aarch64/aarch64.c (generic_tunings): Update prefetch model.
+
 2017-05-04  Wilco Dijkstra  <wdijkstr@arm.com>
 
        * config/aarch64/aarch64.c (cortexa35_tunings): Set jump alignment to 4.
index 622735291dcbc891284161084024862e7cfdd561..71f9819745fd29d4a804fde8371416f78a4a9d75 100644 (file)
@@ -547,7 +547,7 @@ static const struct tune_params generic_tunings =
   2,   /* min_div_recip_mul_df.  */
   0,   /* max_case_values.  */
   0,   /* cache_line_size.  */
-  tune_params::AUTOPREFETCHER_OFF,     /* autoprefetcher_model.  */
+  tune_params::AUTOPREFETCHER_WEAK,    /* autoprefetcher_model.  */
   (AARCH64_EXTRA_TUNE_NONE)    /* tune_flags.  */
 };