如何去除看似不必要的气体产生的零?

时间:2017-01-09 12:05:48

标签: gcc assembly x86 x86-64 gas

我正在尝试制作一个真正最小的共享“库”,它的大小可能是最小的:

.text

.globl test
test:
        movb $1, %al
        movb $1, %dil
        movabs $message, %rsi
        movb $7, %dl
        syscall
        ret
message:
        .ascii "hello"

编译:{{1​​}}

输出仍然相对巨大:4.8KB !! 当我用radare查看二进制文件时,我可以看到.text部分之后有很多看似不必要的代码洞穴产生了我的气体。

gcc -o test.so -fPIC -shared -m64 -nostdlib -s -O3 test.s

这些是什么,如何摆脱它们(如果我可以/应该)?

0 个答案:

没有答案