Hello, I'm a little confused by the definition of metadata node: does it have to contain different types of data ? And does a named metadata have to have a string name ? I know the named metadata can only contain metadatas e.g. !3=metadata !{metadata !1, metadata !2} Does it belong to NamedMDNode or MDNode ? Thanks! -- Best regards Hui Zhang -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150224/7d02e3dd/attachment.html>
And, is there specific Class Reference to each version of llvm available online ? For some reason, I can only use LLVM 3.3, but the reference online is the latest 3.7, a lot new functions/iterators/operators are missing in the 3.3 source code. Therefore how can I see the doxygen of old llvm ? Thanks ! On Tue, Feb 24, 2015 at 2:54 PM, Hui Zhang <wayne.huizhang at gmail.com> wrote:> Hello, > > I'm a little confused by the definition of metadata node: does it have to > contain different types of data ? And does a named metadata have to have a > string name ? I know the named metadata can only contain metadatas > > e.g. > !3=metadata !{metadata !1, metadata !2} > > Does it belong to NamedMDNode or MDNode ? > > Thanks! > > > -- > Best regards > > > Hui Zhang >-- Best regards Hui Zhang -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150224/e6f9a2b5/attachment.html>
Duncan P. N. Exon Smith
2015-Feb-25 02:40 UTC
[LLVMdev] difference between MDNode and NamedMDNode
> On 2015-Feb-24, at 12:23, Hui Zhang <wayne.huizhang at gmail.com> wrote: > > And, is there specific Class Reference to each version of llvm available online ? > For some reason, I can only use LLVM 3.3, but the reference online is the latest 3.7, a lot new functions/iterators/operators are missing in the 3.3 source code. Therefore how can I see the doxygen of old llvm ? > > Thanks !3.3 is very old. You'll have a hard time getting much help on anything but ToT here. Nevertheless, this probably works: $ configure --enable-doxygen ../llvm $ make doxygen-llvm> > On Tue, Feb 24, 2015 at 2:54 PM, Hui Zhang <wayne.huizhang at gmail.com> wrote: > Hello, > > I'm a little confused by the definition of metadata node: does it have to contain different types of data ? And does a named metadata have to have a string name ? I know the named metadata can only contain metadatas > > e.g. > !3=metadata !{metadata !1, metadata !2} > > Does it belong to NamedMDNode or MDNode ? >I'm not sure I understand the question. A NamedMDNode looks like this: !named = !{!0, !1} An MDNode looks like this: !0 = !{!1, i32 0, i32* @global} (In 3.3, maybe it looked like the following, not sure: !named = metadata !{!0, !1} !0 = metadata !{metadata !1, i32 0, i32* @global} ) Does that help?