gpt4 book ai didi

c - 试图掌握 C 字节码... GNU/gcc 是否/可以像 Clang/LLVM 一样生成 C 字节码?

转载 作者:太空宇宙 更新时间:2023-11-04 02:09:55 24 4
gpt4 key购买 nike

最近我被告知要看看 C 函数是如何编译成 LLVM 字节码的,然后是 LLVM 字节码是如何翻译成 x86 ASM 的。作为一名普通的 GNU/gcc 用户,我对此有一些疑问。委婉地说。

GNU/gcc 也可以编译成字节码吗? 可以吗? 我的印象是 gcc 可以直接编译到 ASM 中。如果没有,有没有办法像使用 clang 命令一样查看字节码中介?

~$ clang ~/prog_name.c -S -emit-llvm -o - <== 将显示 prog_name.c 的字节码。

此外,我发现字节码相当复杂。相比之下,它使汇编语言看起来像是轻松阅读。换句话说:我几乎不知道它在说什么。

有没有人对模糊破译字节码提供的信息有任何建议或引用?目前我与实际的 ASM 进行比较和对比,所以说它进展缓慢是一种恭维。

也许这一切都很天真,但我发现要突破这一表面非常具有挑战性。

最佳答案

也许试着看看 language reference .

据我所知,GCC 确实有一个众所周知的 IR GIMPLE (另一个 reference here )。

如果你的意思是你更愿意分析汇编输出而不是 IR,你可以看看 this question其中描述了如何输出汇编文件。

关于c - 试图掌握 C 字节码... GNU/gcc 是否/可以像 Clang/LLVM 一样生成 C 字节码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15488839/

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