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 C/C++编译器
尊敬的香榭丽舍
我向我们的客户提出这一问题。
用户尝试将 COFF 转换为 EABI、但在未初始化的段中遇到问题。
他曾提到
http://processors.wiki.ti.com/index.php/C2000_EABI_Migration#C28x_EABI_Sections
但仍然有这个问题。
环境是:
CCS:9.0.1.00004
编译器:v18.12.2
设置链接器命令:
(1) –zero_init=on
(2) –cinit_compression=off
下图是与 cinit 表相关的映射文件
其中.data 是初始化段
.CLAData、.StackCLA abd .bss 是未初始化的段。
这些已确认正确且符合预期。
下图是加载到目标上时的存储器数据。
由 cinit 表提供0x8F050
(1) 已初始化的段:数据和初始化结果正确。
(2) 未初始化的段:
要为0的存储器数量只是映射文件数量的一半
初始化不正确。 只有一半被清除。
为什么链接器在映射文件中未初始化的段看起来是正确的、但在将代码加载到目标上之后是错误的?
请帮助我们了解用户可能出错的地方吗? 例如、在设置或其他方面?
黄维恩
韦恩、
我怀疑字节与16位字之间的关系。 映射文件显示的是字节。 但处理器中的所有内容都是以16位字表示的。 您是否检查了内存是否已正确初始化为零?
此致、
David
[报价用户="Wayne Huang"]请帮助我们显示用户可能出错的位置
我觉得客户没有出错。 我可以用一个简单的测试用例重现问题。 我在 SDOWP 系统中提交了条目 CodeGen-6456以对此进行调查。 欢迎您在我的签名中使用下面的 SDOWP 链接进行访问。
谢谢、此致、
乔治
乔治
感谢您的更新。
我们将等待它的修复。
韦恩
您好、George、
我只是想告诉大家、我在使用完全相同版本的 CCS 和代码生成工具的 F28388上遇到了完全相同的问题。
此致、
皮埃尔
谢谢你。 我在同一 SDOWP 条目中注意到了您的情况。
谢谢、此致、
乔治