首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用LLDB调试LLVM IR

用LLDB调试LLVM IR
EN

Stack Overflow用户
提问于 2014-08-18 07:24:08
回答 1查看 968关注 0票数 4

我已经开发了一个LLVM前端生成LLVM IR作为目标代码。如果我扩展这个前端以将调试信息嵌入到生成的IR中,那么可以使用LLDB调试我的源代码吗?我的意思是,lldb是否支持任何针对LLVM IR的源代码语言?

EN

回答 1

Stack Overflow用户

发布于 2014-08-19 20:41:24

你必须得到一个矮人语言代码,并让lldb来识别它。如果我们得到了一些未知语言的侏儒,我们就会忽略它.

如果没有更多的支持,有些事情就会成功,而其他的就不会成功。

如果您发出正确的行表信息,您应该能够映射回您的源,这也应该是步进工作。其他的事情开始变得困难起来。

下一个困难的部分是如何告诉lldb关于您的类型信息。lldb使用Clang的AST作为调试器中类型信息的内部存储。为了打印局部变量(使用frame variable命令)和用于表达式解析器,lldb将矮小类型信息转换为Clang。

如果您的语言有一个类似于C的类型系统,那么应该能够为您的类型解析侏儒。这样,再加上正确的变量信息,frame variable就可以正常工作了。

表达式解析器(即expressionprintpo命令)要求lldb为您的语言提供一个解析器。这可能是相当大的一部分工作。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25358161

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档