打印
[工具和软件]

KDS optimization

[复制链接]
1780|15
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
peihua12344|  楼主 | 2015-5-27 13:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用的是KDS3.0 , 现在整个工程的代码大小太大,想进行优化,如果是在Codewarrior 可以选择 工程属性下的Optimazation,然后调整 Optimization Level ,可以优化整个工程代码大小 。 现在想请教的是, 在KDS  ,为什么调整了工程属性下的 Optimization Level 却仍然不可以优化代码大小 ?不管我将 Optimization Level  调整到什么级别 , 大小始终没有改变。 请有经验前辈指教, 我想优化工程代码整体大小,在KDS 3.0 下, 我应该怎么做?

相关帖子

沙发
peihua12344|  楼主 | 2015-5-27 13:55 | 只看该作者

使用特权

评论回复
板凳
peihua12344|  楼主 | 2015-5-27 16:54 | 只看该作者
:(

使用特权

评论回复
地板
peihua12344|  楼主 | 2015-5-27 17:32 | 只看该作者
在clean 之后Build 一次· 发现可以了 。 这是怎么回事·  为什么之前我同样的操作步骤又不可以···  ?费解·  

使用特权

评论回复
5
FSL_TICS_LY| | 2015-5-27 17:34 | 只看该作者
楼主用这个选项吧,目前KDS里边提供的优化选项包括-O0/1/2/3, -Os, -Og, -Os可以用来优化代码大小,如果还不行,那就没有别的选项了

-Os
OsOptimize for size. -Os enables all -O2 optimizations that do not typically increase code size. It also performs further optimizations designed to reduce code size.
-Os disables the following optimization flags:
          -falign-functions  -falign-jumps  -falign-loops
          -falign-labels  -freorder-blocks  -freorder-blocks-and-partition
          -fprefetch-loop-arrays  -ftree-vect-loop-version

使用特权

评论回复
6
luofeng2g| | 2015-5-27 18:36 | 只看该作者
顶个!!!

使用特权

评论回复
7
Mancherstun| | 2015-5-27 21:12 | 只看该作者
你先build clean一下,然后在build一下

使用特权

评论回复
8
peihua12344|  楼主 | 2015-5-28 10:54 | 只看该作者
FSL_TICS_LY 发表于 2015-5-27 17:34
楼主用这个选项吧,目前KDS里边提供的优化选项包括-O0/1/2/3, -Os, -Og, -Os可以用来优化代码大小,如果还 ...

嗯 , 谢谢你!  现在发现都要Clean 一下才能使优化设置成功。
现在遇到另外一个问题· 请您帮忙 。我现在需要将Codewarrior的工程移植到 KDS , 在codewarrior 有个模块 叫SCB ,这个模块可以控制软件复位 ,我只需要执行    SCB_AIRCR = SCB_AIRCR_VECTKEY(0x5FA)| SCB_AIRCR_SYSRESETREQ_MASK;     这句代码即可实现复位 , 但是现在在KDS 下 , 甚至都没有定义 SCB 模块 。 我应该在除了看门狗之外如何实现软复位 ?
  

使用特权

评论回复
9
peihua12344|  楼主 | 2015-5-28 11:02 | 只看该作者
Mancherstun 发表于 2015-5-27 21:12
你先build clean一下,然后在build一下

好的· 谢谢你

使用特权

评论回复
10
西门扫雪| | 2015-5-28 12:42 | 只看该作者
其实就是Eclipse,编译的时候发现没有变化就不再编译了

使用特权

评论回复
11
peihua12344|  楼主 | 2015-5-28 13:39 | 只看该作者
西门扫雪 发表于 2015-5-28 12:42
其实就是Eclipse,编译的时候发现没有变化就不再编译了

嗯。 可能是这样 。 有时候发现,在Project_Settings 下修改ld文件,将工程的起始地址由0修改成 0x3400 ,保存后clean , 然后编译 , 发现变异出来的hex文件仍然是0地址开始,但是hex文件的已经被更新 ,说明编译是成功的 ,但是并没有更改我锁更改的·    这是否也是Eclipse ?

使用特权

评论回复
12
peihua12344|  楼主 | 2015-5-28 13:48 | 只看该作者
peihua12344 发表于 2015-5-28 13:39
嗯。 可能是这样 。 有时候发现,在Project_Settings 下修改ld文件,将工程的起始地址由0修改成 0x3400  ...

最后是我在其他工程上随意的玩玩,再切换回来到目标工程,再clean 一次,然后编译才,之后生成的hex文件才是从0x3400地址开始·   不知道有没有人遇到跟我一样的情况·

使用特权

评论回复
13
风的样子| | 2015-5-28 18:28 | 只看该作者
我也学习了,谢谢各位

使用特权

评论回复
14
Mancherstun| | 2015-5-28 23:15 | 只看该作者

你客气了哈

使用特权

评论回复
15
跟屁虫| | 2015-5-29 14:44 | 只看该作者
楼主用这个选项吧,目前KDS里边提供的优化选项包括-O0/1/2/3, -Os, -Og, -Os可以用来优化代码大小

使用特权

评论回复
16
FSL_TICS_Jeremy| | 2015-6-5 09:55 | 只看该作者
非常感谢你关于IDE的技术问题。如果你没有其他问题,我们将此帖默认为已解决.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

6

主题

36

帖子

0

粉丝