From 34785ecff11854110344a4c8ab2d6165b883fb2b Mon Sep 17 00:00:00 2001 From: Adam Nemet Date: Wed, 9 Mar 2016 05:33:21 +0000 Subject: [LoopDataPrefetch] Add stats and debug output llvm-svn: 262998 --- llvm/lib/Transforms/Scalar/LoopDataPrefetch.cpp | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'llvm/lib') diff --git a/llvm/lib/Transforms/Scalar/LoopDataPrefetch.cpp b/llvm/lib/Transforms/Scalar/LoopDataPrefetch.cpp index 5d0a5906509..3d25e099c3e 100644 --- a/llvm/lib/Transforms/Scalar/LoopDataPrefetch.cpp +++ b/llvm/lib/Transforms/Scalar/LoopDataPrefetch.cpp @@ -43,6 +43,8 @@ static cl::opt PrefetchWrites("loop-prefetch-writes", cl::Hidden, cl::init(false), cl::desc("Prefetch write addresses")); +STATISTIC(NumPrefetches, "Number of prefetches inserted"); + namespace llvm { void initializeLoopDataPrefetchPass(PassRegistry&); } @@ -149,6 +151,10 @@ bool LoopDataPrefetch::runOnLoop(Loop *L) { if (!ItersAhead) ItersAhead = 1; + DEBUG(dbgs() << "Prefetching " << ItersAhead + << " iterations ahead (loop size: " << LoopSize << ") in " + << L->getHeader()->getParent()->getName() << ": " << *L); + SmallVector, 16> PrefLoads; for (Loop::block_iterator I = L->block_begin(), IE = L->block_end(); I != IE; ++I) { @@ -219,6 +225,9 @@ bool LoopDataPrefetch::runOnLoop(Loop *L) { {PrefPtrValue, ConstantInt::get(I32, MemI->mayReadFromMemory() ? 0 : 1), ConstantInt::get(I32, 3), ConstantInt::get(I32, 1)}); + ++NumPrefetches; + DEBUG(dbgs() << " Access: " << *PtrValue << ", SCEV: " << *LSCEV + << "\n"); MadeChange = true; } -- cgit v1.2.3