mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-05-18 06:38:41 +00:00
[LoopAccesses] New API to query if memchecks are necessary after partitioning
This is used by Loop Distribution. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@234283 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
320efb05a1
commit
ad8a6b66d9
@ -339,6 +339,10 @@ public:
|
|||||||
bool needsChecking(unsigned I, unsigned J,
|
bool needsChecking(unsigned I, unsigned J,
|
||||||
const SmallVectorImpl<int> *PtrPartition) const;
|
const SmallVectorImpl<int> *PtrPartition) const;
|
||||||
|
|
||||||
|
/// \brief Return true if any pointer requires run-time checking according
|
||||||
|
/// to needsChecking.
|
||||||
|
bool needsAnyChecking(const SmallVectorImpl<int> *PtrPartition) const;
|
||||||
|
|
||||||
/// \brief Print the list run-time memory checks necessary.
|
/// \brief Print the list run-time memory checks necessary.
|
||||||
///
|
///
|
||||||
/// If \p PtrPartition is set, it contains the partition number for
|
/// If \p PtrPartition is set, it contains the partition number for
|
||||||
|
@ -177,6 +177,17 @@ void LoopAccessInfo::RuntimePointerCheck::print(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool LoopAccessInfo::RuntimePointerCheck::needsAnyChecking(
|
||||||
|
const SmallVectorImpl<int> *PtrPartition) const {
|
||||||
|
unsigned NumPointers = Pointers.size();
|
||||||
|
|
||||||
|
for (unsigned I = 0; I < NumPointers; ++I)
|
||||||
|
for (unsigned J = I + 1; J < NumPointers; ++J)
|
||||||
|
if (needsChecking(I, J, PtrPartition))
|
||||||
|
return true;
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
namespace {
|
namespace {
|
||||||
/// \brief Analyses memory accesses in a loop.
|
/// \brief Analyses memory accesses in a loop.
|
||||||
///
|
///
|
||||||
|
Loading…
x
Reference in New Issue
Block a user