From c5754a65e64126743644aec2631f165a0ac3ffe4 Mon Sep 17 00:00:00 2001 From: "Duncan P. N. Exon Smith" Date: Wed, 5 Nov 2014 18:16:03 +0000 Subject: IR: MDNode => Value: NamedMDNode::getOperator() Change `NamedMDNode::getOperator()` from returning `MDNode *` to returning `Value *`. To reduce boilerplate at some call sites, add a `getOperatorAsMDNode()` for named metadata that's expected to only return `MDNode` -- for now, that's everything, but debug node named metadata (such as llvm.dbg.cu and llvm.dbg.sp) will soon change. This is part of PR21433. Note that there's a follow-up patch to clang for the API change. llvm-svn: 221375 --- llvm/lib/IR/Verifier.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'llvm/lib/IR/Verifier.cpp') diff --git a/llvm/lib/IR/Verifier.cpp b/llvm/lib/IR/Verifier.cpp index 1c54e9b062e..395f2e74d61 100644 --- a/llvm/lib/IR/Verifier.cpp +++ b/llvm/lib/IR/Verifier.cpp @@ -555,7 +555,7 @@ void Verifier::visitGlobalAlias(const GlobalAlias &GA) { void Verifier::visitNamedMDNode(const NamedMDNode &NMD) { for (unsigned i = 0, e = NMD.getNumOperands(); i != e; ++i) { - MDNode *MD = NMD.getOperand(i); + MDNode *MD = NMD.getOperandAsMDNode(i); if (!MD) continue; @@ -624,7 +624,7 @@ void Verifier::visitModuleIdents(const Module &M) { // llvm.ident takes a list of metadata entry. Each entry has only one string. // Scan each llvm.ident entry and make sure that this requirement is met. for (unsigned i = 0, e = Idents->getNumOperands(); i != e; ++i) { - const MDNode *N = Idents->getOperand(i); + const MDNode *N = Idents->getOperandAsMDNode(i); Assert1(N->getNumOperands() == 1, "incorrect number of operands in llvm.ident metadata", N); Assert1(isa(N->getOperand(0)), @@ -642,7 +642,7 @@ void Verifier::visitModuleFlags(const Module &M) { DenseMap SeenIDs; SmallVector Requirements; for (unsigned I = 0, E = Flags->getNumOperands(); I != E; ++I) { - visitModuleFlag(Flags->getOperand(I), SeenIDs, Requirements); + visitModuleFlag(Flags->getOperandAsMDNode(I), SeenIDs, Requirements); } // Validate that the requirements in the module are valid. -- cgit v1.2.3