社区
工具平台和程序库
帖子详情
gcc 优化选项问题
誰伴我闖荡
2011-01-17 10:35:56
近日在做一个项目,
结果发现如果用默认的编译优化选项,运行的时候就是正确的,
然后使用-O2 -Os了,编译没问题,而且编译的包也会小一些,但是就是运行的时候运行不了。。
现在需要解决这个问题,
由于一直都没这方面的经验,不知道从何入手,
想请问下,这种问题如何解决?
谢谢了
...全文
161
5
打赏
收藏
gcc 优化选项问题
近日在做一个项目, 结果发现如果用默认的编译优化选项,运行的时候就是正确的, 然后使用-O2 -Os了,编译没问题,而且编译的包也会小一些,但是就是运行的时候运行不了。。 现在需要解决这个问题, 由于一直都没这方面的经验,不知道从何入手, 想请问下,这种问题如何解决? 谢谢了
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xunxun
2011-01-17
打赏
举报
回复
gcc如果使用多个类似作用的开关时,以最后一个开关为准,-O2 -Os 起作用的是-Os。
lz的问题应该是不加优化没有问题,加优化就有问题,检查下初始化、越界等。
誰伴我闖荡
2011-01-17
打赏
举报
回复
哦,那怎么解决运行不了这个的问题
huang_gen
2011-01-17
打赏
举报
回复
-Os相当于-O2.5。是使用了所有-O2的优化选项,但又不缩减代码尺寸的方法和O2冲突,导致生成的代码紊乱
claio
2011-01-17
打赏
举报
回复
运行不了提示什么嘛。。。
而且-Os 基本上就是 -O2,只是不缩减代码尺寸,没见过-Os -O2连着用的
tdm64-
gcc
-10.3.0-2.exe.7z
Windows
GCC
编译器 , 可以变异 Makefile 文件
arm-linux-
gcc
-4.3.2
arm-linux-
gcc
-4.3.2.tgz
编译器(
gcc
、g++)
编译器(
gcc
、g++)
gcc
编译
优化
选项
因此,无论是
GCC
还是Clang,只要使用了相应的指令集
优化
标志,就可以启用SIMD
优化
,提高程序的执行效率。AVX指令集在Sandy Bridge时代引入,扩展了SIMD指令的宽度,达到了256位,可以同时对8个32位整数或8个32位浮点数进行操作。在
gcc
中,通过开启编译
优化
选项
,如-O3,可以启用SIMD
优化
,对代码进行
优化
,以加速程序的执行。-Os
选项
专门针对目标文件大小进行
优化
,执行所有不增加目标文件大小的-O2
优化
选项
,并执行专门减小目标文件大小的
优化
选项
。-O0表示无
优化
,是默认
选项
。
gcc
优化
选项
gcc
优化
选项
: 例:
gcc
–o hello –Wall–O2hello.c
gcc
对代码进行
优化
通过
选项
“-On”来控制
优化
级别(n是整数)。不同的
优化
级别对应不同的
优化
处理工作。
优化
选项
“-O1”:主要进行线程跳转和延迟退栈两种
优化
。
优化
选项
“-O2”:除了完成所有“-O1”级别的
优化
之外,还要进行一些额外的调整工作,如处理其指令调度等。
优化
选项
“-O3”:略。 优缺点: 虽然
优化
选项
可以加速代码的运行速度,但对于调试而言将是一个很大的挑战。 ...
工具平台和程序库
24,860
社区成员
27,333
社区内容
发帖
与我相关
我的任务
工具平台和程序库
C/C++ 工具平台和程序库
复制链接
扫一扫
分享
社区描述
C/C++ 工具平台和程序库
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章