首页 | 新闻 | 新品 | 文库 | 方案 | 视频 | 下载 | 商城 | 开发板 | 数据中心 | 座谈新版 | 培训 | 工具 | 博客 | 论坛 | 百科 | GEC | 活动 | 主题月 | 电子展
返回列表 回复 发帖

[求助]怎样改变编译器的配置?

[求助]怎样改变编译器的配置?

象这样的语句:
while(flag){}
while(flag){}  //debounce
下面的语句会不会被编译器优化掉?怎样修改配置才不会被优化掉?
作个朋友
是否被优化掉,你可以看编译后生成的.lst文件,也可以在调试界面中的单步运行,看程序是怎么走的。
海纳百川  有容乃大
我现在想知道如果被优化掉,怎样才能避免
作个朋友
在CodeWarrior的编译器选项中,有优化选择的设置。
首先你要先看看是否真的被优化掉了,否则不要去改动默认设置。
海纳百川  有容乃大
semaphore = 0;
semaphore = 0;
这样的语句确实被优化掉一个,请问如果不让优化掉怎么办?
作个朋友
楼上的兄弟,你说的那个两行代码优化就优化掉算了,优化掉反而好,为什么要改变他的默认设置呢
水泡泡
 我的QQ是:52449804 
 我的网站是: www.dyic.com.cn
 欢迎访问和留言跟我联系
我只是举个例子,有时候我不想它被优化掉。该怎样处理呢?
作个朋友
在变量semaphore前加个volatile试试,文档上有这样说过,但是我没有试过,哈!
立志做个专业的工程师
并不仅仅是这样一个赋值语句,我的意思是编译器认为重复的语句,而我正需要这样的重复性语句,怎样不会被优化掉?
作个朋友
没有人指点一下吗?
作个朋友
你可以试试把这种重复语句用汇编来写(ASM {}的格式)。这样应该不会被优化掉了。
海纳百川  有容乃大
返回列表