2014-03-28 73 views
1

我喜欢读取小测试程序的ASM输出,但是如果我打开-O,它会硬编码某些堆栈声明的常量,并且会稍微打破objdump输出。 我需要什么设置才能看到ASM,就像我使用动态内存而不是常量一样?测试代码的GCC优化设置

回答

0

gcc -S -fverbose-asm your-file.c -o out-asm-file.s

0

请勿使用常数。从命令行或从磁盘文件读取值。

否则,如果你有代码int value = 3编译器将总是只要它可以替换值3。

+0

我以为我会这样做,但也许你是对的,它会更好地反映真实的用法。但为了争辩... – user2986109