From 3f3fd8d5c388c4acb2be1ea7cfd815303b85609c Mon Sep 17 00:00:00 2001 From: Adam Nemet Date: Tue, 14 Jul 2015 22:32:52 +0000 Subject: [PATCH] [LAA] Turn RuntimePointerChecking into a class, start hiding things, NFC The goal is to start hiding internal APIs. llvm-svn: 242220 --- llvm/include/llvm/Analysis/LoopAccessAnalysis.h | 26 +++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/llvm/include/llvm/Analysis/LoopAccessAnalysis.h b/llvm/include/llvm/Analysis/LoopAccessAnalysis.h index 4e23e45..476e4b6 100644 --- a/llvm/include/llvm/Analysis/LoopAccessAnalysis.h +++ b/llvm/include/llvm/Analysis/LoopAccessAnalysis.h @@ -292,9 +292,10 @@ private: bool couldPreventStoreLoadForward(unsigned Distance, unsigned TypeByteSize); }; -/// This struct holds information about the memory runtime legality check that -/// a group of pointers do not overlap. -struct RuntimePointerChecking { +/// \brief Holds information about the memory runtime legality checks to verify +/// that a group of pointers do not overlap. +class RuntimePointerChecking { +public: struct PointerInfo { /// Holds the pointer value that we need to check. TrackingVH PointerValue; @@ -374,15 +375,6 @@ struct RuntimePointerChecking { void groupChecks(MemoryDepChecker::DepCandidates &DepCands, bool UseDependencies); - /// \brief Decide whether we need to issue a run-time check for pointer at - /// index \p I and \p J to prove their independence. - /// - /// If \p PtrPartition is set, it contains the partition number for - /// pointers (-1 if the pointer belongs to multiple partitions). In this - /// case omit checks between pointers belonging to the same partition. - bool needsChecking(unsigned I, unsigned J, - const SmallVectorImpl *PtrPartition) const; - /// \brief Decide if we need to add a check between two groups of pointers, /// according to needsChecking. bool needsChecking(const CheckingPtrGroup &M, const CheckingPtrGroup &N, @@ -413,6 +405,16 @@ struct RuntimePointerChecking { /// Holds a partitioning of pointers into "check groups". SmallVector CheckingGroups; +private: + /// \brief Decide whether we need to issue a run-time check for pointer at + /// index \p I and \p J to prove their independence. + /// + /// If \p PtrPartition is set, it contains the partition number for + /// pointers (-1 if the pointer belongs to multiple partitions). In this + /// case omit checks between pointers belonging to the same partition. + bool needsChecking(unsigned I, unsigned J, + const SmallVectorImpl *PtrPartition) const; + /// Holds a pointer to the ScalarEvolution analysis. ScalarEvolution *SE; }; -- 2.7.4