gpt4 book ai didi

c - 转储 C 库汇编代码

转载 作者:行者123 更新时间:2023-11-30 14:59:43 26 4
gpt4 key购买 nike

当我使用 -S 开关使用 GCC 编译 C 程序时,我得到了我编写的 C 程序的汇编代码。但生成的汇编文件有时包含来自库的代码。例如

bl remainder

有没有办法转储库函数的代码。既然如此,有没有办法查看库函数remainder的代码呢?

最佳答案

如果您知道库函数的名称或地址(如 Mark Plotnick 所建议的那样),则可以使用 gdb 反汇编该库函数。这至少会让您了解它的代码是什么。

但是,更好的答案是,当 GCC 调用标准库中的函数时,您应该直接下载实际的源代码!对于某些操作,该源代码可能作为 GCC 发行版本身的一部分存在,对于其他操作,它可能是 glibc 的一部分,但您正在使用开源软件,因此您可以通过 Internet 访问所有原始代码.

我无法确定您正在编译到哪种架构(看起来像 ARM 风格之一?)。但无论如何,remainder 很可能是一个实现 % 运算符的内置函数,因此它随 GCC 一起提供。只需在 GCC Git 存储库中搜索 remainder,您的 CPU 名称就应该能够找到它。 (我从这里开始:https://github.com/gcc-mirror/gcc/search?utf8=%E2%9C%93&q=remainder)

关于c - 转储 C 库汇编代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42582594/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com