assembly - 如何获取程序集的代码覆盖率信息?
问题描述
我想在组装水平上做一些研究。但是,我似乎没有工具可以获取汇编信息,例如用于 C/C++ 的 gcov、llvm-cov。
解决方案
也许让调试器在每条源代码行或每条指令上设置一个断点。并让它在它被击中一次后删除断点。然后运行程序。
然后看看还设置了多少断点。
这对于作为大型程序的一部分的少量手写 asm 来说可能是可行的。如果您想为大型可执行文件 + 库中的每个编译器生成的 asm 指令执行此操作,它可能会陷入困境,但理论上仍然可行。
使用交互式调试器以外的东西来管理事物,它在实践中可能是可行的。
推荐阅读
- flutter - 引发了另一个异常:'package:flutter/src/widgets/navigator.dart':断言失败:第 3803 行 pos 12:'_history.isNotEmpty':不正确
- dialogflow-es - Dialogflow Messenger 自定义负载
- vue.js - FullCalendar VueJS - 更新日期范围
- python - 有没有更好的方法让这些实例和变量相互传递?
- javascript - 在 Angular 8 中使用令牌成功登录后,如何获取用户名等用户详细信息?
- javascript - 模态未在按钮单击时显示 - vanilla JavaScript
- jquery - BitMovin 抛出 (ERRO_INSEURE_RESPONSE) 错误
- android-studio - Flutter 未在 Android Studio 中显示用于颜色托盘的 Intellij 建议框
- wordpress - 子域通配符重定向
- javascript - 如何从 MongoDB 数组中仅返回对象的字符串值