difference between MDNode and NamedMDNode

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!

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 !

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

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?