diff --git a/include/llvm/Metadata.h b/include/llvm/Metadata.h index 179010b1657..f64978cab44 100644 --- a/include/llvm/Metadata.h +++ b/include/llvm/Metadata.h @@ -154,7 +154,8 @@ public: // getFunction - If this metadata is function-local and recursively has a // function-local operand, return the first such operand's parent function. - // Otherwise, return null. + // Otherwise, return null. getFunction() should not be used for performance- + // critical code because it recursively visits all the MDNode's operands. Function *getFunction() const; // destroy - Delete this node. Only when there are no uses. diff --git a/lib/VMCore/Metadata.cpp b/lib/VMCore/Metadata.cpp index 8a40fed1cca..7d783958882 100644 --- a/lib/VMCore/Metadata.cpp +++ b/lib/VMCore/Metadata.cpp @@ -154,7 +154,8 @@ static Function *assertLocalFunction(const MDNode *N) { // getFunction - If this metadata is function-local and recursively has a // function-local operand, return the first such operand's parent function. -// Otherwise, return null. +// Otherwise, return null. getFunction() should not be used for performance- +// critical code because it recursively visits all the MDNode's operands. Function *MDNode::getFunction() const { #ifndef NDEBUG return assertLocalFunction(this);