[LLVMdev] Reusing LLVM Mips instruction info in lldb

Keno Fischer kfischer at college.harvard.edu
Tue Feb 24 13:01:15 PST 2015


Hello everyone,

in http://reviews.llvm.org/D7696 bhushan added a mips64 UnwindAssembly
plugin (a plugin that looks at assembly code to find out how to unwind the
stack frame). Since I was about to write such a plugin (though for mips32)
myself, I used it as a starting point for a slightly different
implementation [1], replacing hard coded instruction encodings by calls to
the LLVM disassembler. This works great, except that the necessary header
that defines the enum to interpret the opcode in MCInst is generated by
llvm during the build process using tablegen and is hence not a public
header. What is the best solution to be able to use this information from
lldb (which needs to be able to build against a prebuilt copy of LLVM)?
Would it make sense to move the appropriate .td to
llvm/include/Target/Mips, so lldb could re-tablegen it and obtain the same
header (I assume tablegening is deterministic?)?
Does anybody see any other good solutions?

Thanks,
Keno

[1] https://gist.github.com/Keno/ef471f766d8dddf074e7
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150224/6550b587/attachment.html>


More information about the llvm-dev mailing list