我正在使用NDK(jni)在Android上編寫一些本機代碼。 我想關閉gcc編譯器優化。 現在我將LOCAL_CFLAGS += -O0
添加到Android.mk,我不確定它是否正常工作。如何知道ndk-build的gcc優化級別
我寫了一些代碼來測試循環的開銷是這樣的:
// gettime
for(int i = 0 ; i<10000;i++)
{
}
// gettime
的時間差太小,我敢肯定的是,環已被刪除的編譯器。 我可以將i
更改爲volatile變量,但我想測試是否已正確關閉編譯器優化。
如何知道gcc(ndk-build)使用的優化級別,我可以設置make
以獲取所有消息?
在此先感謝。
10K'inc's很可能在10k個時鐘週期內完成。即使在「慢」處理器上,這也是非常快的。 – Mat 2012-02-07 08:34:05