summaryrefslogtreecommitdiffstats
path: root/llvm/include
diff options
context:
space:
mode:
authorMichael Kuperstein <mkuper@google.com>2017-03-10 18:59:07 +0000
committerMichael Kuperstein <mkuper@google.com>2017-03-10 18:59:07 +0000
commit5fb39a79665b2380b2ac01f5f581ab571a897345 (patch)
tree1fdddb0ba62adcf796d36766721c0ee9a339c81b /llvm/include
parent7dedbfa89d7380555f77abc624061de40ae91e5f (diff)
downloadbcm5719-llvm-5fb39a79665b2380b2ac01f5f581ab571a897345.tar.gz
bcm5719-llvm-5fb39a79665b2380b2ac01f5f581ab571a897345.zip
[SLP] Revert everything that has to do with memory access sorting.
This reverts r293386, r294027, r294029 and r296411. Turns out the SLP tree isn't actually a "tree" and we don't handle accessing the same packet of loads in several different orders well, causing miscompiles. Revert until we can fix this properly. llvm-svn: 297493
Diffstat (limited to 'llvm/include')
-rw-r--r--llvm/include/llvm/Analysis/LoopAccessAnalysis.h10
1 files changed, 0 insertions, 10 deletions
diff --git a/llvm/include/llvm/Analysis/LoopAccessAnalysis.h b/llvm/include/llvm/Analysis/LoopAccessAnalysis.h
index 78d7ccb2927..2568903c57f 100644
--- a/llvm/include/llvm/Analysis/LoopAccessAnalysis.h
+++ b/llvm/include/llvm/Analysis/LoopAccessAnalysis.h
@@ -657,16 +657,6 @@ int64_t getPtrStride(PredicatedScalarEvolution &PSE, Value *Ptr, const Loop *Lp,
const ValueToValueMap &StridesMap = ValueToValueMap(),
bool Assume = false, bool ShouldCheckWrap = true);
-/// \brief Try to sort an array of loads / stores.
-///
-/// An array of loads / stores can only be sorted if all pointer operands
-/// refer to the same object, and the differences between these pointers
-/// are known to be constant. If that is the case, this returns true, and the
-/// sorted array is returned in \p Sorted. Otherwise, this returns false, and
-/// \p Sorted is invalid.
-bool sortMemAccesses(ArrayRef<Value *> VL, const DataLayout &DL,
- ScalarEvolution &SE, SmallVectorImpl<Value *> &Sorted);
-
/// \brief Returns true if the memory operations \p A and \p B are consecutive.
/// This is a simple API that does not depend on the analysis pass.
bool isConsecutiveAccess(Value *A, Value *B, const DataLayout &DL,
OpenPOWER on IntegriCloud