This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[patch, PR44297] prefetch improvements to fix 465.tonto from non-constant step prefetching
- From: "Fang, Changpeng" <Changpeng dot Fang at amd dot com>
- To: Zdenek Dvorak <rakdver at kam dot mff dot cuni dot cz>
- Cc: "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, "sebpop at gmail dot com" <sebpop at gmail dot com>
- Date: Mon, 7 Jun 2010 17:26:58 -0500
- Subject: [patch, PR44297] prefetch improvements to fix 465.tonto from non-constant step prefetching
Hi,
Attached is the patch to fix 465/tonto regression (> 9%) caused (or exposed) by non-constant step prefetching.
The regressions mainly comes from loops which have array references with both constant (prefetch_mod = 8)
and non-constant (prefetch_mod=1) steps. The loops are unrolled 8 times, and 8 non-constant step prefetches
are inserted into the unrolled loops.
In this patch, we re-compute the prefetch count using prefetch_mod and unroll_factor after the unroll_factor
is determined.
The patch passed bootstrapping and gcc regression tests on amd-linux64 system.
Is it OK for the trunk?
Thanks,
Changpeng