社区
工具平台和程序库
帖子详情
如何只对部分代码进行编译优化?
thirdapple
2008-11-22 11:05:00
gcc的编译优化中使用了乱序执行,让我的无锁结构在多线程环境中出错,如果关闭o2代码对于和这部分无关的代码就没办法进行优化了。gcc中有任何的宏命令可以对某一部分代码关闭编译优化么?
...全文
248
8
打赏
收藏
如何只对部分代码进行编译优化?
gcc的编译优化中使用了乱序执行,让我的无锁结构在多线程环境中出错,如果关闭o2代码对于和这部分无关的代码就没办法进行优化了。gcc中有任何的宏命令可以对某一部分代码关闭编译优化么?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
8 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
K行天下
2008-11-22
打赏
举报
回复
分割文件是一个办法
thirdapple
2008-11-22
打赏
举报
回复
[Quote=引用 1 楼 xhs_lh04 的回复:]
没有
线程,不用锁来同步,会出现意想不到的结果,建议还是加上
没有对局部代码进行优先的选项,抱歉
[/Quote]
嗯,是原子操作,所以是可以控制的,但是现在gcc的编译优化把执行顺序打乱了所以出了问题。
brookmill
2008-11-22
打赏
举报
回复
把源代码拆成两个文件吧,在makefile里一个优化一个不优化
Non_Recursive
2008-11-22
打赏
举报
回复
[Quote=引用 1 楼 xhs_lh04 的回复:]
没有
线程,不用锁来同步,会出现意想不到的结果,建议还是加上
没有对局部代码进行优先的选项,抱歉
[/Quote]
up
xhs_lh04
2008-11-22
打赏
举报
回复
没有
线程,不用锁来同步,会出现意想不到的结果,建议还是加上
没有对局部代码进行优先的选项,抱歉
xiaopoy
2008-11-22
打赏
举报
回复
[Quote=引用 3 楼 brookmill 的回复:]
把源代码拆成两个文件吧,在makefile里一个优化一个不优化
[/Quote]
纯帮顶。
pushregistration
2008-11-22
打赏
举报
回复
up
android2008
2008-11-22
打赏
举报
回复
up
Keil C51
编译
器
4. **嵌入式汇编**:C51允许在C
代码
中嵌入汇编语句,以便于
进行
性能关键
部分
的
优化
或访问特定硬件特性。 5. **调试支持**:在Keil uVision环境下,C51
编译
器可以与仿真器或调试器配合,提供源
代码
级别的调试功能,...
简单的扑克牌游戏程序
5. 测试和调试:通过单元测试确保每个功能正常工作,并对整个系统
进行
集成测试。 6. 打包生成:将所有的DCU、DFM和DPR文件合并到COASTERS.DPR中,
编译
成COASTERS.EXE和相关的辅助文件。 这个项目展示了基本的软件...
gcc针对
部分
代码
取消
编译
优化
为了提高
编译
和运行速度,或者为了减少
代码
段大小,我们常常需要使用
编译
优化
。 默认是-O0, 我们可以修改为-O1, -O2,-Os,-O3等。 但是
编译
优化
有时候并不一定
优化
到最佳的效果,或者
优化
的结果需要某些支持才能正确...
编译
原理之
代码
优化
并且在中间
代码
到目标
代码
的过程中,许多数据科学家发明了很多可以提高
代码
运行效率的算法,这个就是
编译
原理中重要的
代码
优化
部分
代码
优化
的分类: 机器无关
优化
:针对中间
代码
机器相关
优化
:针对目标
代码
...
编译
原理——
代码
优化
中间
代码
级,主要
优化
内容
编译
程序
优化
部分
目标
代码
级
优化
代价:
优化
算法的复杂度,即编程难易程度及算法时间复杂度
优化
代码
和
优化
程度的关系: 手工水平为最
优化
代码
,也就是汇编
优化
的分类: 局部
优化
...
工具平台和程序库
24,860
社区成员
27,333
社区内容
发帖
与我相关
我的任务
工具平台和程序库
C/C++ 工具平台和程序库
复制链接
扫一扫
分享
社区描述
C/C++ 工具平台和程序库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章