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.

[参考译文] 编译器/TMS320C6674:具有不同加载和运行地址的数据段

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

https://e2e.ti.com/support/tools/code-composer-studio-group/ccs/f/code-composer-studio-forum/678967/compiler-tms320c6674-data-sections-with-different-load-and-run-addresses

器件型号:TMS320C6674

工具/软件:TI C/C++编译器

您好!

我对具有不同加载和运行地址的数据段有疑问。 我将 EABI 与 CGT 版本7.4.6和8.2.1搭配使用。

  1. 如果    数据段具有不同的加载地址和运行地址、链接器能否压缩数据段(或指定在其上运行任何处理程序、如_TI_zero_init)? 就我个人而言、我没有看到它压缩具有不同加载和运行地址的数据段(我认为这样做更简单)。
  2. 但是、如果可以压缩这样的数据段、处理程序会将数据解压缩到加载地址还是运行地址中? 我希望它将被解压缩(或零初始化)到加载地址中、这样我就可以简单地将整个已初始化数据块从加载地址复制到应用程序中的运行地址。

提前感谢!

此致、
Dave

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    1.是的、可以压缩一些数据段。
    2.就_c_int00 (引导)时间初始化程序(autosinit)而言、它会从加载地址解压缩到运行地址、没有例外。 但是、使用链接器复制表、您可以控制解压缩的发生时间。 就您的应用程序而言、您可能会将表的"运行"地址视为"加载"位置、并在稍后自行进行纯文本复制。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    请参阅 C6000汇编语言工具手册中标题为链接器生成的复制表的部分。  请特别注意其中标题为压缩的子部分。

    谢谢、此致、

    乔治

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

    感谢您提供的信息;我对此表示赞赏。  Dave