summaryrefslogtreecommitdiffstats
path: root/llvm/lib/IR
diff options
context:
space:
mode:
authorDuncan P. N. Exon Smith <dexonsmith@apple.com>2014-10-31 20:13:11 +0000
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>2014-10-31 20:13:11 +0000
commite5d641ebcafc3586f4981bc3a04f01b7f6b6acb8 (patch)
tree27c75754599acef3e3f16260aac1f4e9d27ca501 /llvm/lib/IR
parent0c0b6d9ac6b37724807f1cf0c0c05b1bba3c3b48 (diff)
downloadbcm5719-llvm-e5d641ebcafc3586f4981bc3a04f01b7f6b6acb8.tar.gz
bcm5719-llvm-e5d641ebcafc3586f4981bc3a04f01b7f6b6acb8.zip
IR: MDNode => Value: Instruction::setMetadata()
Change `Instruction::setMetadata()` API to accept `Value` instead of `MDNode`. Part of PR21433. llvm-svn: 220994
Diffstat (limited to 'llvm/lib/IR')
-rw-r--r--llvm/lib/IR/Metadata.cpp15
1 files changed, 9 insertions, 6 deletions
diff --git a/llvm/lib/IR/Metadata.cpp b/llvm/lib/IR/Metadata.cpp
index cc118496033..24c78fea646 100644
--- a/llvm/lib/IR/Metadata.cpp
+++ b/llvm/lib/IR/Metadata.cpp
@@ -600,9 +600,9 @@ StringRef NamedMDNode::getName() const {
// Instruction Metadata method implementations.
//
-void Instruction::setMetadata(StringRef Kind, MDNode *Node) {
- if (!Node && !hasMetadata()) return;
- setMetadata(getContext().getMDKindID(Kind), Node);
+void Instruction::setMetadata(StringRef Kind, Value *MD) {
+ if (!MD && !hasMetadata()) return;
+ setMetadata(getContext().getMDKindID(Kind), MD);
}
MDNode *Instruction::getMetadataImpl(StringRef Kind) const {
@@ -655,9 +655,12 @@ void Instruction::dropUnknownMetadata(ArrayRef<unsigned> KnownIDs) {
/// setMetadata - Set the metadata of of the specified kind to the specified
/// node. This updates/replaces metadata if already present, or removes it if
-/// Node is null.
-void Instruction::setMetadata(unsigned KindID, MDNode *Node) {
- if (!Node && !hasMetadata()) return;
+/// MD is null.
+void Instruction::setMetadata(unsigned KindID, Value *MD) {
+ if (!MD && !hasMetadata()) return;
+
+ // For now, we only expect MDNodes here.
+ MDNode *Node = cast<MDNode>(MD);
// Handle 'dbg' as a special case since it is not stored in the hash table.
if (KindID == LLVMContext::MD_dbg) {
OpenPOWER on IntegriCloud