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.

[参考译文] MSP430I2021:优化代码大小以适应闪存

Guru**** 2546020 points
Other Parts Discussed in Thread: MSP430I2021

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/974443/msp430i2021-code-size-optimization-to-fit-into-flash

器件型号:MSP430I2021

大家好、  

我的客户需要 编译器中的所有可能选项 来优化代码大小以适合闪存。 但是、它们会遇到一些问题:  

芯片版本有以下选项:

在 SLAU131R 中、他们发现:

但 MSP430i2021是否是 MSP430x 器件?

1A。 如果不是、无论如何激活它是否有问题?

代码大小的缩减对我的客户来说非常重要。 不会生成编译器警告。

2.他们是否可以使用此选项而不会有任何缺点?

此外、还有一个硬件乘法选项:  

MSP430i2021具有16位硬件乘法器。 如果它们将优化设置为32、则没有编译器警告、代码会显著减少。

他们的客户希望将此选项设置为32以减小代码大小。

3.这是可行的方法吗?

感谢您的支持。

奥比那。   

 

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

    [引用 user="Obinna Ezeilo]1. 但 MSP430i2021 是否是 MSP430x 器件? MSP430i2021是否具有 MSP、而不是 mspx CPU。

    [引用 user="Obinna Ezeilo"]1a。 如果不是、无论如何激活它是否有问题?

    代码大小的缩减对我的客户来说非常重要。 不会生成编译器警告。如果选择的处理器选项与目标器件不匹配、MSP430编译器不会生成警告、 但是、如果告知编译器为 mspx CPU 生成指令、但实际器件具有 MSP CPU、则程序不会运行、因为 MSP CPU 不了解 mspx 指令。

    例如、采用了一个具有 MSP CPU 的器件的程序、但将--silicon_version 编译器选项设置为 mspx。 在到达 main()之前,生成的程序在编译器运行时启动代码中崩溃。

    [引用 USER="Obinna Ezeilo]MSP430i2021 具有16位硬件乘法器。 如果他们将优化设置为32、则没有编译器警告、代码会显著减少。与上述一样、如果-use_hw_mpy 选项与目标器件不匹配、编译器不会发出警告。

    [引用 user="Obinna Ezeilo"]3. 这是可行的方法吗?[/引述]不是 例如、针对一个具有16位硬件乘法器的器件的程序。

    当 -use_hw_mpy 选项从16更改为32时、16x16乘法仍然产生正确的结果、但32x32乘法随后产生错误的结果。

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

    您好、Obinna、

    只需清除较旧的线程、但切斯特是正确的。  编译器无法知道最终目标的目标值、除非我们指明它。  如果我们让它为不同的硬件进行构建、它将影响代码大小、但不会为正确的硬件进行构建。   

    谢谢、

    JD