2016-11-24 68 views

回答

1

你必須使用-S選項生成彙編代碼,還我會建議禁用任何優化與-O0選項(如果需要的話),如果你想看到ASSMBLY代碼優化,只需添加-S

有關gcc選項的更多信息,您可以find here

+1

取決於您想要查看asm的原因。如果你想看看編譯器是否做得很好,你應該使用'-O3'(實際上,使用與你用來構建'.o'完全相同的選項,但是用'-S'而不是'-c ')。查看未優化的asm輸出很少有用。另請參見[如何從gcc輸出中移除噪聲](http://stackoverflow.com/questions/38552116/how-to-remove-noise-from-gcc-clang-assembly-output)。我喜歡'gcc -O3 -masm = intel -fverbose-asm -S -o- | less'。儘管對於內核代碼,由於inline-asm假設AT&T,您可能需要避免使用'-masm = intel'。 –