How to make use of xdata space when combining C lang and Assembly

Hello Sir,

This is Vijay Manohar.

I am trying to add C code to the already existing code.

Assembly code also making use of XDATA space. As I was getting memory overflow problems, I have been defining all the variables in xdata space itself in C code. My question is there any possibilty that C language uses memory consumed by assembly. If that is the case, how to aviod it. We have about 8k of xdata space. Is there any declaration that tells the compiler to use a particular area in xdata for C code.

Help is highly appreciated.

Regards,
Vijay Manohar

Parents
  • As I was getting memory overflow problems, I have been defining all the variables in xdata space itself in C code.

    Also, you might want to review this approach. Accessing variables in xdata carries significant performance and code size penalties when compared to data/idata.

    xdata is best used to hold data structures (arrays/structs) that are accessed infrequently.

    Usage of data memory can be reduced by using memory overlaying and moving infrequently-used data to xdata.

Reply
  • As I was getting memory overflow problems, I have been defining all the variables in xdata space itself in C code.

    Also, you might want to review this approach. Accessing variables in xdata carries significant performance and code size penalties when compared to data/idata.

    xdata is best used to hold data structures (arrays/structs) that are accessed infrequently.

    Usage of data memory can be reduced by using memory overlaying and moving infrequently-used data to xdata.

Children
More questions in this forum