aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--include/llvm/CodeGen/SelectionDAGNodes.h7
-rw-r--r--lib/CodeGen/SelectionDAG/SelectionDAG.cpp7
2 files changed, 14 insertions, 0 deletions
diff --git a/include/llvm/CodeGen/SelectionDAGNodes.h b/include/llvm/CodeGen/SelectionDAGNodes.h
index 02feba7..5f66b63 100644
--- a/include/llvm/CodeGen/SelectionDAGNodes.h
+++ b/include/llvm/CodeGen/SelectionDAGNodes.h
@@ -542,6 +542,7 @@ public:
inline const SDOperand &getOperand(unsigned i) const;
inline bool isTargetOpcode() const;
inline unsigned getTargetOpcode() const;
+ inline const bool isOperand(SDNode *N) const;
/// hasOneUse - Return true if there is exactly one operation using this
/// result value of the defining operator.
@@ -631,6 +632,9 @@ public:
// isOnlyUse - Return true if this node is the only use of N.
bool isOnlyUse(SDNode *N) const;
+ // isOperand - Return true if this node is an operand of N.
+ bool isOperand(SDNode *N) const;
+
/// getNumOperands - Return the number of values used by this operation.
///
unsigned getNumOperands() const { return NumOperands; }
@@ -937,6 +941,9 @@ inline bool SDOperand::isTargetOpcode() const {
inline unsigned SDOperand::getTargetOpcode() const {
return Val->getTargetOpcode();
}
+inline const bool SDOperand::isOperand(SDNode *N) const {
+ return Val->isOperand(N);
+}
inline bool SDOperand::hasOneUse() const {
return Val->hasNUsesOfValue(1, ResNo);
}
diff --git a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
index 24497af..293ea60 100644
--- a/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
+++ b/lib/CodeGen/SelectionDAG/SelectionDAG.cpp
@@ -2533,6 +2533,13 @@ bool SDNode::isOnlyUse(SDNode *N) const {
return Seen;
}
+// isOperand - Return true if this node is an operand of N.
+bool SDNode::isOperand(SDNode *N) const {
+ for (unsigned i = 0, e = N->NumOperands; i != e; ++i)
+ if (this == N->OperandList[i].Val)
+ return true;
+ return false;
+}
const char *SDNode::getOperationName(const SelectionDAG *G) const {
switch (getOpcode()) {