0
使用的getMetaData我「在LLVM馬初學者在LLVM
我試圖添加元數據說明我試着用下面的代碼從LLVM-Source Level Debugging解決:。
if (MDNode *N = I->getMetadata("dbg")) { // Here I is an LLVM instruction
DILocation Loc(N); // DILocation is in DebugInfo.h
unsigned Line = Loc.getLineNumber();
StringRef File = Loc.getFilename();
StringRef Dir = Loc.getDirectory();
}
什麼在I->getMetadata("dbg")
I
數據類型?我應該如何界定I
?
謝謝:)
謝謝:)你能告訴我,比如我應該如何初始化指令*我?我想要一個具體的例子,我無法找到。 – ConsistentProgrammer
@ConsistentProgrammer只需打開您想要創建的指令的代碼或文檔。例如,如果你想創建一個['ret'指令](http://llvm.org/docs/LangRef.html#ret-instruction),你可以使用其[Create'靜態方法](http ://llvm.org/docs/doxygen/html/classllvm_1_1ReturnInst.html),例如'ReturnInst * I = ReturnInst :: Create(C);'其中'C'是當前上下文(您可以從模塊)。 – Oak