TI论坛
直播中

王永佳

7年用户 240经验值
私信 关注

测试程序中加入了SWITCH CASE的判断语句后,就无法生成.OUT文件,一直提示placement fails for object请问应该如何解决?

本帖最后由 一只耳朵怪 于 2018-6-12 10:01 编辑

我在编写一段测试程序中,原来已经调试通过,但是后来在一个子程序中加入了SWITCH CASE的判断语句后,就无法生成.OUT文件。一直提示placement fails for object.
采用XDS100 V2仿真器,DSP 28035。
点进去错误之后,直接显示在28035_RAM_lnk.cmd文件中的SECtiONS里的.text出错,请问要如何解决?
编译时错误提示:
"../28035_RAM_lnk.cmd", line 112: error #10099-D: placement fails for object
   ".text", size 0xc95 (page 0).  Available ranges:
   RAML0L1      size: 0xc00        unused: 0xc00        max hole: 0xc00     
error #10010: errors encountered during linking; "TEST.out" not built


回帖(4)

陈飞

2018-6-11 01:28:41
是代码太大,在.text中放不下了。
解决办法有两个:
1、调整一下cmd,把RAML0L1设置的大点;
2、采用更高级别的优化。
                                                                         Young Hu
举报

王永佳

2018-6-11 01:45:03
引用: Arttronix 发表于 2018-6-11 01:28
是代码太大,在.text中放不下了。
解决办法有两个:
1、调整一下cmd,把RAML0L1设置的大点;

我把RAML0L1    : origin = 0x008000, length = 0x000C00 改成了 0x000D00扩大了地址,可以通过编译,不过DEBUG后出现No source available for "0x3ff599",程序无法运行,不知应如何修改?
举报

王永佳

2018-6-11 01:54:52
引用: Arttronix 发表于 2018-6-11 01:28
是代码太大,在.text中放不下了。
解决办法有两个:
1、调整一下cmd,把RAML0L1设置的大点;

我把RAML0L1    : origin = 0x008000, length = 0x000C00 改成了 0x000D00扩大了地址,可以通过编译,不过DEBUG后出现No source available for "0x3ff599",程序无法运行,不知应如何修改?
举报

陈飞

2018-6-11 02:08:55
引用: 60user144 发表于 2018-6-11 01:54
我把RAML0L1    : origin = 0x008000, length = 0x000C00 改成了 0x000D00扩大了地址,可以通过编译,不过DEBUG后出现No source available for "0x3ff599",程序无法运行,不知应如何修改?

要注意物理RAM的地址范围,不要超出啊!
                                                                         Young Hu
举报

更多回帖

发帖
×
20
完善资料,
赚取积分