1
我喜欢读取小测试程序的ASM输出,但是如果我打开-O,它会硬编码某些堆栈声明的常量,并且会稍微打破objdump输出。 我需要什么设置才能看到ASM,就像我使用动态内存而不是常量一样?测试代码的GCC优化设置
我喜欢读取小测试程序的ASM输出,但是如果我打开-O,它会硬编码某些堆栈声明的常量,并且会稍微打破objdump输出。 我需要什么设置才能看到ASM,就像我使用动态内存而不是常量一样?测试代码的GCC优化设置
gcc -S -fverbose-asm your-file.c -o out-asm-file.s
请勿使用常数。从命令行或从磁盘文件读取值。
否则,如果你有代码int value = 3
编译器将总是只要它可以替换值3。
我以为我会这样做,但也许你是对的,它会更好地反映真实的用法。但为了争辩... – user2986109