挡泥板在 GCC 编译过程中的放置

发布于 2025-01-07 02:15:04 字数 420 浏览 1 评论 0原文

我正在开发一个为 GCC 构建边界检查插件的项目。由于这与 mudflap 的用途类似,因此这将是一个很好的起点。因此,我首先尝试了解为什么 mudflap 在两次通道中进行 GIMPLE 检测,以及为什么通道放置在它们所在的位置。我知道 pass1 必须在高 GIMPLE 上执行,因此必须早于 gimple 降低通道。然而,我还不明白放置第二遍的理由。 如果有人能解释一下这一点,我将不胜感激。我在 gcc-help 论坛上发布了同样的问题(此处:http://gcc.gnu.org/ml/gcc-help/2012-02/msg00206.html),但还没有回复。我希望这里有人能够提供帮助。

谢谢!

I am working on a project to build a bounds checking plugin for GCC. Since, this is similar in purpose to what mudflap does, it would be a good starting point. Hence, I began by trying to get the big picture as to why mudflap does the GIMPLE instrumentation in two passes and why are the passes placed at the locations they are. I understand that pass1 has to be performed on high GIMPLE and hence has to be earlier than the gimple lowering pass. However, I do not yet understand the rationale behind the placement of the second pass.
I'd appreciate it if some one can shed some light on this one. I've posted the same question on the gcc-help forum (here: http://gcc.gnu.org/ml/gcc-help/2012-02/msg00206.html), but there's no response yet. I am hoping someone here might be able to help.

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文