Home/Support/Support Forum/Why .map in Dynamic_C 9.62 show a very big function size?
Welcome to Digi Forum, where you can ask questions and receive answers from other members of the community.

Why .map in Dynamic_C 9.62 show a very big function size?

0 votes
In the .map file I got:
01:ea17 495 update_dif_obrir \MICRO5_205.C 986
01:ec06 14420 UpdatePrograms \MICRO5_205.C 1010
05:e45a 2995 procesa_entrada \MICRO5_205.C 1038
the UpdatePrograms show 14420 bytes size, very big for the function:

xmem void UpdatePrograms(void)
int i,flag;
for(i=1; i<_PROGRAMAS; i++)
if(programas.consigna == i) continue;
if(programas.consigna == 0) continue;

if(programas.referencia != programas[programas.consigna].referencia)
{programas.referencia=programas[programas.consigna].referencia; flag=1;}
if(programas.dif_obrir != programas[programas.consigna].dif_obrir)
{programas.dif_obrir=programas[programas.consigna].dif_obrir; flag=1;}
if(programas.dif_tancar != programas[programas.consigna].dif_tancar)
{programas.dif_tancar=programas[programas.consigna].dif_tancar; flag=1;}
if(programas.t_ciclo != programas[programas.consigna].t_ciclo)
{programas.t_ciclo=programas[programas.consigna].t_ciclo; flag=1;}
if(programas.t_apertura != programas[programas.consigna].t_apertura)
{programas.t_apertura=programas[programas.consigna].t_apertura; flag=1;}
if(programas.t_cerrar != programas[programas.consigna].t_cerrar)
{programas.t_cerrar=programas[programas.consigna].t_cerrar; flag=1;}

if(flag) writeUserBlock(0x000+(sizeof(programas)*programa),&programas,sizeof(programas));
asked Jan 12, 2015 in Rabbit Software by sala.montala New to the Community (1 point)

Please log in or register to answer this question.

1 Answer

+1 vote
I think this strange size is an artifact of the linking process where there is a gap in the memory map. I've seen it before in the map file for my code where the last function before the gap shows a size that includes the gap size. I think it is related to the no_lcall section in the case of Rabbit 4000 code under DC 10. I'm not familiar enough with DC 9 to know if it does the same...
answered Jan 13, 2015 by petermcs Veteran of the Digi Community (1,130 points)