登录
首页 >  Golang >  Go问答

如何在GO中生成混合源代码和汇编列表?

来源:stackoverflow

时间:2024-03-31 22:54:30 406浏览 收藏

知识点掌握了,还需要不断练习才能熟练运用。下面golang学习网给大家带来一个Golang开发实战,手把手教大家学习《如何在GO中生成混合源代码和汇编列表?》,在实现功能的过程中也带大家重新温习相关知识点,温故而知新,回头看看说不定又有不一样的感悟!

问题内容

我知道如何获得go程序的汇编表示,但是如何在go中获得像这样的混合列表?

    0:helloworld.c  **** #include 
    1:helloworld.c  ****
    2:helloworld.c  **** int main()
    3:helloworld.c  **** {
    19                            .loc 1 4 0
    20                            .cfi_startproc
    21 0000 55                    pushq   %rbp
    22                    .LCFI0:
    23                            .cfi_def_cfa_offset 16
    24 0001 4889E5                movq    %rsp, %rbp
    25                            .cfi_offset 6, -16
    26                    .LCFI1:
    27                            .cfi_def_cfa_register 6
    4:helloworld.c  ****   printf("Hello world!\n");
    28                            .loc 1 5 0
    29 0004 BF000000              movl    $.LC0, %edi
    29      00
    ...


解决方案


假设我们使用 go build -o o.exe 从 Go 源代码构建了 o.exe 可执行文件。

以下命令打印 strconv.Atoi 函数的混合源代码+反汇编代码:

gdb -batch -ex“设置反汇编风味英特尔”-ex“反汇编/s'strconv.Atoi'”o.exe

以上就是本文的全部内容了,是否有顺利帮助你解决问题?若是能给你带来学习上的帮助,请大家多多支持golang学习网!更多关于Golang的相关知识,也可关注golang学习网公众号。

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>