This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] 有关 TI Arm v5.2.5的问题

Guru**** 1456330 points
Other Parts Discussed in Thread: UCD3138
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/1329522/questions-on-ti-arm-v5-2-5

主题中讨论的其他器件:UCD3138

各位专家、您好!

我的客户正在使用基于 ARM7的 UCD3138器件。 使用的编译器为 TI Arm v5.2.5。 整个项目的优化配置如下所示。

在客户代码中、有一个内联函数、该函数在代码中重复多次、导致代码大小较大。 为了保存代码大小、它们 通过重写类似的子函数来替换现有的内联函数、从而重构代码。 它们遇到的问题是代码大小甚至会变大。 附加详细代码。  

前. c:一个示例代码如附件,有18个使用类似代码的案例,但每个案例都有独特的参数/常量和条件编译标志。 这就是使用内联并需要重复多次的原因、从而导致代码大小较大。  

After .c:通过添加一些参数重写常规子函数、并将条件编译标志替换为 if-else 分支。

您是否知道为什么会发生这种情况? 编译器本身是否有任何可能与该引脚相关的参数? 期待您的回复。

e2e.ti.com/.../after.c

e2e.ti.com/.../before.c

此致、

许美

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    请尝试不同的值 -- opt_for_speed 选项。  如果这样做没有帮助...

    代码大小增加的原因很难说。  对于前面的代码、可能是内联之后产生的优化导致大量函数被删除。

    谢谢。此致、

    -乔治

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我懂了。 感谢您的回复!

    此致、

    徐美