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.

Howto place.localfar in MSM instead of L2?



Hi,

We are currently working on an application which makes extensive use of L2 memory, the more the better.

Running on the C6678 using OpenMP for parallelization, a section named ".localfar" almost occupies 25% of the total L2 memory:

00800000    00800000    0005d030   0005d02c    rw-
  00800000    00800000    0005d02c   0005d02c    rw- .pfeheap_iram
  0085d02c    0085d02c    00000004   00000000    rw- .tls_tp
0085d030    0085d030    00021fe0   0001fec0    rw-
  0085d030    0085d030    0001fec0   0001fec0    rw- .localfar
  0087cef0    0087cef0    00002000   00000000    rw- .stack
  0087eef0    0087eef0    00000120   00000000    rw- .cio
0087f010    0087f010    00000018   00000018    r--
  0087f010    0087f010    00000018   00000018    r-- .init_array
0087f028    0087f028    00000004   00000004    rw-
  0087f028    0087f028    00000004   00000004    rw- .extdata

No matter what attemps I tried, the compiler seems to place .localfar always in L2.
The following line in the config file is completly ignored:

Program.sectMap[".localfar"] = "MSMCSRAM";

Does .localfar have to be located in L2, or are there any tricks to make the compiler place it in MSMCSRAM?

Thank you in advance, Clemens