summaryrefslogtreecommitdiffstats
path: root/llvm/docs
diff options
context:
space:
mode:
authorDuncan P. N. Exon Smith <dexonsmith@apple.com>2015-01-08 22:38:29 +0000
committerDuncan P. N. Exon Smith <dexonsmith@apple.com>2015-01-08 22:38:29 +0000
commit090a19bd3cab8b4247bb41eecf20e9f0f211332b (patch)
tree3c7d1b2041a30c42072457ae7adc70ef5d873bd3 /llvm/docs
parent22ffa9b291e17a45ddc553817bbfee9d575e5600 (diff)
downloadbcm5719-llvm-090a19bd3cab8b4247bb41eecf20e9f0f211332b.tar.gz
bcm5719-llvm-090a19bd3cab8b4247bb41eecf20e9f0f211332b.zip
IR: Add 'distinct' MDNodes to bitcode and assembly
Propagate whether `MDNode`s are 'distinct' through the other types of IR (assembly and bitcode). This adds the `distinct` keyword to assembly. Currently, no one actually calls `MDNode::getDistinct()`, so these nodes only get created for: - self-references, which are never uniqued, and - nodes whose operands are replaced that hit a uniquing collision. The concept of distinct nodes is still not quite first-class, since distinct-ness doesn't yet survive across `MapMetadata()`. Part of PR22111. llvm-svn: 225474
Diffstat (limited to 'llvm/docs')
-rw-r--r--llvm/docs/LangRef.rst6
1 files changed, 6 insertions, 0 deletions
diff --git a/llvm/docs/LangRef.rst b/llvm/docs/LangRef.rst
index 5238fe90d30..0a1c7768d5a 100644
--- a/llvm/docs/LangRef.rst
+++ b/llvm/docs/LangRef.rst
@@ -2848,6 +2848,12 @@ their operand. For example:
!{ !"test\00", i32 10}
+Metadata nodes that aren't uniqued use the ``distinct`` keyword. For example:
+
+.. code-block:: llvm
+
+ !0 = distinct !{!"test\00", i32 10}
+
A :ref:`named metadata <namedmetadatastructure>` is a collection of
metadata nodes, which can be looked up in the module symbol table. For
example:
OpenPOWER on IntegriCloud