[SystemZTTIImpl] Allow some non-prefetched accesses in getMinPrefetchStride().
authorJonas Paulsson <paulsson@linux.vnet.ibm.com>
Thu, 10 Dec 2020 00:56:45 +0000 (01:56 +0100)
committerJonas Paulsson <paulsson@linux.vnet.ibm.com>
Sat, 12 Dec 2020 00:06:07 +0000 (18:06 -0600)
commit0c2d23933f06ed048191f84ecde889e9da93609c
tree7398058829ff7c1b7637b99fc2f1153f12d3df6e
parent7c8072ce2dbcf76a4fcc4269b87dd313c95a526a
[SystemZTTIImpl] Allow some non-prefetched accesses in getMinPrefetchStride().

The performance improvement on LBM previously achieved with improved software
prefetching (36d4421) have gone lost recently with e00f189. There now is one
memory access in the loop that LoopDataPrefetch cannot handle (while before
there was none) which the heuristic rejects.

This patch adds a small margin by allowing 1 non-prefetched memory access for
every 32 prefetched ones, so that the heuristic doesn't bail in this type of
case.

Review: Ulrich Weigand

Differential Revision: https://reviews.llvm.org/D92985
llvm/lib/Target/SystemZ/SystemZTargetTransformInfo.cpp