1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-20 03:23:01 +02:00

Add const qualifiers to dominates' arguments.

llvm-svn: 80801
This commit is contained in:
Dan Gohman 2009-09-02 17:05:05 +00:00
parent 3418f26ee5
commit 58b376193d

View File

@ -404,11 +404,15 @@ public:
return dominatedBySlowTreeWalk(A, B);
}
inline bool dominates(NodeT *A, NodeT *B) {
inline bool dominates(const NodeT *A, const NodeT *B) {
if (A == B)
return true;
return dominates(getNode(A), getNode(B));
// Cast away the const qualifiers here. This is ok since
// this function doesn't actually return the values returned
// from getNode.
return dominates(getNode(const_cast<NodeT *>(A)),
getNode(const_cast<NodeT *>(B)));
}
NodeT *getRoot() const {
@ -736,15 +740,15 @@ public:
return DT->dominates(A, B);
}
inline bool dominates(BasicBlock* A, BasicBlock* B) const {
inline bool dominates(const BasicBlock* A, const BasicBlock* B) const {
return DT->dominates(A, B);
}
// dominates - Return true if A dominates B. This performs the
// special checks necessary if A and B are in the same basic block.
bool dominates(Instruction *A, Instruction *B) const {
BasicBlock *BBA = A->getParent(), *BBB = B->getParent();
if (BBA != BBB) return DT->dominates(BBA, BBB);
bool dominates(const Instruction *A, const Instruction *B) const {
const BasicBlock *BBA = A->getParent(), *BBB = B->getParent();
if (BBA != BBB) return dominates(BBA, BBB);
// It is not possible to determine dominance between two PHI nodes
// based on their ordering.
@ -752,7 +756,7 @@ public:
return false;
// Loop through the basic block until we find A or B.
BasicBlock::iterator I = BBA->begin();
BasicBlock::const_iterator I = BBA->begin();
for (; &*I != A && &*I != B; ++I) /*empty*/;
//if(!DT.IsPostDominators) {