首先感謝大家對上一個視頻的點評回覆,非常有意義的討論,這次AC6的表現更新驚呆,不開優化都可以亂跳。
【實驗目的】
同樣的程序代碼,目的是測試C環境的調試現象。
【實驗版本】
IAR版本 :9.3x
MDK版本:5.3x, 含AC5和AC6
Embedded Studio:使用GCC,版本V7.1X
【視頻展示】
https://www.bilibili.com/video/BV18h4y1v7yR
【測試說明】
測試了IAR,所有優化等級均正常:
Embedded Studio開最高速度優化Level3 for speed,測試正常:
MDK AC5測試了O1和O3,調試均不正常,進入return還繼續執行。
MDK AC6不開優化,設置優先級爲O0,調試亂跳,這有點說不過去了。這不能怪優化問題了吧,用的AC6.18。
開成O1優化,甚至還可以倒序執行,動圖效果: