如何使用C++;应用程序编程接口? 有人能指出我用C++ API?< /p>将元数据附加到LLVM IR的具体例子吗?
我读过这一页如何使用C++;应用程序编程接口? 有人能指出我用C++ API?< /p>将元数据附加到LLVM IR的具体例子吗?,llvm,Llvm,我读过这一页 谢谢你可以做两件事 将元数据节点附加到指令(如引用链接中的!dbg节点)。为此,有指令::setMetadata方法 在模块中创建命名元数据节点,而不是附加到任何特定指令。为此,请使用Module::getOrInsertNamedMetadata 上述答案不完全正确。您还可以仅使用MDNode::get(…)在模块级别创建元数据,它接受一个上下文和一个值数组来创建元数据。命名元数据非常重要,您应该只将其用作顶级元数据值的锚定 对于附加到指令,您确实希望使用指令上的setMetad
谢谢你可以做两件事
!dbg
节点)。为此,有指令::setMetadata
方法Module::getOrInsertNamedMetadata
上述答案不完全正确。您还可以仅使用MDNode::get(…)在模块级别创建元数据,它接受一个上下文和一个值数组来创建元数据。命名元数据非常重要,您应该只将其用作顶级元数据值的锚定 对于附加到指令,您确实希望使用指令上的setMetadata调用来设置任何特定元数据,但是,您需要确保使用的是正确的上下文,否则可能会覆盖其他元数据