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.

.ebss size question

Hi all :

I assigned an array variable with 4*16 int (which occupied 64 words in memory)

and before I assign this Array variable,the memory size seems to be big enough(0x102+0x33 =309 words left )

the size is much larger than my new array variable

but when I build the project,the compiler shows that the .ebss section is not big enough

I have tried to split the 4*16 array into two 2*16 arrays 

but this error still exist.

How do I fix this problem?

Thanks! 

*The code , .map file and .cmd file are list below

============. cmd file config=============

RAML0 :        origin = 0x008000, length = 0x000480     /* on-chip RAM (L0)*/
RAMM0M1 : origin = 0x000050, length = 0x0007B0     /* on-chip RAM block M0-M1 */

  .ebss             : >> RAMM0M1|RAML0,    PAGE = 0

============. map file before assign variable=============

MEMORY CONFIGURATION

name               origin         length         used          unused attr    fill
---------------------- -------- --------- -------- -------- ---- --------
PAGE 0:
RAMM0M1   00000050  000007b0  0000077d  00000033  RWIX
RAML0          00008000  00000480  0000037e  00000102  RWIX

===========variable assignment===================

 

int AuthenDataArrayMCU[2][16];

int AuthenDataArrayECU[2][16];

============. map file After assign variable=============

MEMORY CONFIGURATION

name               origin         length         used          unused attr    fill
---------------------- -------- --------- -------- -------- ---- --------
PAGE 0:
RAMM0M1   00000050  000007b0  0000077d  00000033  RWIX
RAML0          00008000  00000480  0000037e  00000102  RWIX

SECTION ALLOCATION MAP

output attributes/
section page origin length input sections
-------- ---- ---------- ---------- ----------------
.pinit 0 003ee000 00000000 UNINITIALIZED

.ebss.1 0 00000000 0000004a FAILED TO ALLOCATE
.ebss.2 0 000001d8 000003c2 UNINITIALIZED

 

  • I don't see why .ebss:1 does not allocate into the RAMLO memory range.  I suspect a problem in the linker.  That said, pursuing a bug in the linker is often difficult, because we require you to supply us with everything seen by the linker.  If things are organized as a CCS project, it is often easier to send in the whole project.  Before going that far, I will ask another expert to have a look.

    Thanks and regards,

    -George

  • Hi George :

    Thanks for your reply!

    As you said ,it is difficult to send you our whole project for security reason

    but if you need other information ,

    please let me know

    we will see if we can provide these inform to solve the problem!

    thanks again!
  • Unfortunately, we have been unable to reproduce your problem with the details we know so far.  I'm afraid we need a test case from you.  If this is organized as a CCS project, it is best if you send that in.  

    will yang said:
    ,it is difficult to send you our whole project for security reason

    I understand.  I hope you are willing to send it just to me.  Please see this post for details on how to package the project.  Then hover your mouse over my name or screen avatar, and a window pops up.  Select Send a private message.  A message compose interface comes up.  Use the paper clip icon to attach the project.

    Thanks and regards,

    -George