This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

XLARGE memory model & generale performance

Hello community,

Using C166 / ST10 with last version of IDE (µVision V4.00a / C166 V7.00 / L166 V5.25)
We need between 100 & 200Kb data (composed of many structures / array), so we set XLARGE memory model.

General questions about this use :
Is it the best way ?
What's approximately the loss in code execution performance ?
Shall we must use the x... functions to prevent some bug from standard lib with segment boundary (e.g. xmemcpy from string.h) ?
Is there an other solution, because it's non standard functions ?

Thanks in advance.
JM

Parents
  • is a member of myStruct, so is stored in XDATA. xhuge is not necessary ??

    Indeed. Generally speaking, memory class specifiers on members of structs would be pointless, and therefore are usually forbidden. They wouldn't work anyway: a member must inherit the memory class of the struct. Otherwise struct members would not be consequtive in memory, as required by the language. The same holds for 'const' qualification, BTW. You can't have const members in non-const structures, nor the other way round.

    The memory space qualifiers on pointers' target types are an entirely different matter, obviously.

Reply
  • is a member of myStruct, so is stored in XDATA. xhuge is not necessary ??

    Indeed. Generally speaking, memory class specifiers on members of structs would be pointless, and therefore are usually forbidden. They wouldn't work anyway: a member must inherit the memory class of the struct. Otherwise struct members would not be consequtive in memory, as required by the language. The same holds for 'const' qualification, BTW. You can't have const members in non-const structures, nor the other way round.

    The memory space qualifiers on pointers' target types are an entirely different matter, obviously.

Children