我正在使用 NDK(jni)在 Android 上编写一些本地代码。
我希望关闭 gcc 编译器的优化。
目前,我在 Android.mk 文件中添加了 LOCAL_CFLAGS += -O0
,不确定是否生效。
我编写了一些用于测试循环开销的代码:
// gettime
for(int i = 0 ; i<10000;i++)
{
}
// gettime
时间差太小了,我确信循环已经被编译器删除了。我可以将i
更改为volatile
变量,但我想测试是否正确关闭了编译器优化。
我如何知道gcc(ndk-build)使用的优化级别,我可以设置make
为详细模式以获取所有消息吗?
提前感谢。