summaryrefslogtreecommitdiffstats
path: root/llvm/include
diff options
context:
space:
mode:
authorDaniel Berlin <dberlin@dberlin.org>2017-06-29 17:01:14 +0000
committerDaniel Berlin <dberlin@dberlin.org>2017-06-29 17:01:14 +0000
commitb7df17ec590934471096ea0d25077f144ad33195 (patch)
tree86eca7b539d7d9807e9e7f11aeccacbe05fae810 /llvm/include
parentb779db7ebc41fb6d458facb4d61d60580ce80ee4 (diff)
downloadbcm5719-llvm-b7df17ec590934471096ea0d25077f144ad33195.tar.gz
bcm5719-llvm-b7df17ec590934471096ea0d25077f144ad33195.zip
PredicateInfo: Use OrderedInstructions instead of our homemade
version. llvm-svn: 306703
Diffstat (limited to 'llvm/include')
-rw-r--r--llvm/include/llvm/Transforms/Utils/PredicateInfo.h8
1 files changed, 4 insertions, 4 deletions
diff --git a/llvm/include/llvm/Transforms/Utils/PredicateInfo.h b/llvm/include/llvm/Transforms/Utils/PredicateInfo.h
index 1322c686eb9..fc6f2c2118e 100644
--- a/llvm/include/llvm/Transforms/Utils/PredicateInfo.h
+++ b/llvm/include/llvm/Transforms/Utils/PredicateInfo.h
@@ -74,6 +74,7 @@
#include "llvm/Support/Casting.h"
#include "llvm/Support/Compiler.h"
#include "llvm/Support/ErrorHandling.h"
+#include "llvm/Transforms/Utils/OrderedInstructions.h"
#include <algorithm>
#include <cassert>
#include <cstddef>
@@ -89,7 +90,6 @@ class Instruction;
class MemoryAccess;
class LLVMContext;
class raw_ostream;
-class OrderedBasicBlock;
enum PredicateType { PT_Branch, PT_Assume, PT_Switch };
@@ -115,7 +115,8 @@ class PredicateWithCondition : public PredicateBase {
public:
Value *Condition;
static inline bool classof(const PredicateBase *PB) {
- return PB->Type == PT_Assume || PB->Type == PT_Branch || PB->Type == PT_Switch;
+ return PB->Type == PT_Assume || PB->Type == PT_Branch ||
+ PB->Type == PT_Switch;
}
protected:
@@ -244,6 +245,7 @@ private:
Function &F;
DominatorTree &DT;
AssumptionCache &AC;
+ OrderedInstructions OI;
// This maps from copy operands to Predicate Info. Note that it does not own
// the Predicate Info, they belong to the ValueInfo structs in the ValueInfos
// vector.
@@ -256,8 +258,6 @@ private:
// 0 is not a valid Value Info index, you can use DenseMap::lookup and tell
// whether it returned a valid result.
DenseMap<Value *, unsigned int> ValueInfoNums;
- // OrderedBasicBlocks used during sorting uses
- DenseMap<const BasicBlock *, std::unique_ptr<OrderedBasicBlock>> OBBMap;
// The set of edges along which we can only handle phi uses, due to critical
// edges.
DenseSet<std::pair<BasicBlock *, BasicBlock *>> EdgeUsesOnly;
OpenPOWER on IntegriCloud