Hi Jonathan,
The memory is split into Stack and Heap. The Xdata usage shown in IAR is for the stack.
For the heap
a) dynamically allocated with osal_mem_alloc and
b) statically allocated (global or with keyword static) you'd have to check the usage by
a) setting the preprocessor define "OSALMEM_METRICS=TRUE" in the project options and then putting a watch on the variable memMax, memAlo etc found on lines 181-185 of OSAL_Memory.c. memMax will show you the maximum ever allocated dynamically.
b) checking the .map file output after compiling
Best regards,
Aslak